CI code warning fixes. Update file permissions for CSV file.

This commit is contained in:
Cathy Wong 2021-07-12 14:51:54 -04:00
parent 6532ddd0f2
commit 308e275a37
1 changed files with 14 additions and 7 deletions

View File

@ -139,7 +139,8 @@ class MinddataProfilingAnalyzer:
raise ValueError(msg)
self._device_target = device_target
def _validate_directory(self, dir_name, dir_type):
@staticmethod
def _validate_directory(dir_name, dir_type):
"""
Validate the input directory.
@ -149,7 +150,7 @@ class MinddataProfilingAnalyzer:
"""
try:
validated_dir = validate_and_normalize_path(dir_name)
except ValidationError as path_error:
except RuntimeError as path_error:
logger.warning('<%s> <%s> is invalid.', dir_type, validated_dir)
raise ProfilerPathErrorException(dir_type + 'is invalid.') from path_error
@ -267,7 +268,7 @@ class MinddataProfilingAnalyzer:
"""
try:
output_dir = validate_and_normalize_path(output_path)
except ValidationError as path_error:
except RuntimeError as path_error:
logger.warning('Output path <%s> is invalid.', output_path)
raise ProfilerPathErrorException('Output path is invalid.') from path_error
@ -278,7 +279,8 @@ class MinddataProfilingAnalyzer:
summary_templatename = 'minddata_pipeline_summary_{}.json'
return os.path.join(output_dir, summary_templatename.format(self._device_id))
def _parse_pipeline_metrics_info(self, metrics):
@staticmethod
def _parse_pipeline_metrics_info(metrics):
"""
Parse and process the pipeline profiling metrics information for a given op.
@ -403,7 +405,8 @@ class MinddataProfilingAnalyzer:
return return_dict
def _parse_cpu_util_info(self, cpu_util_info, num_pipeline_ops):
@staticmethod
def _parse_cpu_util_info(cpu_util_info, num_pipeline_ops):
"""
Parse and process the CPU profiling information.
@ -473,7 +476,7 @@ class MinddataProfilingAnalyzer:
avg_batch_time: Average per batch time for pipeline in milliseconds
"""
# Information on the format of the device tracing profiling information.
# Format: "type extra-info batch-num value timestamp"
# Format is: type extra-info batch-num value timestamp
# 0) type: 0: time, 1: connector size
# 1) extra-info: if type is 0 - 0: pipeline time, 1: push tdt time, 2: batch time
# if type is 1 - connector capacity
@ -509,7 +512,8 @@ class MinddataProfilingAnalyzer:
return_dict['per_batch_time'] = [round(avg_batch_time, 3)]
return return_dict
def _analyze_for_bottleneck_op(self, summary_dict):
@staticmethod
def _analyze_for_bottleneck_op(summary_dict):
"""
Analyze the MindData summary information and identify any potential bottleneck operator
in the MindData pipeline.
@ -575,6 +579,9 @@ class MinddataProfilingAnalyzer:
# Close file for writing
data_file.close()
# Update file permissions
os.chmod(output_csv_path_filename, stat.S_IREAD | stat.S_IWRITE)
def _analyze_and_save(self, pipeline_info, cpu_util_info, device_trace_info):
"""
Analyze and save the MindData summary information to file.