mindstudio-probe 8.2.0__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.
Files changed (515) hide show
  1. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/PKG-INFO +2 -2
  2. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/PKG-INFO +2 -2
  3. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/SOURCES.txt +11 -0
  4. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/README.md +7 -5
  5. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/const.py +6 -0
  6. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/db_manager.py +35 -4
  7. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/file_utils.py +105 -27
  8. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/framework_adapter.py +7 -6
  9. mindstudio_probe-8.3.0/msprobe/core/common/megatron_utils.py +59 -0
  10. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/utils.py +14 -3
  11. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/analyzer.py +8 -7
  12. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/graph.py +11 -3
  13. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/utils.py +2 -1
  14. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/highlight.py +13 -6
  15. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/multiprocessing_compute.py +17 -10
  16. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/utils.py +14 -5
  17. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_collector.py +18 -21
  18. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/pytorch_processor.py +43 -20
  19. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/json_writer.py +18 -8
  20. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/scope.py +4 -6
  21. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/hook_manager.py +37 -3
  22. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/service.py +18 -5
  23. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/single_save/single_comparator.py +16 -3
  24. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/01.installation.md +7 -5
  25. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/02.config_introduction.md +14 -1
  26. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/04.kernel_dump_PyTorch.md +1 -1
  27. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/06.data_dump_MindSpore.md +1 -1
  28. mindstudio_probe-8.3.0/msprobe/docs/08.accuracy_checker_online_PyTorch.md +295 -0
  29. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/10.accuracy_compare_PyTorch.md +46 -5
  30. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/14.data_parse_PyTorch.md +1 -1
  31. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/15.free_benchmarking_PyTorch.md +1 -1
  32. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/19.monitor.md +2 -0
  33. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/21.visualization_PyTorch.md +15 -80
  34. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/22.visualization_MindSpore.md +20 -104
  35. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/23.generate_operator_PyTorch.md +1 -1
  36. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/25.tool_function_introduction.md +1 -0
  37. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/26.data_dump_PyTorch_baseline.md +7 -7
  38. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_browser_1.png +0 -0
  39. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_match_info.png +0 -0
  40. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_precision_info.png +0 -0
  41. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_search_info.png +0 -0
  42. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_show_info.png +0 -0
  43. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_showcase.png +0 -0
  44. mindstudio_probe-8.3.0/msprobe/docs/img/visualization/vis_unmatch_info.png +0 -0
  45. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/api_accuracy_checker.py +1 -1
  46. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/generate_op_script/op_generator.py +1 -1
  47. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/cell_processor.py +33 -5
  48. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/common_dir_compare.py +22 -26
  49. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/utils.py +1 -2
  50. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/debugger/precision_debugger.py +1 -1
  51. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/cell_dump_process.py +73 -62
  52. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/graph_mode_cell_dump.py +21 -10
  53. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/ms_hook_manager.py +2 -0
  54. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/msprobe.py +6 -4
  55. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/config.py +36 -3
  56. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/api_precision_compare.py +24 -0
  57. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare.py +12 -2
  58. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/config.yaml +10 -0
  59. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/generate_op_script/op_generator.py +1 -1
  60. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/run_ut.py +132 -12
  61. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/attl.py +205 -0
  62. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/client.py +378 -0
  63. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/device_dispatch.py +239 -0
  64. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/dump_dispatch.py +115 -0
  65. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/server.py +250 -0
  66. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/torch_ops_config.yaml +63 -0
  67. mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer/utils.py +198 -0
  68. mindstudio_probe-8.3.0/msprobe/pytorch/attl_manager.py +65 -0
  69. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/utils.py +22 -2
  70. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/utils.py +3 -3
  71. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/debugger/debugger_config.py +10 -0
  72. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/dump/module_dump/hook_wrapper.py +34 -7
  73. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/dump/module_dump/module_processer.py +23 -10
  74. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/api_register.py +6 -1
  75. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/module_hook.py +28 -9
  76. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/dispatch.py +42 -24
  77. mindstudio_probe-8.3.0/msprobe/pytorch/parse_tool/lib/__init__.py +0 -0
  78. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/pt_config.py +57 -2
  79. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/pytorch_service.py +11 -2
  80. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/graph_builder.py +170 -64
  81. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/graph_merger.py +0 -1
  82. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/msprobe_adapter.py +1 -1
  83. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/db_utils.py +25 -2
  84. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/base_node.py +0 -24
  85. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/graph.py +5 -14
  86. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph_service.py +29 -53
  87. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/utils.py +11 -1
  88. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/setup.py +7 -2
  89. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_browser_1.png +0 -0
  90. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_match_info.png +0 -0
  91. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_precision_info.png +0 -0
  92. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_search_info.png +0 -0
  93. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_show_info.png +0 -0
  94. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_showcase.png +0 -0
  95. mindstudio_probe-8.2.0/msprobe/docs/img/visualization/vis_unmatch_info.png +0 -0
  96. mindstudio_probe-8.2.0/msprobe/pytorch/api_accuracy_checker/config.yaml +0 -5
  97. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/LICENSE +0 -0
  98. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/MANIFEST.in +0 -0
  99. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/dependency_links.txt +0 -0
  100. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/entry_points.txt +0 -0
  101. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/not-zip-safe +0 -0
  102. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/requires.txt +0 -0
  103. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/mindstudio_probe.egg-info/top_level.txt +0 -0
  104. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/CMakeLists.txt +0 -0
  105. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/__init__.py +0 -0
  106. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/config.json +0 -0
  107. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/__init__.py +0 -0
  108. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/advisor/advisor.py +0 -0
  109. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/advisor/advisor_const.py +0 -0
  110. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/advisor/advisor_result.py +0 -0
  111. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/decorator.py +0 -0
  112. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/exceptions.py +0 -0
  113. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/global_lock.py +0 -0
  114. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/inplace_op_checker.py +0 -0
  115. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/inplace_ops.yaml +0 -0
  116. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/log.py +0 -0
  117. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/parallel_state.py +0 -0
  118. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common/runtime.py +0 -0
  119. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/common_config.py +0 -0
  120. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/acc_compare.py +0 -0
  121. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/check.py +0 -0
  122. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/compare_cli.py +0 -0
  123. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/config.py +0 -0
  124. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/diff_analyze/__init__.py +0 -0
  125. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/diff_analyze/diff_analyze_threshold.yaml +0 -0
  126. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/diff_analyze/first_diff_analyze.py +0 -0
  127. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/__init__.py +0 -0
  128. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/find_first/data_processor.py +0 -0
  129. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/__init__.py +0 -0
  130. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/data_scope_parser.py +0 -0
  131. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/layer_mapping.py +0 -0
  132. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/layer_mapping/postprocess_pass.py +0 -0
  133. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/merge_result/merge_result.py +0 -0
  134. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/merge_result/merge_result_cli.py +0 -0
  135. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/merge_result/utils.py +0 -0
  136. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/ms_to_pt_api.yaml +0 -0
  137. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/compare/npy_compare.py +0 -0
  138. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/__init__.py +0 -0
  139. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/__init__.py +0 -0
  140. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/base_checker.py +0 -0
  141. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/dataset_checker.py +0 -0
  142. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/env_args_checker.py +0 -0
  143. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/hyperparameter_checker.py +0 -0
  144. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/pip_checker.py +0 -0
  145. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/random_checker.py +0 -0
  146. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/checkers/weights_checker.py +0 -0
  147. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/ckpt_comparator.py +0 -0
  148. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/megatron_loader.py +0 -0
  149. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/metrics.py +0 -0
  150. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/ckpt_compare/name_mapping.yaml +0 -0
  151. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/config_check_cli.py +0 -0
  152. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/config_checker.py +0 -0
  153. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/resource/dependency.yaml +0 -0
  154. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/resource/env.yaml +0 -0
  155. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/resource/hyperparameter.yaml +0 -0
  156. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/utils/hyperparameter_parser.py +0 -0
  157. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/config_check/utils/utils.py +0 -0
  158. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/api_registry.py +0 -0
  159. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/base.py +0 -0
  160. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/factory.py +0 -0
  161. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/data_dump/data_processor/mindspore_processor.py +0 -0
  162. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/debugger/precision_debugger.py +0 -0
  163. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/__init__.py +0 -0
  164. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/constant.py +0 -0
  165. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/grad_compare.py +0 -0
  166. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/grad_probe/utils.py +0 -0
  167. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/kernel_dump/kernel_config.py +0 -0
  168. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/monitor/__init__.py +0 -0
  169. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/monitor/anomaly_processor.py +0 -0
  170. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/monitor/csv2db.py +0 -0
  171. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/monitor/db_utils.py +0 -0
  172. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/monitor/utils.py +0 -0
  173. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/abnormal_scene.py +0 -0
  174. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/api_info.py +0 -0
  175. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/checker.py +0 -0
  176. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/filter.py +0 -0
  177. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/ignore_rules.yaml +0 -0
  178. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/level.py +0 -0
  179. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/overflow_check/utils.py +0 -0
  180. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/single_save/__init__.py +0 -0
  181. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/core/single_save/single_saver.py +0 -0
  182. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/03.config_examples.md +0 -0
  183. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/05.data_dump_PyTorch.md +0 -0
  184. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/07.accuracy_checker_PyTorch.md +0 -0
  185. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/09.accuracy_checker_MindSpore.md +0 -0
  186. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/11.accuracy_compare_MindSpore.md +0 -0
  187. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/12.overflow_check_PyTorch.md +0 -0
  188. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/13.overflow_check_MindSpore.md +0 -0
  189. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/16.free_benchmarking_MindSpore.md +0 -0
  190. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/17.grad_probe.md +0 -0
  191. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/18.online_dispatch.md +0 -0
  192. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/20.monitor_performance_baseline.md +0 -0
  193. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/24.code_mapping_Mindspore.md +0 -0
  194. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/27.dump_json_instruction.md +0 -0
  195. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/28.debugger_save_instruction.md +0 -0
  196. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/28.kernel_dump_MindSpore.md +0 -0
  197. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/29.data_dump_MSAdapter.md +0 -0
  198. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/30.overflow_check_MSAdapter.md +0 -0
  199. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/31.config_check.md +0 -0
  200. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/32.ckpt_compare.md +0 -0
  201. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/33.generate_operator_MindSpore.md +0 -0
  202. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/34.RL_collect.md +0 -0
  203. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/35.nan_analyze.md +0 -0
  204. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/36.calculation_result_change.md +0 -0
  205. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/FAQ.md +0 -0
  206. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/S02.report_free_benchmarking_validation_performance_baseline.md +0 -0
  207. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/accuracy_checker_MindSpore/accuracy_checker_MindSpore_baseline.md +0 -0
  208. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/data_dump_MindSpore/data_dump_MindSpore_baseline.md +0 -0
  209. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/data_dump_MindSpore/dynamic_graph_quick_start_example.md +0 -0
  210. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_1.png +0 -0
  211. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_2.png +0 -0
  212. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_3.png +0 -0
  213. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/BLOOM-7B_4.png +0 -0
  214. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_1.png +0 -0
  215. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_2.png +0 -0
  216. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_3.png +0 -0
  217. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_4.png +0 -0
  218. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_5.png +0 -0
  219. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_6.png +0 -0
  220. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_7.png +0 -0
  221. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/GPT-3_8.png +0 -0
  222. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/YOLOV5S_1.png +0 -0
  223. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/YOLOV5S_2.png +0 -0
  224. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/accuracy_checking_details.png +0 -0
  225. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/accuracy_checking_result.png +0 -0
  226. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/api_precision_compare_details.png +0 -0
  227. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/api_precision_compare_result.png +0 -0
  228. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/auto_analyze_log.png +0 -0
  229. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/compare_result.png +0 -0
  230. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/compare_result_pkl.png +0 -0
  231. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/compare_result_pkl_md5.png.png +0 -0
  232. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/cpu_info.png +0 -0
  233. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/free_benchmark.png +0 -0
  234. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/free_benchmark_framework.png +0 -0
  235. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-1.png +0 -0
  236. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-2.png +0 -0
  237. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-3.png +0 -0
  238. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image-4.png +0 -0
  239. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/grad_probe_image.png +0 -0
  240. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/merge_result.png +0 -0
  241. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/module_compare.png +0 -0
  242. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/monitor/cpu_info.png +0 -0
  243. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/monitor/step_count_per_record.png +0 -0
  244. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/ms_dump.png +0 -0
  245. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/ms_layer.png +0 -0
  246. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/pt_dump.png +0 -0
  247. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/save_compare_result_sample.png +0 -0
  248. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/fuzzy_match_ms.png +0 -0
  249. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/fuzzy_match_pt.png +0 -0
  250. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/proxy.png +0 -0
  251. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/tensorboard_1.png +0 -0
  252. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/tensorboard_2.png +0 -0
  253. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/img/visualization/vis_browser_2.png +0 -0
  254. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/GPTModel.png +0 -0
  255. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/ParallelMLP.png +0 -0
  256. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/layer_mapping_example.md +0 -0
  257. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mapping.png +0 -0
  258. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mapping1.png +0 -0
  259. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/1.png +0 -0
  260. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/2.png +0 -0
  261. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/3.png +0 -0
  262. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/4.png +0 -0
  263. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/5.png +0 -0
  264. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/6.png +0 -0
  265. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/7.png +0 -0
  266. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/llamafactory-qwen25vl.txt +0 -0
  267. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/llamafactory1.png +0 -0
  268. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/llamafactory2.png +0 -0
  269. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/mindspeed-mm-qwen25vl.txt +0 -0
  270. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/mindspeed1.png +0 -0
  271. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactoary_img/mindspeed2.png +0 -0
  272. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/mindspeed_llamafactory_mapping.md +0 -0
  273. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/module_name.png +0 -0
  274. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/module_name1.png +0 -0
  275. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/no_mapping.png +0 -0
  276. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/no_mapping1.png +0 -0
  277. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/no_mapping_analyze.png +0 -0
  278. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/docs/visualization/top_layer.png +0 -0
  279. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/__init__.py +0 -0
  280. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/__init__.py +0 -0
  281. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/api_info.py +0 -0
  282. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/api_runner.py +0 -0
  283. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/base_compare_algorithm.py +0 -0
  284. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/bench_functions/flash_attention_score.py +0 -0
  285. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/bench_functions/fusion_operator.py +0 -0
  286. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/checker_support_api.yaml +0 -0
  287. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/cmd_parser.py +0 -0
  288. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/compute_element.py +0 -0
  289. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/data_manager.py +0 -0
  290. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/generate_op_script/operator_replication.template +0 -0
  291. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/main.py +0 -0
  292. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/multi_api_accuracy_checker.py +0 -0
  293. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/multi_data_manager.py +0 -0
  294. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/torch_mindtorch_importer.py +0 -0
  295. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/type_mapping.py +0 -0
  296. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/api_accuracy_checker/utils.py +0 -0
  297. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/__init__.py +0 -0
  298. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/bind.py +0 -0
  299. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/cmd_parser.py +0 -0
  300. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/graph.py +0 -0
  301. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/graph_parser.py +0 -0
  302. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/main.py +0 -0
  303. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/code_mapping/processor.py +0 -0
  304. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/common/const.py +0 -0
  305. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/common/log.py +0 -0
  306. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/common/utils.py +0 -0
  307. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/distributed_compare.py +0 -0
  308. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/ms_compare.py +0 -0
  309. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/compare/ms_graph_compare.py +0 -0
  310. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/debugger/__init__.py +0 -0
  311. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/debugger/debugger_config.py +0 -0
  312. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/__init__.py +0 -0
  313. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/cell_dump_with_insert_gradient.py +0 -0
  314. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/dump_tool_factory.py +0 -0
  315. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/graph_tensor_dump.py +0 -0
  316. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/api_register.py +0 -0
  317. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/hook_cell.py +0 -0
  318. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/primitive_hooks.py +0 -0
  319. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/hook_cell/support_wrap_ops.yaml +0 -0
  320. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/jit_dump.py +0 -0
  321. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/kernel_graph_dump.py +0 -0
  322. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dump/kernel_kbyk_dump.py +0 -0
  323. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dym_loader/hook_dynamic_loader.cpp +0 -0
  324. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/dym_loader/hook_dynamic_loader.h +0 -0
  325. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/exception_dump/__init__.py +0 -0
  326. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/exception_dump/exception_dump_tool_factory.py +0 -0
  327. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/exception_dump/kernel_graph_exception_dump.py +0 -0
  328. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/__init__.py +0 -0
  329. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/api_pynative_self_check.py +0 -0
  330. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/__init__.py +0 -0
  331. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/config.py +0 -0
  332. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/handler_params.py +0 -0
  333. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/common/utils.py +0 -0
  334. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/data/support_wrap_ops.yaml +0 -0
  335. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/__init__.py +0 -0
  336. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/base_handler.py +0 -0
  337. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/check_handler.py +0 -0
  338. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/fix_handler.py +0 -0
  339. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/handler/handler_factory.py +0 -0
  340. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/add_noise.py +0 -0
  341. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/base_perturbation.py +0 -0
  342. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/bit_noise.py +0 -0
  343. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/exchange_value.py +0 -0
  344. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/improve_precision.py +0 -0
  345. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/no_change.py +0 -0
  346. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/perturbation/perturbation_factory.py +0 -0
  347. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/free_benchmark/self_check_tool_factory.py +0 -0
  348. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/__init__.py +0 -0
  349. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/global_context.py +0 -0
  350. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/grad_analyzer.py +0 -0
  351. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/grad_monitor.py +0 -0
  352. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/grad_stat_csv.py +0 -0
  353. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/hook.py +0 -0
  354. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/grad_probe/utils.py +0 -0
  355. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/mindspore_service.py +0 -0
  356. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/mindtorch/__init__.py +0 -0
  357. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/mindtorch/mindtorch_adaptor.py +0 -0
  358. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/common_func.py +0 -0
  359. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/data_writers.py +0 -0
  360. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/__init__.py +0 -0
  361. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/distributed_ops.yaml +0 -0
  362. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/stack_blacklist.yaml +0 -0
  363. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/distributed/wrap_distributed.py +0 -0
  364. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/features.py +0 -0
  365. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/module_hook.py +0 -0
  366. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/optimizer_collect.py +0 -0
  367. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/monitor/utils.py +0 -0
  368. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/ms_config.py +0 -0
  369. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/overflow_check/__init__.py +0 -0
  370. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/overflow_check/kernel_graph_overflow_check.py +0 -0
  371. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/overflow_check/overflow_check_tool_factory.py +0 -0
  372. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/mindspore/task_handler_factory.py +0 -0
  373. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/__init__.py +0 -0
  374. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/analyzer.py +0 -0
  375. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/graph.py +0 -0
  376. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/nan_analyze/utils.py +0 -0
  377. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/__init__.py +0 -0
  378. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/.keep +0 -0
  379. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/__init__.py +0 -0
  380. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/.keep +0 -0
  381. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/__init__.py +0 -0
  382. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/common/utils.py +0 -0
  383. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/__init__.py +0 -0
  384. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/algorithm.py +0 -0
  385. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/api_precision_standard.yaml +0 -0
  386. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/api_precision_threshold.yaml +0 -0
  387. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare_column.py +0 -0
  388. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare_input.py +0 -0
  389. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/compare/compare_utils.py +0 -0
  390. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/generate_op_script/config_op.json +0 -0
  391. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/generate_op_script/operator_replication.template +0 -0
  392. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/absolute_threshold.py +0 -0
  393. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/accumulative_error_compare.py +0 -0
  394. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/base_standard.py +0 -0
  395. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/benchmark_compare.py +0 -0
  396. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/binary_consistency.py +0 -0
  397. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/standard_config.py +0 -0
  398. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/standard_register.py +0 -0
  399. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/thousandth_standard.py +0 -0
  400. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/precision_standard/ulp_compare.py +0 -0
  401. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/.keep +0 -0
  402. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/__init__.py +0 -0
  403. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/data_generate.py +0 -0
  404. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/multi_run_ut.py +0 -0
  405. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/run_overflow_check.py +0 -0
  406. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/run_ut_utils.py +0 -0
  407. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/api_accuracy_checker/run_ut/torch_ut_setting.json +0 -0
  408. {mindstudio_probe-8.2.0/msprobe/pytorch/debugger → mindstudio_probe-8.3.0/msprobe/pytorch/api_accuracy_checker/tensor_transport_layer}/__init__.py +0 -0
  409. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/__init__.py +0 -0
  410. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/apply_adam.py +0 -0
  411. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/apply_adam_w.py +0 -0
  412. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/confusion_transpose.py +0 -0
  413. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/fast_gelu.py +0 -0
  414. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/group_norm_silu.py +0 -0
  415. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/layer_norm_eval.py +0 -0
  416. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/linear.py +0 -0
  417. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/matmul_backward.py +0 -0
  418. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/mish.py +0 -0
  419. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/moe_gating_top_k_softmax.py +0 -0
  420. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/npu_fusion_attention.py +0 -0
  421. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/rms_norm.py +0 -0
  422. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/rotary_mul.py +0 -0
  423. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/scaled_mask_softmax.py +0 -0
  424. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/sort_v2.py +0 -0
  425. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/bench_functions/swiglu.py +0 -0
  426. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/__init__.py +0 -0
  427. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/compare_script.template +0 -0
  428. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/log.py +0 -0
  429. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/common/parse_json.py +0 -0
  430. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/distributed_compare.py +0 -0
  431. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/mapping.yaml +0 -0
  432. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/match.py +0 -0
  433. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/pt_compare.py +0 -0
  434. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/compare/pt_diff_analyze.py +0 -0
  435. {mindstudio_probe-8.2.0/msprobe/pytorch/dump/module_dump → mindstudio_probe-8.3.0/msprobe/pytorch/debugger}/__init__.py +0 -0
  436. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/debugger/precision_debugger.py +0 -0
  437. {mindstudio_probe-8.2.0/msprobe/pytorch/free_benchmark/common → mindstudio_probe-8.3.0/msprobe/pytorch/dump/module_dump}/__init__.py +0 -0
  438. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/dump/module_dump/module_dump.py +0 -0
  439. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/__init__.py +0 -0
  440. {mindstudio_probe-8.2.0/msprobe/pytorch/free_benchmark/perturbed_layers → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/common}/__init__.py +0 -0
  441. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/constant.py +0 -0
  442. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/counter.py +0 -0
  443. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/enums.py +0 -0
  444. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/params.py +0 -0
  445. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/common/utils.py +0 -0
  446. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/compare/grad_saver.py +0 -0
  447. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/compare/single_benchmark.py +0 -0
  448. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/main.py +0 -0
  449. {mindstudio_probe-8.2.0/msprobe/pytorch/free_benchmark/perturbed_layers/npu → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/perturbed_layers}/__init__.py +0 -0
  450. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/base_layer.py +0 -0
  451. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/layer_factory.py +0 -0
  452. {mindstudio_probe-8.2.0/msprobe/pytorch/free_benchmark/result_handlers → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/perturbed_layers/npu}/__init__.py +0 -0
  453. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/add_noise.py +0 -0
  454. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/bit_noise.py +0 -0
  455. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/change_value.py +0 -0
  456. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/improve_precision.py +0 -0
  457. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/no_change.py +0 -0
  458. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/npu/npu_base_layser.py +0 -0
  459. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/perturbed_layers/run_cpu.py +0 -0
  460. {mindstudio_probe-8.2.0/msprobe/pytorch/grad_probe → mindstudio_probe-8.3.0/msprobe/pytorch/free_benchmark/result_handlers}/__init__.py +0 -0
  461. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/base_handler.py +0 -0
  462. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/check_handler.py +0 -0
  463. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/fix_handler.py +0 -0
  464. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/handler_factory.py +0 -0
  465. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/free_benchmark/result_handlers/preheat_handler.py +0 -0
  466. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/function_factory.py +0 -0
  467. {mindstudio_probe-8.2.0/msprobe/pytorch/monitor → mindstudio_probe-8.3.0/msprobe/pytorch/grad_probe}/__init__.py +0 -0
  468. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/grad_probe/grad_monitor.py +0 -0
  469. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/grad_probe/grad_stat_csv.py +0 -0
  470. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/__init__.py +0 -0
  471. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/hook_module.py +0 -0
  472. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/pt_hook_manager.py +0 -0
  473. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/register_optimizer_hook.py +0 -0
  474. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/script_wrapper.py +0 -0
  475. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/support_wrap_ops.yaml +0 -0
  476. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/utils.py +0 -0
  477. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/hook_module/wrap_aten.py +0 -0
  478. {mindstudio_probe-8.2.0/msprobe/pytorch/monitor/distributed → mindstudio_probe-8.3.0/msprobe/pytorch/monitor}/__init__.py +0 -0
  479. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/csv2tb.py +0 -0
  480. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/data_writers.py +0 -0
  481. {mindstudio_probe-8.2.0/msprobe/pytorch/parse_tool → mindstudio_probe-8.3.0/msprobe/pytorch/monitor/distributed}/__init__.py +0 -0
  482. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/distributed/distributed_ops.yaml +0 -0
  483. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/distributed/stack_blacklist.yaml +0 -0
  484. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/distributed/wrap_distributed.py +0 -0
  485. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/features.py +0 -0
  486. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/module_metric.py +0 -0
  487. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/optimizer_collect.py +0 -0
  488. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/utils.py +0 -0
  489. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/monitor/visualizer.py +0 -0
  490. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/__init__.py +0 -0
  491. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/compare.py +0 -0
  492. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/dump_compare.py +0 -0
  493. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/single_compare.py +0 -0
  494. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/torch_ops_config.yaml +0 -0
  495. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/online_dispatch/utils.py +0 -0
  496. {mindstudio_probe-8.2.0/msprobe/pytorch/parse_tool/lib → mindstudio_probe-8.3.0/msprobe/pytorch/parse_tool}/__init__.py +0 -0
  497. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/cli.py +0 -0
  498. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/compare.py +0 -0
  499. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/config.py +0 -0
  500. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/file_desc.py +0 -0
  501. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/interactive_cli.py +0 -0
  502. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/parse_exception.py +0 -0
  503. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/parse_tool.py +0 -0
  504. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/utils.py +0 -0
  505. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/pytorch/parse_tool/lib/visualization.py +0 -0
  506. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/__init__.py +0 -0
  507. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/builder/__init__.py +0 -0
  508. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/compare/__init__.py +0 -0
  509. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/compare/graph_comparator.py +0 -0
  510. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/compare/mode_adapter.py +0 -0
  511. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/__init__.py +0 -0
  512. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/distributed_analyzer.py +0 -0
  513. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/node_colors.py +0 -0
  514. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/msprobe/visualization/graph/node_op.py +0 -0
  515. {mindstudio_probe-8.2.0 → mindstudio_probe-8.3.0}/setup.cfg +0 -0
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mindstudio-probe
3
- Version: 8.2.0
3
+ Version: 8.3.0
4
4
  Summary: Ascend Probe Utils
