Browse Source

fix bugs of cache mechanism

tags/v0.3.0-alpha
liangyongxiong 5 years ago
parent
commit
0eae537da0
3 changed files with 18 additions and 4 deletions
  1. +1
    -1
      mindinsight/datavisual/data_transform/data_loader.py
  2. +6
    -2
      mindinsight/datavisual/data_transform/data_manager.py
  3. +11
    -1
      mindinsight/datavisual/processors/train_task_manager.py

+ 1
- 1
mindinsight/datavisual/data_transform/data_loader.py View File

@@ -55,7 +55,7 @@ class DataLoader:
Get events data from log file.

Returns:
Optional[EventsData], None or events data.
EventsData, indiciates events data.
"""
return self._loader.get_events_data()



+ 6
- 2
mindinsight/datavisual/data_transform/data_manager.py View File

@@ -618,7 +618,7 @@ class _DetailCacheManager(_BaseCacheManager):
tag (str): The tag name.

Returns:
NamedTuple, the tuple format is `collections.namedtuple('_Tensor', ['wall_time', 'event_step', 'value'])`.
list, the NameTuple format is `collections.namedtuple('_Tensor', ['wall_time', 'event_step', 'value'])`.
the value will contain the given tag data.

"""
@@ -627,13 +627,17 @@ class _DetailCacheManager(_BaseCacheManager):
raise TrainJobNotExistError("Can not find the given train job in cache.")

data_loader = loader_pool[train_id].data_loader
events_data = data_loader.get_events_data()

tensors = []
try:
events_data = data_loader.get_events_data()
tensors = events_data.tensors(tag)
except KeyError:
error_msg = "Can not find any data in this train job by given tag."
raise ParamValueError(error_msg)
except AttributeError:
logger.debug("Train job %r has been deleted or it has not loaded data, "
"and set tags to empty list.", train_id)

return tensors



+ 11
- 1
mindinsight/datavisual/processors/train_task_manager.py View File

@@ -116,7 +116,17 @@ class TrainTaskManager(BaseProcessor):
profiler_dir=basic_info.profiler_dir,
cache_status=train_job.cache_status.value,
)
plugins = self.get_plugins(train_id)

if train_job.cache_status == CacheStatus.CACHED:
plugins = self.get_plugins(train_id)
else:
plugins = dict(plugins={
'graph': [],
'scalar': [],
'image': [],
'histogram': [],
})

train_job_item.update(plugins)
train_jobs.append(train_job_item)



Loading…
Cancel
Save