diff --git a/mindinsight/profiler/analyser/step_trace_analyser.py b/mindinsight/profiler/analyser/step_trace_analyser.py index 58ea05e8e7d48adbc0af6542bd736dd4136a4251..91b9bc21b3e0a9b9ead35e8d55d65da8e517f800 100644 --- a/mindinsight/profiler/analyser/step_trace_analyser.py +++ b/mindinsight/profiler/analyser/step_trace_analyser.py @@ -83,7 +83,7 @@ class StepTraceAnalyser(BaseAnalyser): row_info_dict = self._get_info_dict_from_row_data(row_info, 'systime') reduce_info = self._sort_reduce_by_time(row_info_dict) if reduce_info: - reduce_infos.append(reduce_info) + reduce_infos.extend(reduce_info) return reduce_infos @@ -282,8 +282,9 @@ class StepTraceAnalyser(BaseAnalyser): log.info("Reduce event missing value.") continue cur_stream_id = reduce_field.split('_', 2)[1] - reduce_info = [reduce_field, int(cur_stream_id), reduce_start, + reduce_meta = [reduce_field, int(cur_stream_id), reduce_start, reduce_duration, reduce_pid] + reduce_info.append(reduce_meta) return reduce_info diff --git a/mindinsight/profiler/profiling.py b/mindinsight/profiler/profiling.py index e52a300142566b7ac2c791f5bca82fec8b029f11..e5d841d0c7e3054803a08b5ff724f5a9212b660a 100644 --- a/mindinsight/profiler/profiling.py +++ b/mindinsight/profiler/profiling.py @@ -236,6 +236,12 @@ class Profiler: def _analyse_timeline(self, aicpu_parser, optime_parser): """ Analyse and parse timeline info. + + Args: + aicpu_parser (DataPreProcessParser): The parser instance for AI CPU operator + execution time calculation. + optime_parser (OPComputeTimeParserParser): The parser instance for AI Core + operator execution time calculation. """ timeline_analyser = AnalyserFactory.instance().get_analyser( 'timeline', self._output_path, self._dev_id