5
- Home-page: https://gitee.com/ascend/mstt/tree/master/debug/accuracy_tools/msprobe
5
+ Home-page: https://gitcode.com/Ascend/mstt/tree/master/debug/accuracy_tools/msprobe
6
6
  Author: Ascend Team
7
7
  Author-email: pmail_mindstudio@huawei.com
8
8
  License: Apache License 2.0
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mindstudio-probe
3
- Version: 8.2.0
3
+ Version: 8.3.0
4
4
  Summary: Ascend Probe Utils
5
- Home-page: https://gitee.com/ascend/mstt/tree/master/debug/accuracy_tools/msprobe
5
+ Home-page: https://gitcode.com/Ascend/mstt/tree/master/debug/accuracy_tools/msprobe
6
6
  Author: Ascend Team
7
7
  Author-email: pmail_mindstudio@huawei.com
8
8
  License: Apache License 2.0
@@ -30,6 +30,7 @@ msprobe/core/common/global_lock.py
30
30
  msprobe/core/common/inplace_op_checker.py
31
31
  msprobe/core/common/inplace_ops.yaml
32
32
  msprobe/core/common/log.py
33
+ msprobe/core/common/megatron_utils.py
33
34
  msprobe/core/common/parallel_state.py
34
35
  msprobe/core/common/runtime.py
