From 70857c7b5fcfd8ac1a99cbf8214edd0b24e6f61b Mon Sep 17 00:00:00 2001 From: yuximiao Date: Fri, 19 Jun 2020 11:11:14 +0800 Subject: [PATCH] adapt profiling source path change --- mindinsight/backend/profiler/profile_api.py | 2 +- .../profiler/analyser/minddata_analyser.py | 3 +-- .../profiler/parser/minddata_parser.py | 21 ++++++++++++------- .../DATA_PREPROCESS.dev.AICPUMI.1.slice_0 | 0 4 files changed, 15 insertions(+), 11 deletions(-) create mode 100644 tests/utils/resource/JOB3/data/DATA_PREPROCESS.dev.AICPUMI.1.slice_0 diff --git a/mindinsight/backend/profiler/profile_api.py b/mindinsight/backend/profiler/profile_api.py index 043ce709..40bbbd59 100644 --- a/mindinsight/backend/profiler/profile_api.py +++ b/mindinsight/backend/profiler/profile_api.py @@ -66,7 +66,7 @@ def get_profile_op_info(): search_condition = request.stream.read() try: search_condition = json.loads(search_condition if search_condition else "{}") - except Exception: + except (json.JSONDecodeError, ValueError): raise ParamValueError("Json data parse failed.") validate_condition(search_condition) diff --git a/mindinsight/profiler/analyser/minddata_analyser.py b/mindinsight/profiler/analyser/minddata_analyser.py index 272bde63..2e82b5eb 100644 --- a/mindinsight/profiler/analyser/minddata_analyser.py +++ b/mindinsight/profiler/analyser/minddata_analyser.py @@ -107,12 +107,11 @@ class MinddataAnalyser(BaseAnalyser): device_queue_file_path = MinddataAnalyser.find_target_file(self._profiling_dir, device_queue_file_name) feed_file_name = "dataset_iterator_profiling_" + self._device_id + ".txt" feed_file_path = MinddataAnalyser.find_target_file(self._profiling_dir, feed_file_name) + file_path = "" if device_queue_file_path: file_path = device_queue_file_path elif not device_queue_file_path and feed_file_path: file_path = feed_file_path - else: - file_path = "" if file_path: with open(file_path) as data_file: diff --git a/mindinsight/profiler/parser/minddata_parser.py b/mindinsight/profiler/parser/minddata_parser.py index c58becb4..b6db152d 100644 --- a/mindinsight/profiler/parser/minddata_parser.py +++ b/mindinsight/profiler/parser/minddata_parser.py @@ -77,12 +77,17 @@ class MinddataParser: col_names = ["node_name", "start_time", "end_time", "queue_size"] minddata_aicpu_source_path = get_file_join_name( input_path=source_path, file_name='DATA_PREPROCESS.dev.AICPUMI') + if not minddata_aicpu_source_path: + minddata_aicpu_source_path = get_file_join_name( + input_path=os.path.join(source_path, "data"), file_name='DATA_PREPROCESS.dev.AICPUMI') + if not minddata_aicpu_source_path: + raise RuntimeError("Fail to get AICPUMI file.") minddata_aicpu_output_path = os.path.join(output_path, "minddata_aicpu_" + device_id + ".txt") - if minddata_aicpu_source_path: - minddata_aicpu_data = MinddataParser.parse_minddata_aicpu_data(minddata_aicpu_source_path) - if minddata_aicpu_data: - fwrite_format( - minddata_aicpu_output_path, - tabulate(minddata_aicpu_data, col_names, tablefmt='simple'), - is_start=True - ) + + minddata_aicpu_data = MinddataParser.parse_minddata_aicpu_data(minddata_aicpu_source_path) + if minddata_aicpu_data: + fwrite_format( + minddata_aicpu_output_path, + tabulate(minddata_aicpu_data, col_names, tablefmt='simple'), + is_start=True + ) diff --git a/tests/utils/resource/JOB3/data/DATA_PREPROCESS.dev.AICPUMI.1.slice_0 b/tests/utils/resource/JOB3/data/DATA_PREPROCESS.dev.AICPUMI.1.slice_0 new file mode 100644 index 00000000..e69de29b