mindstudio-probe 8.2.1__tar.gz → 8.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/PKG-INFO +1 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/PKG-INFO +1 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/SOURCES.txt +10 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/README.md +3 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/file_utils.py +80 -25
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/framework_adapter.py +7 -6
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/diff_analyze/first_diff_analyze.py +4 -16
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/utils.py +1 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/hook_manager.py +16 -3
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/service.py +16 -5
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/02.config_introduction.md +14 -1
- mindstudio_probe-8.3.0/msprobe/docs/08.accuracy_checker_online_PyTorch.md +295 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/15.free_benchmarking_PyTorch.md +1 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/25.tool_function_introduction.md +1 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/26.data_dump_PyTorch_baseline.md +3 -3
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/generate_op_script/op_generator.py +1 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/utils.py +1 -2
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/msprobe.py +6 -4
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/config.py +36 -3
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/api_precision_compare.py +24 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare.py +12 -2
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/config.yaml +10 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/generate_op_script/op_generator.py +1 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/run_ut.py +132 -12
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/attl.py +205 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/client.py +378 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/device_dispatch.py +239 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/dump_dispatch.py +115 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/server.py +250 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/torch_ops_config.yaml +63 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/utils.py +198 -0
- mindstudio_probe-8.3.0/msprobe/pytorch/attl_manager.py +65 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/utils.py +22 -2
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/utils.py +1 -2
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/debugger/debugger_config.py +10 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/dump/module_dump/hook_wrapper.py +24 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/dump/module_dump/module_processer.py +9 -3
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/api_register.py +6 -1
- mindstudio_probe-8.3.0/msprobe/pytorch/parse_tool/lib/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/pt_config.py +57 -2
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/pytorch_service.py +11 -2
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/graph_builder.py +1 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/utils.py +11 -1
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/setup.py +1 -1
- mindstudio_probe-8.2.1/msprobe/core/compare/diff_analyze/ignore_op_list.yaml +0 -3
- mindstudio_probe-8.2.1/msprobe/pytorch/api_accuracy_checker/config.yaml +0 -5
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/LICENSE +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/MANIFEST.in +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/dependency_links.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/entry_points.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/not-zip-safe +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/requires.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/top_level.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/CMakeLists.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/config.json +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/advisor/advisor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/advisor/advisor_const.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/advisor/advisor_result.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/const.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/db_manager.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/decorator.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/exceptions.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/global_lock.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/inplace_op_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/inplace_ops.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/log.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/megatron_utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/parallel_state.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/runtime.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/common_config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/acc_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/check.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/compare_cli.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/diff_analyze/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/diff_analyze/diff_analyze_threshold.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/analyzer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/data_processor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/graph.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/highlight.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/data_scope_parser.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/layer_mapping.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/postprocess_pass.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/merge_result/merge_result.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/merge_result/merge_result_cli.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/merge_result/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/ms_to_pt_api.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/multiprocessing_compute.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/npy_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/compare/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/base_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/dataset_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/env_args_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/hyperparameter_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/pip_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/random_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/weights_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/ckpt_comparator.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/megatron_loader.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/metrics.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/name_mapping.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/config_check_cli.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/config_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/resource/dependency.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/resource/env.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/resource/hyperparameter.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/utils/hyperparameter_parser.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/config_check/utils/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/api_registry.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_collector.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/base.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/mindspore_processor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/pytorch_processor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/json_writer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/scope.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/debugger/precision_debugger.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/constant.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/grad_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/kernel_dump/kernel_config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/monitor/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/monitor/anomaly_processor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/monitor/csv2db.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/monitor/db_utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/monitor/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/abnormal_scene.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/api_info.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/filter.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/ignore_rules.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/level.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/single_save/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/single_save/single_comparator.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/core/single_save/single_saver.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/01.installation.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/03.config_examples.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/04.kernel_dump_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/05.data_dump_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/06.data_dump_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/07.accuracy_checker_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/09.accuracy_checker_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/10.accuracy_compare_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/11.accuracy_compare_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/12.overflow_check_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/13.overflow_check_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/14.data_parse_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/16.free_benchmarking_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/17.grad_probe.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/18.online_dispatch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/19.monitor.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/20.monitor_performance_baseline.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/21.visualization_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/22.visualization_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/23.generate_operator_PyTorch.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/24.code_mapping_Mindspore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/27.dump_json_instruction.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/28.debugger_save_instruction.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/28.kernel_dump_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/29.data_dump_MSAdapter.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/30.overflow_check_MSAdapter.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/31.config_check.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/32.ckpt_compare.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/33.generate_operator_MindSpore.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/34.RL_collect.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/35.nan_analyze.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/36.calculation_result_change.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/FAQ.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/S02.report_free_benchmarking_validation_performance_baseline.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/accuracy_checker_MindSpore/accuracy_checker_MindSpore_baseline.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/data_dump_MindSpore/data_dump_MindSpore_baseline.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/data_dump_MindSpore/dynamic_graph_quick_start_example.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_3.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_4.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_3.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_4.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_5.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_6.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_7.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_8.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/YOLOV5S_1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/YOLOV5S_2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/accuracy_checking_details.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/accuracy_checking_result.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/api_precision_compare_details.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/api_precision_compare_result.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/auto_analyze_log.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/compare_result.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/compare_result_pkl.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/compare_result_pkl_md5.png.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/cpu_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/free_benchmark.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/free_benchmark_framework.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-3.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-4.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/merge_result.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/module_compare.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/monitor/cpu_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/monitor/step_count_per_record.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/ms_dump.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/ms_layer.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/pt_dump.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/save_compare_result_sample.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/fuzzy_match_ms.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/fuzzy_match_pt.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/proxy.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/tensorboard_1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/tensorboard_2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_browser_1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_browser_2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_match_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_precision_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_search_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_show_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_showcase.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_unmatch_info.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/GPTModel.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/ParallelMLP.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/layer_mapping_example.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mapping.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mapping1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/3.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/4.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/5.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/6.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/7.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/llamafactory-qwen25vl.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/llamafactory1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/llamafactory2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/mindspeed-mm-qwen25vl.txt +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/mindspeed1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/mindspeed2.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactory_mapping.md +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/module_name.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/module_name1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/no_mapping.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/no_mapping1.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/no_mapping_analyze.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/top_layer.png +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/api_accuracy_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/api_info.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/api_runner.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/base_compare_algorithm.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/bench_functions/flash_attention_score.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/bench_functions/fusion_operator.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/checker_support_api.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/cmd_parser.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/compute_element.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/data_manager.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/generate_op_script/operator_replication.template +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/main.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/multi_api_accuracy_checker.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/multi_data_manager.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/torch_mindtorch_importer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/type_mapping.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/cell_processor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/bind.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/cmd_parser.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/graph.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/graph_parser.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/main.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/processor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/common/const.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/common/log.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/common/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/common_dir_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/distributed_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/ms_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/ms_graph_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/debugger/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/debugger/debugger_config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/debugger/precision_debugger.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/cell_dump_process.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/cell_dump_with_insert_gradient.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/dump_tool_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/graph_mode_cell_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/graph_tensor_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/api_register.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/hook_cell.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/ms_hook_manager.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/primitive_hooks.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/support_wrap_ops.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/jit_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/kernel_graph_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/kernel_kbyk_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dym_loader/hook_dynamic_loader.cpp +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/dym_loader/hook_dynamic_loader.h +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/exception_dump/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/exception_dump/exception_dump_tool_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/exception_dump/kernel_graph_exception_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/api_pynative_self_check.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/handler_params.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/data/support_wrap_ops.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/base_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/check_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/fix_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/handler_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/add_noise.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/base_perturbation.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/bit_noise.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/exchange_value.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/improve_precision.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/no_change.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/perturbation_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/self_check_tool_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/global_context.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/grad_analyzer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/grad_monitor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/grad_stat_csv.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/hook.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/mindspore_service.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/mindtorch/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/mindtorch/mindtorch_adaptor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/common_func.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/data_writers.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/distributed_ops.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/stack_blacklist.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/wrap_distributed.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/features.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/module_hook.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/optimizer_collect.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/ms_config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/overflow_check/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/overflow_check/kernel_graph_overflow_check.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/overflow_check/overflow_check_tool_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/mindspore/task_handler_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/analyzer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/graph.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/.keep +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/.keep +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/algorithm.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/api_precision_standard.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/api_precision_threshold.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare_column.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare_input.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare_utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/generate_op_script/config_op.json +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/generate_op_script/operator_replication.template +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/absolute_threshold.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/accumulative_error_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/base_standard.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/benchmark_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/binary_consistency.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/standard_config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/standard_register.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/thousandth_standard.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/ulp_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/.keep +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/data_generate.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/multi_run_ut.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/run_overflow_check.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/run_ut_utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/torch_ut_setting.json +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/debugger → mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/apply_adam.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/apply_adam_w.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/confusion_transpose.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/fast_gelu.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/group_norm_silu.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/layer_norm_eval.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/linear.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/matmul_backward.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/mish.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/moe_gating_top_k_softmax.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/npu_fusion_attention.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/rms_norm.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/rotary_mul.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/scaled_mask_softmax.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/sort_v2.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/swiglu.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/compare_script.template +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/log.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/parse_json.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/distributed_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/mapping.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/match.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/pt_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/pt_diff_analyze.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/dump/module_dump → mindstudio_probe-8.3.0/msprobe/pytorch/debugger}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/debugger/precision_debugger.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/free_benchmark/common → mindstudio_probe-8.3.0/msprobe/pytorch/dump/module_dump}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/dump/module_dump/module_dump.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/__init__.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/free_benchmark/perturbed_layers → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/common}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/constant.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/counter.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/enums.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/params.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/compare/grad_saver.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/compare/single_benchmark.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/main.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/free_benchmark/perturbed_layers/npu → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/perturbed_layers}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/base_layer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/layer_factory.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/free_benchmark/result_handlers → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/perturbed_layers/npu}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/add_noise.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/bit_noise.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/change_value.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/improve_precision.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/no_change.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/npu_base_layser.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/run_cpu.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/grad_probe → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/result_handlers}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/base_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/check_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/fix_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/handler_factory.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/preheat_handler.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/function_factory.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/monitor → mindstudio_probe-8.3.0/msprobe/pytorch/grad_probe}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/grad_probe/grad_monitor.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/grad_probe/grad_stat_csv.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/hook_module.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/pt_hook_manager.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/register_optimizer_hook.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/script_wrapper.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/support_wrap_ops.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/wrap_aten.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/monitor/distributed → mindstudio_probe-8.3.0/msprobe/pytorch/monitor}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/csv2tb.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/data_writers.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/parse_tool → mindstudio_probe-8.3.0/msprobe/pytorch/monitor/distributed}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/distributed/distributed_ops.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/distributed/stack_blacklist.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/distributed/wrap_distributed.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/features.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/module_hook.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/module_metric.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/optimizer_collect.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/visualizer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/dispatch.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/dump_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/single_compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/torch_ops_config.yaml +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/utils.py +0 -0
- {mindstudio_probe-8.2.1/msprobe/pytorch/parse_tool/lib → mindstudio_probe-8.3.0/msprobe/pytorch/parse_tool}/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/cli.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/compare.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/config.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/file_desc.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/interactive_cli.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/parse_exception.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/parse_tool.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/visualization.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/graph_merger.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/msprobe_adapter.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/compare/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/compare/graph_comparator.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/compare/mode_adapter.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/db_utils.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/__init__.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/base_node.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/distributed_analyzer.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/graph.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/node_colors.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/node_op.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/msprobe/visualization/graph_service.py +0 -0
- {mindstudio_probe-8.2.1 → mindstudio_probe-8.3.0}/setup.cfg +0 -0
|
@@ -46,7 +46,6 @@ msprobe/core/compare/utils.py
|
|
|
46
46
|
msprobe/core/compare/diff_analyze/__init__.py
|
|
47
47
|
msprobe/core/compare/diff_analyze/diff_analyze_threshold.yaml
|
|
48
48
|
msprobe/core/compare/diff_analyze/first_diff_analyze.py
|
|
49
|
-
msprobe/core/compare/diff_analyze/ignore_op_list.yaml
|
|
50
49
|
msprobe/core/compare/find_first/__init__.py
|
|
51
50
|
msprobe/core/compare/find_first/analyzer.py
|
|
52
51
|
msprobe/core/compare/find_first/data_processor.py
|
|
@@ -115,6 +114,7 @@ msprobe/docs/04.kernel_dump_PyTorch.md
|
|
|
115
114
|
msprobe/docs/05.data_dump_PyTorch.md
|
|
116
115
|
msprobe/docs/06.data_dump_MindSpore.md
|
|
117
116
|
msprobe/docs/07.accuracy_checker_PyTorch.md
|
|
117
|
+
msprobe/docs/08.accuracy_checker_online_PyTorch.md
|
|
118
118
|
msprobe/docs/09.accuracy_checker_MindSpore.md
|
|
119
119
|
msprobe/docs/10.accuracy_compare_PyTorch.md
|
|
120
120
|
msprobe/docs/11.accuracy_compare_MindSpore.md
|
|
@@ -333,6 +333,7 @@ msprobe/nan_analyze/analyzer.py
|
|
|
333
333
|
msprobe/nan_analyze/graph.py
|
|
334
334
|
msprobe/nan_analyze/utils.py
|
|
335
335
|
msprobe/pytorch/__init__.py
|
|
336
|
+
msprobe/pytorch/attl_manager.py
|
|
336
337
|
msprobe/pytorch/function_factory.py
|
|
337
338
|
msprobe/pytorch/pt_config.py
|
|
338
339
|
msprobe/pytorch/pytorch_service.py
|
|
@@ -372,6 +373,14 @@ msprobe/pytorch/api_accuracy_checker/run_ut/run_overflow_check.py
|
|
|
372
373
|
msprobe/pytorch/api_accuracy_checker/run_ut/run_ut.py
|
|
373
374
|
msprobe/pytorch/api_accuracy_checker/run_ut/run_ut_utils.py
|
|
374
375
|
msprobe/pytorch/api_accuracy_checker/run_ut/torch_ut_setting.json
|
|
376
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/__init__.py
|
|
377
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/attl.py
|
|
378
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/client.py
|
|
379
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/device_dispatch.py
|
|
380
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/dump_dispatch.py
|
|
381
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/server.py
|
|
382
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/torch_ops_config.yaml
|
|
383
|
+
msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/utils.py
|
|
375
384
|
msprobe/pytorch/bench_functions/__init__.py
|
|
376
385
|
msprobe/pytorch/bench_functions/apply_adam.py
|
|
377
386
|
msprobe/pytorch/bench_functions/apply_adam_w.py
|
|
@@ -84,7 +84,9 @@ msprobe 通过在训练脚本中添加 PrecisionDebugger 接口的方式对 API
|
|
|
84
84
|
|
|
85
85
|
精度预检旨在昇腾 NPU 上扫描训练模型中的所有 API 进行 API 复现,给出精度情况的诊断和分析。对应 config.json 中的 "run_ut" task。
|
|
86
86
|
|
|
87
|
-
PyTorch 场景的[离线预检](./docs/07.accuracy_checker_PyTorch.md)
|
|
87
|
+
PyTorch 场景的[离线预检](./docs/07.accuracy_checker_PyTorch.md)和[在线预检](./docs/08.accuracy_checker_online_PyTorch.md)
|
|
88
|
+
|
|
89
|
+
在线预检计划在 Mindstudio 8.3.0 版本正式下线。
|
|
88
90
|
|
|
89
91
|
MindSpore 动态图场景的[离线预检](./docs/09.accuracy_checker_MindSpore.md)
|
|
90
92
|
|
|
@@ -12,29 +12,31 @@
|
|
|
12
12
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
13
|
# See the License for the specific language governing permissions and
|
|
14
14
|
# limitations under the License.
|
|
15
|
+
|
|
15
16
|
import atexit
|
|
16
17
|
import csv
|
|
17
18
|
import fcntl
|
|
18
19
|
import io
|
|
20
|
+
import json
|
|
21
|
+
import multiprocessing
|
|
19
22
|
import os
|
|
20
23
|
import pickle
|
|
21
|
-
from multiprocessing import shared_memory
|
|
22
|
-
import stat
|
|
23
|
-
import json
|
|
24
24
|
import re
|
|
25
25
|
import shutil
|
|
26
|
+
import stat
|
|
26
27
|
import sys
|
|
27
28
|
import zipfile
|
|
28
|
-
import
|
|
29
|
-
|
|
29
|
+
from multiprocessing import shared_memory
|
|
30
|
+
|
|
30
31
|
import numpy as np
|
|
31
32
|
import pandas as pd
|
|
33
|
+
import yaml
|
|
32
34
|
|
|
35
|
+
from msprobe.core.common.const import FileCheckConst, CompareConst, Const
|
|
33
36
|
from msprobe.core.common.decorator import recursion_depth_decorator
|
|
34
|
-
from msprobe.core.common.log import logger
|
|
35
37
|
from msprobe.core.common.exceptions import FileCheckException
|
|
36
|
-
from msprobe.core.common.const import FileCheckConst, CompareConst, Const
|
|
37
38
|
from msprobe.core.common.global_lock import global_lock, is_main_process
|
|
39
|
+
from msprobe.core.common.log import logger
|
|
38
40
|
|
|
39
41
|
proc_lock = multiprocessing.Lock()
|
|
40
42
|
|
|
@@ -46,16 +48,15 @@ class FileChecker:
|
|
|
46
48
|
Attributes:
|
|
47
49
|
file_path: The file or dictionary path to be verified.
|
|
48
50
|
path_type: file or dictionary
|
|
49
|
-
ability(str):
|
|
51
|
+
ability(str): one of [FileCheckConst.READ_ABLE, FileCheckConst.WRITE_ABLE, FileCheckConst.READ_WRITE_ABLE]
|
|
50
52
|
file_type(str): The correct file type for file
|
|
51
53
|
"""
|
|
52
54
|
|
|
53
|
-
def __init__(self, file_path, path_type, ability=None, file_type=None
|
|
55
|
+
def __init__(self, file_path, path_type, ability=None, file_type=None):
|
|
54
56
|
self.file_path = file_path
|
|
55
57
|
self.path_type = self._check_path_type(path_type)
|
|
56
|
-
self.ability = ability
|
|
58
|
+
self.ability = self._check_ability_type(ability)
|
|
57
59
|
self.file_type = file_type
|
|
58
|
-
self.is_script = is_script
|
|
59
60
|
|
|
60
61
|
@staticmethod
|
|
61
62
|
def _check_path_type(path_type):
|
|
@@ -64,9 +65,17 @@ class FileChecker:
|
|
|
64
65
|
raise FileCheckException(FileCheckException.ILLEGAL_PARAM_ERROR)
|
|
65
66
|
return path_type
|
|
66
67
|
|
|
68
|
+
@staticmethod
|
|
69
|
+
def _check_ability_type(ability):
|
|
70
|
+
ability_list = [FileCheckConst.READ_ABLE, FileCheckConst.WRITE_ABLE, FileCheckConst.READ_WRITE_ABLE]
|
|
71
|
+
if ability and ability not in ability_list:
|
|
72
|
+
logger.error(f'The ability must be one of {ability_list}.')
|
|
73
|
+
raise FileCheckException(FileCheckException.ILLEGAL_PARAM_ERROR)
|
|
74
|
+
return ability
|
|
75
|
+
|
|
67
76
|
def common_check(self):
|
|
68
77
|
"""
|
|
69
|
-
|
|
78
|
+
功能:基本文件权限校验,包括文件存在性、软连接、文件长度、文件类型、文件读写权限、文件属组、文件路径特殊字符、文件后缀等
|
|
70
79
|
注意:文件后缀的合法性,非通用操作,可使用其他独立接口实现
|
|
71
80
|
"""
|
|
72
81
|
check_path_exists(self.file_path)
|
|
@@ -75,13 +84,13 @@ class FileChecker:
|
|
|
75
84
|
check_path_length(self.file_path)
|
|
76
85
|
check_path_type(self.file_path, self.path_type)
|
|
77
86
|
self.check_path_ability()
|
|
78
|
-
|
|
79
|
-
check_path_owner_consistent(self.file_path)
|
|
87
|
+
check_path_owner_consistent(self.file_path)
|
|
80
88
|
check_path_pattern_valid(self.file_path)
|
|
81
89
|
check_common_file_size(self.file_path)
|
|
82
90
|
check_file_suffix(self.file_path, self.file_type)
|
|
91
|
+
check_path_no_others_write(self.file_path)
|
|
83
92
|
if self.path_type == FileCheckConst.FILE:
|
|
84
|
-
|
|
93
|
+
check_dirpath_permission(self.file_path)
|
|
85
94
|
return self.file_path
|
|
86
95
|
|
|
87
96
|
def check_path_ability(self):
|
|
@@ -137,7 +146,8 @@ class FileOpen:
|
|
|
137
146
|
check_path_pattern_valid(self.file_path)
|
|
138
147
|
if os.path.exists(self.file_path):
|
|
139
148
|
check_common_file_size(self.file_path)
|
|
140
|
-
|
|
149
|
+
check_path_no_others_write(self.file_path)
|
|
150
|
+
check_dirpath_permission(self.file_path)
|
|
141
151
|
|
|
142
152
|
def check_ability_and_owner(self):
|
|
143
153
|
if self.mode in self.SUPPORT_READ_MODE:
|
|
@@ -256,12 +266,15 @@ def check_path_type(file_path, file_type):
|
|
|
256
266
|
raise FileCheckException(FileCheckException.INVALID_FILE_ERROR)
|
|
257
267
|
|
|
258
268
|
|
|
259
|
-
def
|
|
260
|
-
|
|
261
|
-
is_writable = (
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
269
|
+
def check_group_writable(file_path):
|
|
270
|
+
path_stat = os.stat(file_path)
|
|
271
|
+
is_writable = bool(path_stat.st_mode & stat.S_IWGRP)
|
|
272
|
+
return is_writable
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
def check_others_writable(file_path):
|
|
276
|
+
path_stat = os.stat(file_path)
|
|
277
|
+
is_writable = bool(path_stat.st_mode & stat.S_IWOTH)
|
|
265
278
|
return is_writable
|
|
266
279
|
|
|
267
280
|
|
|
@@ -309,7 +322,7 @@ def check_path_before_create(path):
|
|
|
309
322
|
'The file path {} contains special characters.'.format(path))
|
|
310
323
|
|
|
311
324
|
|
|
312
|
-
def
|
|
325
|
+
def check_dirpath_permission(path):
|
|
313
326
|
path = os.path.realpath(path)
|
|
314
327
|
dirpath = os.path.dirname(path)
|
|
315
328
|
if dedup_log('check_dirpath_before_read', dirpath):
|
|
@@ -321,13 +334,14 @@ def check_dirpath_before_read(path):
|
|
|
321
334
|
logger.warning(f"The directory {dirpath} is not yours.")
|
|
322
335
|
|
|
323
336
|
|
|
324
|
-
def check_file_or_directory_path(path, isdir=False):
|
|
337
|
+
def check_file_or_directory_path(path, isdir=False, is_strict=False):
|
|
325
338
|
"""
|
|
326
339
|
Function Description:
|
|
327
340
|
check whether the path is valid
|
|
328
341
|
Parameter:
|
|
329
342
|
path: the path to check
|
|
330
343
|
isdir: the path is dir or file
|
|
344
|
+
is_strict: whether to perform stricter validation (e.g., verify group cannot write to path)
|
|
331
345
|
Exception Description:
|
|
332
346
|
when invalid data throw exception
|
|
333
347
|
"""
|
|
@@ -337,6 +351,33 @@ def check_file_or_directory_path(path, isdir=False):
|
|
|
337
351
|
path_checker = FileChecker(path, FileCheckConst.FILE, FileCheckConst.READ_ABLE)
|
|
338
352
|
path_checker.common_check()
|
|
339
353
|
|
|
354
|
+
if is_strict:
|
|
355
|
+
if check_group_writable(path):
|
|
356
|
+
raise FileCheckException(
|
|
357
|
+
FileCheckException.FILE_PERMISSION_ERROR,
|
|
358
|
+
f"The directory/file must not allow write access to group. Directory/File path: {path}"
|
|
359
|
+
)
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
def check_path_no_others_write(file_path):
|
|
363
|
+
if dedup_log('check_path_no_others_write', file_path):
|
|
364
|
+
if check_group_writable(file_path):
|
|
365
|
+
logger.warning(f"The directory/file path is writable by group: {file_path}.")
|
|
366
|
+
|
|
367
|
+
if check_others_writable(file_path):
|
|
368
|
+
raise FileCheckException(
|
|
369
|
+
FileCheckException.FILE_PERMISSION_ERROR,
|
|
370
|
+
f"The directory/file must not allow write access to others. Directory/File path: {file_path}"
|
|
371
|
+
)
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
def check_path_no_group_others_write(file_path):
|
|
375
|
+
if check_group_writable(file_path) or check_others_writable(file_path):
|
|
376
|
+
raise FileCheckException(
|
|
377
|
+
FileCheckException.FILE_PERMISSION_ERROR,
|
|
378
|
+
f"The directory/file must not allow write access to group or others. Directory/File path: {file_path}"
|
|
379
|
+
)
|
|
380
|
+
|
|
340
381
|
|
|
341
382
|
def change_mode(path, mode):
|
|
342
383
|
if not os.path.exists(path) or os.path.islink(path):
|
|
@@ -388,6 +429,14 @@ def check_file_type(path):
|
|
|
388
429
|
raise FileCheckException(FileCheckException.INVALID_FILE_ERROR)
|
|
389
430
|
|
|
390
431
|
|
|
432
|
+
def root_privilege_warning():
|
|
433
|
+
if os.getuid() == 0:
|
|
434
|
+
logger.warning(
|
|
435
|
+
"msprobe is being run as root. "
|
|
436
|
+
"To avoid security risks, it is recommended to switch to a regular user to run it."
|
|
437
|
+
)
|
|
438
|
+
|
|
439
|
+
|
|
391
440
|
def load_yaml(yaml_path):
|
|
392
441
|
path_checker = FileChecker(yaml_path, FileCheckConst.FILE, FileCheckConst.READ_ABLE, FileCheckConst.YAML_SUFFIX)
|
|
393
442
|
checked_path = path_checker.common_check()
|
|
@@ -968,7 +1017,13 @@ class SharedDict:
|
|
|
968
1017
|
def _safe_load(self):
|
|
969
1018
|
with io.BytesIO(self._shm.buf[:]) as buff:
|
|
970
1019
|
try:
|
|
971
|
-
|
|
1020
|
+
data = SafeUnpickler(buff).load()
|
|
1021
|
+
if not isinstance(data, dict):
|
|
1022
|
+
logger.debug(f"Data from shared memory is '{type(data)}' type, expected 'dict'.")
|
|
1023
|
+
self._dict = {}
|
|
1024
|
+
self._changed = True
|
|
1025
|
+
else:
|
|
1026
|
+
self._dict = data
|
|
972
1027
|
except Exception as e:
|
|
973
1028
|
logger.debug(f'shared dict is unreadable, reason: {e}, create new dict.')
|
|
974
1029
|
self._dict = {}
|
|
@@ -12,10 +12,11 @@
|
|
|
12
12
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
13
|
# See the License for the specific language governing permissions and
|
|
14
14
|
# limitations under the License.import functools
|
|
15
|
+
|
|
15
16
|
import functools
|
|
17
|
+
|
|
16
18
|
from msprobe.core.common.const import Const
|
|
17
|
-
from msprobe.core.common.file_utils import check_file_or_directory_path
|
|
18
|
-
from msprobe.core.common.file_utils import save_npy
|
|
19
|
+
from msprobe.core.common.file_utils import check_file_or_directory_path, save_npy
|
|
19
20
|
|
|
20
21
|
|
|
21
22
|
class FrameworkDescriptor:
|
|
@@ -103,7 +104,7 @@ class FmkAdp:
|
|
|
103
104
|
@classmethod
|
|
104
105
|
def tensor_norm(cls, tensor):
|
|
105
106
|
return cls.process_tensor(tensor, lambda x: x.norm())
|
|
106
|
-
|
|
107
|
+
|
|
107
108
|
@classmethod
|
|
108
109
|
def save_tensor(cls, tensor, filepath):
|
|
109
110
|
if cls.fmk == Const.PT_FRAMEWORK:
|
|
@@ -151,7 +152,7 @@ class FmkAdp:
|
|
|
151
152
|
|
|
152
153
|
@classmethod
|
|
153
154
|
def load_checkpoint(cls, path, to_cpu=True, weights_only=True):
|
|
154
|
-
check_file_or_directory_path(path)
|
|
155
|
+
check_file_or_directory_path(path, is_strict=not weights_only)
|
|
155
156
|
if cls.fmk == Const.PT_FRAMEWORK:
|
|
156
157
|
try:
|
|
157
158
|
if to_cpu:
|
|
@@ -161,9 +162,9 @@ class FmkAdp:
|
|
|
161
162
|
except Exception as e:
|
|
162
163
|
raise RuntimeError(f"load pt file {path} failed: {e}") from e
|
|
163
164
|
return mindspore.load_checkpoint(path)
|
|
164
|
-
|
|
165
|
+
|
|
165
166
|
@classmethod
|
|
166
167
|
def asnumpy(cls, tensor):
|
|
167
168
|
if cls.fmk == Const.PT_FRAMEWORK:
|
|
168
169
|
return tensor.float().numpy()
|
|
169
|
-
return tensor.float().asnumpy()
|
|
170
|
+
return tensor.float().asnumpy()
|
|
@@ -26,8 +26,6 @@ from msprobe.core.compare.utils import gen_api_batches
|
|
|
26
26
|
|
|
27
27
|
cur_dir = os.path.dirname(os.path.realpath(__file__))
|
|
28
28
|
diff_threshold_yaml_path = os.path.join(cur_dir, 'diff_analyze_threshold.yaml')
|
|
29
|
-
ignore_op_list_yaml_path = os.path.join(cur_dir, 'ignore_op_list.yaml')
|
|
30
|
-
ignore_list = load_yaml(ignore_op_list_yaml_path)
|
|
31
29
|
thresholds = load_yaml(diff_threshold_yaml_path)
|
|
32
30
|
cmp_metrics = thresholds.get('compare_metrics')
|
|
33
31
|
|
|
@@ -53,7 +51,7 @@ class FirstDiffAnalyze:
|
|
|
53
51
|
return True
|
|
54
52
|
return False
|
|
55
53
|
|
|
56
|
-
def single_api_check(self, result_slice, header
|
|
54
|
+
def single_api_check(self, result_slice, header):
|
|
57
55
|
"""
|
|
58
56
|
单个api差异检查
|
|
59
57
|
|
|
@@ -67,18 +65,14 @@ class FirstDiffAnalyze:
|
|
|
67
65
|
}
|
|
68
66
|
|
|
69
67
|
column_indices = {name: idx for idx, name in enumerate(header)}
|
|
70
|
-
|
|
68
|
+
|
|
71
69
|
for line in result_slice:
|
|
72
70
|
op_item = {
|
|
73
71
|
column_name: line[column_indices[column_name]]
|
|
74
72
|
for column_name in header
|
|
75
73
|
}
|
|
76
74
|
single_check_result['op_items'].append(op_item)
|
|
77
|
-
|
|
78
|
-
continue
|
|
79
|
-
output_idx += 1
|
|
80
|
-
if output_idx in ignore_list.get(api_name, []):
|
|
81
|
-
continue
|
|
75
|
+
|
|
82
76
|
# set is_same
|
|
83
77
|
if self.mode_config.dump_mode == Const.MD5:
|
|
84
78
|
if line[column_indices[CompareConst.RESULT]] == CompareConst.DIFF:
|
|
@@ -123,13 +117,7 @@ class FirstDiffAnalyze:
|
|
|
123
117
|
with tqdm(total=len(api_batches), desc=bar_desc_add_rank, unit="api/module", ncols=100) as progress_bar:
|
|
124
118
|
for api_batch in api_batches:
|
|
125
119
|
result_slice = result[api_batch.start: api_batch.params_grad_end_index]
|
|
126
|
-
|
|
127
|
-
# suppose name is Tensor.MatMul.0.forward
|
|
128
|
-
if len(api_compo) < 4:
|
|
129
|
-
continue
|
|
130
|
-
# get MatMul as api_name
|
|
131
|
-
api_name = api_compo[-3]
|
|
132
|
-
check_result[api_batch.api_name] = self.single_api_check(result_slice, header, api_name)
|
|
120
|
+
check_result[api_batch.api_name] = self.single_api_check(result_slice, header)
|
|
133
121
|
progress_bar.update(1)
|
|
134
122
|
|
|
135
123
|
return check_result
|
|
@@ -182,7 +182,7 @@ def analyze_diff_in_group(nodes_group):
|
|
|
182
182
|
input_diff_nodes = list(filter(lambda node: node.is_diff, src_list))
|
|
183
183
|
# 如果有异常回溯计算节点找到异常来源
|
|
184
184
|
# 使用cpu模拟节点进行计算,查看结果是否有问题。需要对所有计算节点录入/映射,暂不实现。
|
|
185
|
-
get_compute_ops_from_comm_nodes(
|
|
185
|
+
get_compute_ops_from_comm_nodes(input_diff_nodes)
|
|
186
186
|
# 筛选入参没问题但出参有问题的通信节点
|
|
187
187
|
output_diff_nodes = list(filter(lambda node: node.data.is_diff, nodes_group))
|
|
188
188
|
get_comm_ops(output_diff_nodes)
|
|
@@ -46,9 +46,10 @@ class BaseHookManager(ABC):
|
|
|
46
46
|
hook_handle_dict = {}
|
|
47
47
|
params_grad_info = {}
|
|
48
48
|
|
|
49
|
-
def __init__(self, data_collector, config):
|
|
49
|
+
def __init__(self, data_collector, config, attl_manager=None):
|
|
50
50
|
self.data_collector = data_collector
|
|
51
51
|
self.config = config
|
|
52
|
+
self.attl_manager = attl_manager
|
|
52
53
|
|
|
53
54
|
@property
|
|
54
55
|
def _pid(self):
|
|
@@ -63,7 +64,6 @@ class BaseHookManager(ABC):
|
|
|
63
64
|
def reset_status():
|
|
64
65
|
BaseHookManager.inner_switch = defaultdict(bool)
|
|
65
66
|
BaseHookManager.inner_api_count = defaultdict(int)
|
|
66
|
-
BaseHookManager.hook_handle_dict.clear()
|
|
67
67
|
BaseHookManager.params_grad_info.clear()
|
|
68
68
|
|
|
69
69
|
@staticmethod
|
|
@@ -216,6 +216,10 @@ class BaseHookManager(ABC):
|
|
|
216
216
|
|
|
217
217
|
args = self._register_backward_hook(module, full_backward_name, args)
|
|
218
218
|
with self._no_grad_context():
|
|
219
|
+
if getattr(self.config, "online_run_ut", False):
|
|
220
|
+
BaseHookManager.inner_switch[tid] = False
|
|
221
|
+
ThreadSafe.release()
|
|
222
|
+
return
|
|
219
223
|
self.data_collector.update_api_or_module_name(full_forward_name)
|
|
220
224
|
self.data_collector.forward_input_data_collect(
|
|
221
225
|
full_forward_name,
|
|
@@ -261,6 +265,13 @@ class BaseHookManager(ABC):
|
|
|
261
265
|
output = self._register_backward_pre_hook(module, full_backward_name, output)
|
|
262
266
|
|
|
263
267
|
with self._no_grad_context():
|
|
268
|
+
if getattr(self.config, "online_run_ut", False):
|
|
269
|
+
if self.data_collector.scope and not self.data_collector.scope.check(full_name):
|
|
270
|
+
return None
|
|
271
|
+
if self.attl_manager:
|
|
272
|
+
self.attl_manager.attl_send(full_name, args, kwargs, output)
|
|
273
|
+
BaseHookManager.inner_switch[tid] = False
|
|
274
|
+
return None
|
|
264
275
|
if hook_type == Const.MODULE:
|
|
265
276
|
params_dict = self._get_params_dict(module)
|
|
266
277
|
setattr(module_input_output, Const.PARAMS, params_dict)
|
|
@@ -309,7 +320,9 @@ class BaseHookManager(ABC):
|
|
|
309
320
|
original_state = self.ensure_gc_enabled()
|
|
310
321
|
BaseHookManager.inner_switch[tid] = True
|
|
311
322
|
self.data_collector.update_api_or_module_name(full_name)
|
|
312
|
-
|
|
323
|
+
if getattr(self.config, "online_run_ut", False):
|
|
324
|
+
BaseHookManager.inner_switch[tid] = False
|
|
325
|
+
return
|
|
313
326
|
need_exchange = self._need_exchange(module) if hook_type == Const.MODULE else True
|
|
314
327
|
if need_exchange:
|
|
315
328
|
module_input_output = ModuleBackwardInputsOutputs(grad_input=grad_output, grad_output=grad_input)
|
|
@@ -35,6 +35,7 @@ class BaseService(ABC):
|
|
|
35
35
|
self.config.level = getattr(config, 'level_ori', config.level) # 兼容MindSpore配置
|
|
36
36
|
self.model = None
|
|
37
37
|
self.data_collector = build_data_collector(self.config)
|
|
38
|
+
self.attl_manager = None
|
|
38
39
|
self.current_iter = 0
|
|
39
40
|
self.loop = 0
|
|
40
41
|
self.init_step = 0
|
|
@@ -90,6 +91,10 @@ class BaseService(ABC):
|
|
|
90
91
|
self.config.task in self.data_collector.tasks_need_tensor_data or
|
|
91
92
|
(self.config.task == Const.STATISTICS and self.config.tensor_list)
|
|
92
93
|
)
|
|
94
|
+
|
|
95
|
+
@property
|
|
96
|
+
def _is_online_run_ut(self):
|
|
97
|
+
return getattr(self.config, "online_run_ut", False)
|
|
93
98
|
|
|
94
99
|
@property
|
|
95
100
|
@abstractmethod
|
|
@@ -141,9 +146,11 @@ class BaseService(ABC):
|
|
|
141
146
|
self.primitive_switch = True
|
|
142
147
|
self._change_jit_switch(True)
|
|
143
148
|
self.logger.info(f"Dump switch is turned on at step {self.current_iter}. ")
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
149
|
+
if self._is_online_run_ut:
|
|
150
|
+
self._run_ut_dispatch(True)
|
|
151
|
+
else:
|
|
152
|
+
self.create_dirs()
|
|
153
|
+
self.logger.info(f"Dump data will be saved in {self.dump_iter_dir}.")
|
|
147
154
|
|
|
148
155
|
def stop(self):
|
|
149
156
|
"""通用stop模板"""
|
|
@@ -158,7 +165,8 @@ class BaseService(ABC):
|
|
|
158
165
|
self._change_jit_switch(False)
|
|
159
166
|
if self._is_l2_level:
|
|
160
167
|
return
|
|
161
|
-
|
|
168
|
+
if self._is_online_run_ut:
|
|
169
|
+
self._run_ut_dispatch(False)
|
|
162
170
|
self._process_async_dump()
|
|
163
171
|
self.data_collector.write_json()
|
|
164
172
|
|
|
@@ -258,6 +266,8 @@ class BaseService(ABC):
|
|
|
258
266
|
end_service = self.config.step and self.current_iter > max(self.config.step) or \
|
|
259
267
|
self.data_collector and self.data_collector.data_processor.is_terminated
|
|
260
268
|
if end_service:
|
|
269
|
+
if self._is_online_run_ut and self.attl_manager:
|
|
270
|
+
self.attl_manager.attl_stop()
|
|
261
271
|
self.primitive_switch = False
|
|
262
272
|
self._change_jit_switch(False)
|
|
263
273
|
Runtime.is_running = False
|
|
@@ -300,7 +310,8 @@ class BaseService(ABC):
|
|
|
300
310
|
if root_model and isinstance(root_model, list):
|
|
301
311
|
root_model = root_model[0]
|
|
302
312
|
self.logger.warning("Infer model can only input one to support token_range, choose the first one.")
|
|
303
|
-
|
|
313
|
+
if self._is_online_run_ut:
|
|
314
|
+
return
|
|
304
315
|
root_model.register_forward_pre_hook(infer_hook)
|
|
305
316
|
|
|
306
317
|
def _create_l2_dirs(self, cur_rank):
|
|
@@ -73,7 +73,14 @@
|
|
|
73
73
|
| data_mode | 与[ 1.2 task 配置为 statistics ](#12-task-配置为-statistics)中的解释相同 | 否 |
|
|
74
74
|
| file_format | tensor 数据的保存格式,str 类型,仅支持 MindSpore 静态图场景的 L2 级别配置该字段,其他场景不生效。可选参数:<br/> "bin":dump 的 tensor 文件为二进制格式;<br/>"npy":dump 的 tensor 文件后缀为 .npy,默认值。 | 否 |
|
|
75
75
|
| summary_mode | 控制 dump 文件输出的模式,str 类型,支持 PyTorch、MSAdapter、MindSpore 动态图。可选参数:<br/> md5:dump 输出包含 CRC-32 值以及 API 统计信息的 dump.json 文件,用于验证数据的完整性;<br/> statistics:dump 仅输出包含 API 统计信息的 dump.json 文件,默认值。| 否 |
|
|
76
|
+
| online_run_ut<sup>a</sup> | 在线预检模式开关,bool 类型,可选参数 true(开启)、false(关闭),默认未配置,表示关闭。配置为 true 表示开启在线预检。| 否 |
|
|
77
|
+
| nfs_path<sup>a</sup> | 在线预检模式共享存储目录路径,str 类型,用于 GPU 设备和 NPU 设备间进行通信。仅在 online_run_ut 字段配置为 true 时生效,配置该参数后 host 和 port 不生效。 | 否 |
|
|
78
|
+
| host<sup>a</sup> | 在线预检模式局域网场景信息接收端 IP,str 类型,用于 GPU 设备和 NPU 设备间进行通信,NPU 侧须配置为 GPU 侧的局域网 IP 地址。仅在 online_run_ut 字段配置为 true 时生效,局域网场景时,不能配置 nfs_path 参数,否则局域网场景不生效。 | 否 |
|
|
79
|
+
| port<sup>a</sup> | 在线预检模式局域网场景信息接收端端口号,int 类型,用于 GPU 设备和 NPU 设备间进行通信,NPU 侧须配置为 GPU 侧的端口号。仅在 online_run_ut 字段配置为 true 时生效,局域网场景时,不能配置 nfs_path 参数,否则局域网场景不生效。| 否 |
|
|
76
80
|
|
|
81
|
+
**说明**:
|
|
82
|
+
|
|
83
|
+
1. online_run_ut、nfs_path、host、port 等字段仅在线预检场景 NPU 机器生效。
|
|
77
84
|
|
|
78
85
|
**示例**:
|
|
79
86
|
- [PyTorch场景](03.config_examples.md#12-task-配置为-tensor)
|
|
@@ -88,11 +95,17 @@
|
|
|
88
95
|
| white_list<sup>a</sup> | API dump 白名单,仅对指定的 API 进行 dump。<br/>**配置示例**:"white_list": ["conv1d", "conv2d"]。默认未配置白名单,即 dump 全量 API 数据。 | 否 |
|
|
89
96
|
| black_list<sup>a</sup> | API dump 黑名单,被指定的 API 不进行 dump。<br/>**配置示例**:"black_list": ["conv1d", "conv2d"]。默认未配置黑名单,即 dump 全量 API 数据。 | 否 |
|
|
90
97
|
| error_data_path | 配置保存精度未达标的 API 输入输出数据路径,默认为当前路径。<br/>**配置示例**:"error_data_path": "./"。 | 否 |
|
|
98
|
+
| is_online<sup>b</sup> | 在线预检模式开关,bool 类型,可选参数 true(开启)、false(关闭),默认关闭。 | 否 |
|
|
99
|
+
| nfs_path<sup>b</sup> | 在线预检模式共享存储目录路径,str 类型,用于 GPU 设备和 NPU 设备间进行通信。配置该参数后 host 和 port 不生效,仅在 is_online 字段配置为 true 时生效。 | 否 |
|
|
100
|
+
| host<sup>b</sup> | 在线预检模式局域网场景信息接收端 IP,str 类型,用于 GPU 设备和 NPU 设备间进行通信,GPU 侧配置为本机地址 127.0.0.1 或本机局域网 IP。局域网场景时,不能配置 nfs_path 参数,否则局域网场景不生效。仅在 is_online 字段配置为 true 时生效。 | 否 |
|
|
101
|
+
| port<sup>b</sup> | 在线预检模式局域网场景信息接收端端口号,int 类型,用于 GPU 设备和 NPU 设备间进行通信,GPU 侧配置为本机可用端口。局域网场景时,不能配置 nfs_path 参数,否则局域网场景不生效。仅在 is_online 字段配置为 true 时生效。| 否 |
|
|
102
|
+
| rank_list<sup>b</sup> | 指定在线预检的 Rank ID,默认值为 [0],list[int] 类型,应配置为大于等于 0 的整数,且须根据实际卡的 Rank ID 配置,若所配置的值大于实际训练所运行的卡的 Rank ID,则在线预检输出数据为空。GPU 和 NPU 须配置一致。仅在 is_online 字段配置为 true 时生效。 | 否 |
|
|
91
103
|
|
|
92
104
|
**说明**:
|
|
93
105
|
|
|
94
106
|
1. white_list 和 black_list 同时配置时,二者配置的 API 名单若无交集,则白名单生效,若 API 名单存在交集,则白名单排除的部分以及交集的 API 不进行 dump。
|
|
95
107
|
|
|
108
|
+
2. is_online、nfs_path、host、port、rank_list 等字段仅在线预检场景 GPU 机器生效。
|
|
96
109
|
|
|
97
110
|
**示例**:
|
|
98
111
|
```json
|
|
@@ -145,7 +158,7 @@ PyTorch、MSAdapter 以及 MindSpore 动态图场景下,"level"须为"L0"或"L
|
|
|
145
158
|
<tr><td>pert_mode</td><td>无标杆扰动因子,str 类型。可选参数:<br/> "improve_precision":对输入做升精度,默认值;<br/> "add_noise":对输入增加噪声;<br/> "no_change":不加扰动直接二次执行;<br/> "bit_noise":输入的末位比特翻转,MindSpore 场景不支持 BF16 类型的向量;<br/> "change_value":输入的张量首尾值调换;<br/> "to_cpu":在 CPU 等价执行(仅 PyTorch 场景支持)。<br/><b>配置示例</b>:"pert_mode": "improve_precision"。</td><td>否</td></tr>
|
|
146
159
|
<tr><td>handler_type</td><td>处理类型,可选参数:<br/> "check":进行无标杆比对检查,默认值;<br/> "fix":将扰动后的 API 输出结果覆盖原始 API 输出结果,尝试将 Loss 曲线恢复正常,该模式下不支持预热功能与反向过程,且仅支持"improve_precision"、"to_cpu"( PyTorch 场景)两种扰动因子。<br/> <b>配置示例</b>:"handler_type": "check"。</td><td>否</td></tr>
|
|
147
160
|
<tr><td>fuzz_level</td><td>无标杆数据 dump 级别,即选择比对结果文件应输出的表头属性,当前仅支持取值为:"L1"。输出结果详见 <a href="#161-无标杆比对数据存盘格式">1.6.1 无标杆比对数据存盘格式</a>。</td><td>否</td></tr>
|
|
148
|
-
<tr><td>fuzz_stage</td><td>比对过程,选择对 API 前向或反向进行无标杆比对,可选参数:<br/> "forward":前向,默认值;<br/> "backward":反向。当 fuzz_stage 为 "backward" 时,handler_type 只能为 "check"
|
|
161
|
+
<tr><td>fuzz_stage</td><td>比对过程,选择对 API 前向或反向进行无标杆比对,可选参数:<br/> "forward":前向,默认值;<br/> "backward":反向。当 fuzz_stage 为 "backward" 时,handler_type 只能为 "check"。pytorch场景下,当 fuzz_stage 为 "backward" 时, list 参数不能为空。<br/> <b>配置示例</b>:"fuzz_stage": "backward"。</td><td>否</td></tr>
|
|
149
162
|
<tr><td>if_preheat</td><td>预热功能(仅 PyTorch 场景支持),bool 类型。开启功能后工具可以根据每次迭代的输出调整精度算法的阈值,从而更准确地找出存在精度问题的 API。当"handler_type": "fix"时,不支持预热。可选参数:<br/> true(开启)或 false(关闭),默认关闭。<br/> <b>配置示例</b>:"if_preheat": "true"。</td><td>否</td></tr>
|
|
150
163
|
<tr><td>preheat_step</td><td>开启预热的迭代数量(仅 PyTorch 场景支持),int 类型,默认值为 15。须配置 "if_preheat": "true"。</td><td>否</td></tr>
|
|
151
164
|
<tr><td>max_sample</td><td>每个算子预热的采样次数的最大阈值(仅 PyTorch 场景支持),int 类型,默认值为 20。须配置 "if_preheat": "true"。</td><td>否</td></tr>
|