35
36
  msprobe/core/common/utils.py
@@ -113,6 +114,7 @@ msprobe/docs/04.kernel_dump_PyTorch.md
113
114
  msprobe/docs/05.data_dump_PyTorch.md
114
115
  msprobe/docs/06.data_dump_MindSpore.md
115
116
  msprobe/docs/07.accuracy_checker_PyTorch.md
117
+ msprobe/docs/08.accuracy_checker_online_PyTorch.md
116
118
  msprobe/docs/09.accuracy_checker_MindSpore.md
117
119
  msprobe/docs/10.accuracy_compare_PyTorch.md
118
120
  msprobe/docs/11.accuracy_compare_MindSpore.md
@@ -331,6 +333,7 @@ msprobe/nan_analyze/analyzer.py
331
333
  msprobe/nan_analyze/graph.py
332
334
  msprobe/nan_analyze/utils.py
333
335
  msprobe/pytorch/__init__.py
336
+ msprobe/pytorch/attl_manager.py
334
337
  msprobe/pytorch/function_factory.py
335
338
  msprobe/pytorch/pt_config.py
336
339
  msprobe/pytorch/pytorch_service.py
@@ -370,6 +373,14 @@ msprobe/pytorch/api_accuracy_checker/run_ut/run_overflow_check.py
370
373
  msprobe/pytorch/api_accuracy_checker/run_ut/run_ut.py
371
374
  msprobe/pytorch/api_accuracy_checker/run_ut/run_ut_utils.py
372
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
373
384
  msprobe/pytorch/bench_functions/__init__.py
374
385
  msprobe/pytorch/bench_functions/apply_adam.py
375
386
  msprobe/pytorch/bench_functions/apply_adam_w.py
@@ -35,17 +35,17 @@ export MSPROBE_LOG_LEVEL={x}
35
35
 
36
36
  ## 环境和依赖
37
37
 
38
- - 硬件环境请参见《[昇腾产品形态说明](https://gitee.com/link?target=https%3A%2F%2Fwww.hiascend.com%2Fdocument%2Fdetail%2Fzh%2Fcanncommercial%2F80RC22%2Fquickstart%2Fquickstart%2Fquickstart_18_0002.html)》。
39
- - 软件环境请参见《[CANN 软件安装指南](https://gitee.com/link?target=https%3A%2F%2Fwww.hiascend.com%2Fdocument%2Fdetail%2Fzh%2Fcanncommercial%2F80RC22%2Fsoftwareinst%2Finstg%2Finstg_0000.html%3FMode%3DPmIns%26OS%3DUbuntu%26Software%3DcannToolKit)》安装昇腾设备开发或运行环境,即toolkit软件包。
38
+ - 硬件环境请参见《[昇腾产品形态说明](https://www.hiascend.com/document/detail/zh/canncommercial/80RC22/quickstart/quickstart/quickstart_18_0002.html)》。
39
+ - 软件环境请参见《[CANN 软件安装指南](https://www.hiascend.com/document/detail/zh/canncommercial/80RC22/softwareinst/instg/instg_0000.html?Mode=PmIns&OS=Ubuntu&Software=cannToolKit)》安装昇腾设备开发或运行环境,即toolkit软件包。
40
40
 
41
41
  以上环境依赖请根据实际环境选择适配的版本。
42
42
 
43
43
  ## 版本配套说明
44
44
 
45
- - msprobe支持AscendPyTorch 1.11.0或更高版本,支持的PyTorch和CANN以及PyTorch和python软件版本配套关系请参见《[Ascend Extension for PyTorch插件](https://gitee.com/ascend/pytorch)》。
45
+ - msprobe支持AscendPyTorch 1.11.0或更高版本,支持的PyTorch和CANN以及PyTorch和python软件版本配套关系请参见《[Ascend Extension for PyTorch插件](https://gitcode.com/Ascend/pytorch)》。
46
46
  - msprobe支持MindSpore 2.4.0或更高版本,支持的MindSpore和CANN以及MindSpore和python软件版本配套关系请参见《[MindSpore版本发布列表](https://www.mindspore.cn/versions)》。
47
47
  - msprobe支持MSAdapter 2.1.0。
48
- - msprobe支持的固件驱动版本与配套CANN软件支持的固件驱动版本相同,开发者可通过“[昇腾社区-固件与驱动](https://gitee.com/link?target=https%3A%2F%2Fwww.hiascend.com%2Fhardware%2Ffirmware-drivers%2Fcommunity%3Fproduct%3D2%26model%3D28%26cann%3D8.0.RC3.alpha003%26driver%3D1.0.25.alpha)”页面根据产品型号与CANN软件版本获取配套的固件与驱动。
48
+ - msprobe支持的固件驱动版本与配套CANN软件支持的固件驱动版本相同,开发者可通过“[昇腾社区-固件与驱动](https://www.hiascend.com/hardware/firmware-drivers/community?product=2&model=28&cann=8.0.RC3.alpha003&driver=1.0.25.alpha)”页面根据产品型号与CANN软件版本获取配套的固件与驱动。
49
49
 
50
50
 
51
51
  ## 🚨 工具限制与注意事项
@@ -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
 
@@ -274,6 +274,7 @@ class Const:
274
274
  TENSOR_TYPE = "torch.Tensor"
275
275
  DTENSOR_TYPE = "torch.distributed.tensor.DTensor"
276
276
  FAKE_TENSOR_TYPE = "torch._subclasses.fake_tensor.FakeTensor"
277
+ AC_TENSOR_TYPE = "torch.distributed._functional_collectives.AsyncCollectiveTensor"
277
278
 
278
279
  SUPPORT_API_FILE_NAME = "support_wrap_ops.yaml"
279
280
 
@@ -405,6 +406,8 @@ class Const:
405
406
 
406
407
  MIX_DUMP_NAMES = {'graph', 'pynative'}
407
408
 
409
+ MEGATRON_MICRO_STEP_NUMBER = 'megatron_micro_step_number'
410
+
408
411
 
409
412
  class CompareConst:
410
413
  """
@@ -425,6 +428,8 @@ class CompareConst:
425
428
  NPU_MIN = "NPU min"
426
429
  NPU_MEAN = "NPU mean"
427
430
  NPU_NORM = "NPU l2norm"
431
+ NPU_P2POP_PEER = "NPU P2POp peer"
432
+
428
433
  BENCH_MAX = "Bench max"
429
434
  BENCH_MIN = "Bench min"
430
435
  BENCH_MEAN = "Bench mean"
@@ -823,6 +828,7 @@ class MonitorConst:
823
828
  ACTV_OUT = "output"
824
829
  ACTVGRAD_IN = "input_grad"
825
830
  ACTVGRAD_OUT = "output_grad"
831
+ FSDP_FLAT_SEP = "_fsdp_wrapped_module."
826
832
  # used for tasks
827
833
  ACTV = "actv"
828
834
  ACTVGRAD = "actv_grad"
@@ -12,6 +12,7 @@
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
+ import re
15
16
  import sqlite3
16
17
  from typing import List, Tuple, Dict, Any
17
18
  from functools import wraps
@@ -20,6 +21,14 @@ from msprobe.pytorch.common.log import logger
20
21
  from msprobe.core.common.file_utils import check_path_before_create, change_mode
21
22
  from msprobe.core.common.const import FileCheckConst
22
23
 
24
+ SAFE_SQL_PATTERN = re.compile(r'^[a-zA-Z0-9_]+$')
25
+
26
+
27
+ def check_identifier_safety(name):
28
+ """验证标识符是否安全(防止SQL注入)"""
29
+ if not isinstance(name, str) or SAFE_SQL_PATTERN.match(name) is None:
30
+ raise ValueError(f"Invalid SQL identifier: {name}, potential SQL injection risk!")
31
+
23
32
 
24
33
  def _db_operation(func):
25
34
  """数据库操作装饰器,自动管理连接"""
@@ -68,6 +77,7 @@ class DBManager:
68
77
  where_values = []
69
78
  if where_list:
70
79
  for col, val in where_list.items():
80
+ check_identifier_safety(col)
71
81
  where_clauses.append(f"{col} = ?")
72
82
  where_values.append(val)
73
83
  if where_clauses:
@@ -84,13 +94,22 @@ class DBManager:
84
94
  :param batch_size: 每批插入的大小
85
95
  :return: 插入的行数
86
96
  """
97
+ check_identifier_safety(table_name)
98
+
87
99
  if not data:
88
100
  return 0
89
101
  columns = len(data[0])
90
- if key_list and columns != len(key_list):
91
- raise ValueError(
92
- f"When inserting into table {table_name}, the length of key list ({key_list})"
93
- f"does not match the data({columns}).")
102
+ if key_list:
103
+ if not isinstance(key_list, list):
104
+ raise TypeError(
105
+ f"key_list must be a list, got {type(key_list)}"
106
+ )
107
+ if columns != len(key_list):
108
+ raise ValueError(
109
+ f"When inserting into table {table_name}, the length of key list ({key_list})"
110
+ f"does not match the data({columns}).")
111
+ for key in key_list:
112
+ check_identifier_safety(key)
94
113
 
95
114
  batch_size = self.DEFAULT_INSERT_SIZE
96
115
  placeholders = ", ".join(["?"] * columns)
@@ -121,12 +140,16 @@ class DBManager:
121
140
  :param where: WHERE条件
122
141
  :return: 查询结果列表(字典形式)
123
142
  """
143
+ check_identifier_safety(table_name)
124
144
 
125
145
  if not columns:
126
146
  raise ValueError("columns parameter cannot be empty, specify columns to select (e.g. ['id', 'name'])")
127
147
  if not isinstance(columns, list) or not all(isinstance(col, str) for col in columns):
128
148
  raise TypeError("columns must be a list of strings (e.g. ['id', 'name'])")
129
149
 
150
+ for col in columns:
151
+ check_identifier_safety(col)
152
+
130
153
  cols = ", ".join(columns)
131
154
  sql = f"SELECT {cols} FROM {table_name}"
132
155
 
@@ -147,6 +170,14 @@ class DBManager:
147
170
  :param where_params: WHERE条件参数
148
171
  :return: 影响的行数
149
172
  """
173
+ check_identifier_safety(table_name)
174
+ if not updates:
175
+ raise ValueError("columns parameter cannot be empty, specify it to update (e.g. {'name': 'xxx'}")
176
+ if not isinstance(updates, dict):
177
+ raise TypeError(f"updates must be a dictionary, got: {type(updates)}")
178
+ for key in updates.keys():
179
+ check_identifier_safety(key)
180
+
150
181
  set_clause = ", ".join([f"{k} = ?" for k in updates.keys()])
151
182
  sql = f"UPDATE {table_name} SET {set_clause}"
152
183
 
@@ -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 multiprocessing
29
- import yaml
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
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): FileCheckConst.WRITE_ABLE or FileCheckConst.READ_ABLE to set file has writability or readability
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, is_script=True):
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
- if self.is_script:
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
- check_dirpath_before_read(self.file_path)
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
- check_dirpath_before_read(self.file_path)
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:
@@ -172,7 +182,7 @@ def check_path_exists(path):
172
182
  if not os.path.exists(path):
173
183
  logger.error('The file path %s does not exist.' % path)
174
184
  raise FileCheckException(FileCheckException.ILLEGAL_PATH_ERROR)
175
-
185
+
176
186
 
177
187
  def check_path_not_exists(path):
178
188
  if os.path.exists(path):
@@ -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 check_others_writable(directory):
260
- dir_stat = os.stat(directory)
261
- is_writable = (
262
- bool(dir_stat.st_mode & stat.S_IWGRP) or # 组可写
263
- bool(dir_stat.st_mode & stat.S_IWOTH) # 其他用户可写
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 check_dirpath_before_read(path):
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):
@@ -319,15 +332,16 @@ def check_dirpath_before_read(path):
319
332
  check_path_owner_consistent(dirpath)
320
333
  except FileCheckException:
321
334
  logger.warning(f"The directory {dirpath} is not yours.")
322
-
323
335
 
324
- def check_file_or_directory_path(path, isdir=False):
336
+
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()
@@ -422,6 +471,26 @@ def load_json(json_path):
422
471
  return data
423
472
 
424
473
 
474
+ def load_construct_json(json_path):
475
+ construct_dict_o = load_json(json_path)
476
+ if Const.MEGATRON_MICRO_STEP_NUMBER in construct_dict_o:
477
+ construct_dict = {}
478
+ micro_step_dict = {Const.MEGATRON_MICRO_STEP_NUMBER: construct_dict_o.get(Const.MEGATRON_MICRO_STEP_NUMBER)}
479
+ del construct_dict_o[Const.MEGATRON_MICRO_STEP_NUMBER]
480
+ for key, value in construct_dict_o.items():
481
+ if isinstance(value, list):
482
+ if len(value) != 2:
483
+ logger.error(f'Parse construct json file "{os.path.basename(json_path)}" failed.')
484
+ raise RuntimeError()
485
+ construct_dict[key] = value[0]
486
+ micro_step_dict[key] = value[1]
487
+ else:
488
+ construct_dict[key] = value
489
+ micro_step_dict[key] = 0
490
+ return construct_dict, micro_step_dict
491
+ return construct_dict_o, {}
492
+
493
+
425
494
  def save_json(json_path, data, indent=None, mode="w"):
426
495
  check_path_before_create(json_path)
427
496
  json_path = os.path.realpath(json_path)
@@ -520,6 +589,9 @@ def move_directory(src_path, dst_path):
520
589
  check_file_or_directory_path(src_path, isdir=True)
521
590
  check_path_before_create(dst_path)
522
591
  try:
592
+ if os.path.exists(dst_path):
593
+ logger.warning(f"The destination directory {dst_path} already exists, it will be removed.")
594
+ shutil.rmtree(dst_path)
523
595
  shutil.move(src_path, dst_path)
524
596
  except Exception as e:
525
597
  logger.error(f"move directory {src_path} to {dst_path} failed")
@@ -945,7 +1017,13 @@ class SharedDict:
945
1017
  def _safe_load(self):
946
1018
  with io.BytesIO(self._shm.buf[:]) as buff:
947
1019
  try:
948
- self._dict = SafeUnpickler(buff).load()
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
949
1027
  except Exception as e:
950
1028
  logger.debug(f'shared dict is unreadable, reason: {e}, create new dict.')
951
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()
@@ -0,0 +1,59 @@
1
+ # Copyright (c) 2024-2025, Huawei Technologies Co., Ltd.
2
+ # All rights reserved.
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ from functools import wraps
17
+
18
+
19
+ class MegatronStepInfo:
20
+ is_megatron = False
21
+ is_forward = False
22
+ is_backward = False
23
+ forward_micro_step = -1
24
+ backward_micro_step = -1
25
+
26
+ @classmethod
27
+ def reset(cls):
28
+ """重置所有类属性到初始状态"""
29
+ cls.is_megatron = False
30
+ cls.is_forward = False
31
+ cls.is_backward = False
32
+ cls.forward_micro_step = -1
33
+ cls.backward_micro_step = -1
34
+
35
+
36
+ def wrap_megatron_step(func, is_forward=True):
37
+ @wraps(func)
38
+ def wrapped_func(*args, **kwargs):
39
+ if not MegatronStepInfo.is_megatron:
40
+ MegatronStepInfo.is_megatron = True
41
+ if is_forward:
42
+ MegatronStepInfo.is_forward = True
43
+ MegatronStepInfo.is_backward = False
44
+ MegatronStepInfo.forward_micro_step += 1
45
+ else:
46
+ MegatronStepInfo.is_forward = False
47
+ MegatronStepInfo.is_backward = True
48
+ MegatronStepInfo.backward_micro_step += 1
49
+ return func(*args, **kwargs)
50
+
51
+ return wrapped_func
52
+
53
+
54
+ def get_micro_step():
55
+ return MegatronStepInfo.forward_micro_step if MegatronStepInfo.is_forward else MegatronStepInfo.backward_micro_step
56
+
57
+
58
+ def is_megatron():
59
+ return MegatronStepInfo.is_megatron
@@ -28,7 +28,7 @@ import numpy as np
28
28
  from msprobe.core.common.const import Const, CompareConst
29
29
  from msprobe.core.common.decorator import recursion_depth_decorator
30
30
  from msprobe.core.common.exceptions import MsprobeException
31
- from msprobe.core.common.file_utils import (FileOpen, check_file_or_directory_path, load_json)
31
+ from msprobe.core.common.file_utils import (FileOpen, check_file_or_directory_path, load_json, load_construct_json)
32
32
  from msprobe.core.common.log import logger
33
33
 
34
34
  device = collections.namedtuple('device', ['type', 'index'])
@@ -83,7 +83,8 @@ class MsprobeBaseException(Exception):
83
83
  INVALID_API_NAME_ERROR = 36
84
84
  CROSS_FRAME_ERROR = 37
85
85
  MISSING_THRESHOLD_ERROR = 38
86
- WRONG_THRESHOLD_ERROR = 38
86
+ WRONG_THRESHOLD_ERROR = 39
87
+ MULTIPROCESS_ERROR = 40
87
88
 
88
89
  def __init__(self, code, error_info: str = ""):
89
90
  super(MsprobeBaseException, self).__init__()
@@ -348,8 +349,18 @@ def get_stack_construct_by_dump_json_path(dump_json_path):
348
349
  stack_json = os.path.join(directory, "stack.json")
349
350
  construct_json = os.path.join(directory, "construct.json")
350
351
 
352
+ stack_json_exist = os.path.exists(stack_json)
353
+ construct_json_exist = os.path.exists(construct_json)
354
+
355
+ if not stack_json_exist and not construct_json_exist:
356
+ logger.info("stack.json and construct.json not found")
357
+ return {}, {}
358
+ if not stack_json_exist or not construct_json_exist:
359
+ logger.error("stack.json or construct.json not found, please check.")
360
+ raise CompareException(CompareException.INVALID_PATH_ERROR)
361
+
351
362
  stack = load_json(stack_json)
352
- construct = load_json(construct_json)
363
+ construct, _ = load_construct_json(construct_json)
353
364
  return stack, construct
354
365
 
355
366
 
@@ -47,7 +47,6 @@ class DiffAnalyzer:
47
47
  analyze_func()
48
48
  if self._diff_nodes:
49
49
  self._gen_analyze_info()
50
- self._post_process()
51
50
  return
52
51
  logger.info('Cannot find any diff node, no need to generate analyze file.')
53
52
 
@@ -56,12 +55,6 @@ class DiffAnalyzer:
56
55
  self._resolve_input_path(self._output_path)
57
56
  logger.info("Pre Process completed.")
58
57
 
59
- def _post_process(self):
60
- for rank_path in self._paths.values():
61
- dump_path = rank_path.dump_path
62
- logger.debug(f"Remove {dump_path} success")
63
- logger.info("Post Process completed.")
64
-
65
58
  """
66
59
  这里需要生成stack,但是直接用dict中自带就行,在op_items.NPU_Stack_Info中
67
60
  """
@@ -105,6 +98,8 @@ class DiffAnalyzer:
105
98
  logger.warning(f'Rank {path.rank} has no dump data!')
106
99
  continue
107
100
  for op_name, op_data in dump_data.items():
101
+ if is_ignore_op(op_name):
102
+ continue
108
103
  if is_communication_op(op_name):
109
104
  self._first_comm_nodes[path.rank] = op_name
110
105
  break
@@ -131,10 +126,16 @@ class DiffAnalyzer:
131
126
  for rank, nodes in list(self._rank_comm_nodes_dict.items())[:-1]:
132
127
  searched_ranks.add(rank)
133
128
  seen_nodes = set()
129
+ last_node = None
134
130
  for cur_node in nodes.values():
131
+ is_overflow = last_node and hasattr(last_node, 'layer') and hasattr(cur_node, 'layer') and \
132
+ last_node.layer >= cur_node.layer
133
+ if is_overflow:
134
+ cur_node.layer = last_node.layer + 1
135
135
  conn_info = cur_node.find_connected_nodes()
136
136
  if not conn_info.get('ranks'):
137
137
  conn_info['ranks'] = self._rank_comm_nodes_dict.keys()
138
+ last_node = cur_node
138
139
  if not self._find_connection(conn_info, cur_node, searched_ranks, seen_nodes):
139
140
  logger.debug(f'Cannot find connected communication node for "{cur_node.node_id}".')
140
141