mindspore 2.7.0rc1__cp310-cp310-win_amd64.whl → 2.7.1__cp310-cp310-win_amd64.whl

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.

Potentially problematic release.


This version of mindspore might be problematic. Click here for more details.

Files changed (370) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +5 -2
  3. mindspore/_c_dataengine.cp310-win_amd64.pyd +0 -0
  4. mindspore/_c_expression.cp310-win_amd64.pyd +0 -0
  5. mindspore/_c_mindrecord.cp310-win_amd64.pyd +0 -0
  6. mindspore/_checkparam.py +2 -2
  7. mindspore/_extends/builtin_operations.py +3 -3
  8. mindspore/_extends/parallel_compile/akg_compiler/custom.py +1109 -0
  9. mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
  10. mindspore/_extends/parse/__init__.py +3 -3
  11. mindspore/_extends/parse/compile_config.py +24 -1
  12. mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +6 -3
  13. mindspore/_extends/parse/parser.py +28 -22
  14. mindspore/_extends/parse/resources.py +1 -1
  15. mindspore/_extends/parse/standard_method.py +23 -2
  16. mindspore/_extends/parse/trope.py +2 -1
  17. mindspore/_extends/pijit/pijit_func_white_list.py +9 -27
  18. mindspore/amp.py +0 -18
  19. mindspore/avcodec-59.dll +0 -0
  20. mindspore/avdevice-59.dll +0 -0
  21. mindspore/avfilter-8.dll +0 -0
  22. mindspore/avformat-59.dll +0 -0
  23. mindspore/avutil-57.dll +0 -0
  24. mindspore/boost/base.py +29 -2
  25. mindspore/common/__init__.py +18 -12
  26. mindspore/common/_decorator.py +3 -2
  27. mindspore/common/_grad_function.py +3 -1
  28. mindspore/common/_tensor_cpp_method.py +1 -1
  29. mindspore/common/_tensor_docs.py +371 -96
  30. mindspore/common/_utils.py +7 -43
  31. mindspore/common/api.py +434 -135
  32. mindspore/common/dtype.py +98 -57
  33. mindspore/common/dump.py +7 -108
  34. mindspore/common/dynamic_shape/__init__.py +0 -0
  35. mindspore/common/{auto_dynamic_shape.py → dynamic_shape/auto_dynamic_shape.py} +15 -23
  36. mindspore/common/dynamic_shape/enable_dynamic.py +197 -0
  37. mindspore/common/file_system.py +59 -9
  38. mindspore/common/hook_handle.py +82 -3
  39. mindspore/common/jit_config.py +5 -1
  40. mindspore/common/jit_trace.py +27 -12
  41. mindspore/common/lazy_inline.py +5 -3
  42. mindspore/common/np_dtype.py +3 -3
  43. mindspore/common/parameter.py +17 -127
  44. mindspore/common/recompute.py +4 -13
  45. mindspore/common/tensor.py +50 -217
  46. mindspore/communication/_comm_helper.py +11 -1
  47. mindspore/communication/comm_func.py +138 -4
  48. mindspore/communication/management.py +85 -1
  49. mindspore/config/op_info.config +0 -15
  50. mindspore/context.py +20 -106
  51. mindspore/dataset/__init__.py +1 -1
  52. mindspore/dataset/audio/transforms.py +1 -1
  53. mindspore/dataset/core/config.py +35 -1
  54. mindspore/dataset/engine/datasets.py +338 -319
  55. mindspore/dataset/engine/datasets_user_defined.py +38 -22
  56. mindspore/dataset/engine/datasets_vision.py +1 -1
  57. mindspore/dataset/engine/validators.py +1 -15
  58. mindspore/dataset/transforms/c_transforms.py +2 -2
  59. mindspore/dataset/transforms/transforms.py +3 -3
  60. mindspore/dataset/vision/__init__.py +1 -1
  61. mindspore/dataset/vision/py_transforms.py +8 -8
  62. mindspore/dataset/vision/transforms.py +17 -5
  63. mindspore/dataset/vision/utils.py +632 -21
  64. mindspore/device_context/ascend/op_tuning.py +35 -1
  65. mindspore/dnnl.dll +0 -0
  66. mindspore/{profiler/common/validator → graph}/__init__.py +9 -1
  67. mindspore/graph/custom_pass.py +55 -0
  68. mindspore/include/api/cell.h +28 -4
  69. mindspore/include/api/cfg.h +24 -7
  70. mindspore/include/api/context.h +1 -0
  71. mindspore/include/api/delegate.h +0 -2
  72. mindspore/include/api/dual_abi_helper.h +100 -19
  73. mindspore/include/api/graph.h +14 -1
  74. mindspore/include/api/kernel.h +16 -3
  75. mindspore/include/api/kernel_api.h +9 -1
  76. mindspore/include/api/metrics/accuracy.h +9 -0
  77. mindspore/include/api/model.h +5 -1
  78. mindspore/include/api/model_group.h +4 -0
  79. mindspore/include/api/model_parallel_runner.h +2 -0
  80. mindspore/include/api/status.h +48 -10
  81. mindspore/include/api/types.h +6 -1
  82. mindspore/include/dataset/constants.h +9 -0
  83. mindspore/include/dataset/execute.h +2 -2
  84. mindspore/jpeg62.dll +0 -0
  85. mindspore/mindrecord/__init__.py +3 -3
  86. mindspore/mindrecord/common/exceptions.py +1 -0
  87. mindspore/mindrecord/config.py +1 -1
  88. mindspore/{parallel/mpi → mindrecord/core}/__init__.py +4 -1
  89. mindspore/mindrecord/{shardheader.py → core/shardheader.py} +2 -1
  90. mindspore/mindrecord/{shardindexgenerator.py → core/shardindexgenerator.py} +1 -1
  91. mindspore/mindrecord/{shardreader.py → core/shardreader.py} +2 -1
  92. mindspore/mindrecord/{shardsegment.py → core/shardsegment.py} +2 -2
  93. mindspore/mindrecord/{shardutils.py → core/shardutils.py} +1 -1
  94. mindspore/mindrecord/{shardwriter.py → core/shardwriter.py} +1 -1
  95. mindspore/mindrecord/filereader.py +4 -4
  96. mindspore/mindrecord/filewriter.py +5 -5
  97. mindspore/mindrecord/mindpage.py +2 -2
  98. mindspore/mindrecord/tools/cifar10.py +4 -3
  99. mindspore/mindrecord/tools/cifar100.py +1 -1
  100. mindspore/mindrecord/tools/cifar100_to_mr.py +1 -1
  101. mindspore/mindrecord/tools/cifar10_to_mr.py +6 -6
  102. mindspore/mindrecord/tools/csv_to_mr.py +1 -1
  103. mindspore/mindrecord/tools/imagenet_to_mr.py +1 -1
  104. mindspore/mindrecord/tools/mnist_to_mr.py +1 -1
  105. mindspore/mindrecord/tools/tfrecord_to_mr.py +1 -1
  106. mindspore/mindspore_backend_common.dll +0 -0
  107. mindspore/mindspore_backend_manager.dll +0 -0
  108. mindspore/mindspore_cluster.dll +0 -0
  109. mindspore/mindspore_common.dll +0 -0
  110. mindspore/mindspore_core.dll +0 -0
  111. mindspore/mindspore_cpu.dll +0 -0
  112. mindspore/mindspore_dump.dll +0 -0
  113. mindspore/mindspore_frontend.dll +0 -0
  114. mindspore/mindspore_glog.dll +0 -0
  115. mindspore/mindspore_hardware_abstract.dll +0 -0
  116. mindspore/mindspore_memory_pool.dll +0 -0
  117. mindspore/mindspore_ms_backend.dll +0 -0
  118. mindspore/mindspore_ops.dll +0 -0
  119. mindspore/{mindspore_ops_host.dll → mindspore_ops_cpu.dll} +0 -0
  120. mindspore/mindspore_profiler.dll +0 -0
  121. mindspore/mindspore_pyboost.dll +0 -0
  122. mindspore/mindspore_pynative.dll +0 -0
  123. mindspore/mindspore_runtime_pipeline.dll +0 -0
  124. mindspore/mindspore_runtime_utils.dll +0 -0
  125. mindspore/mindspore_tools.dll +0 -0
  126. mindspore/mint/__init__.py +15 -10
  127. mindspore/mint/distributed/__init__.py +4 -0
  128. mindspore/mint/distributed/distributed.py +392 -69
  129. mindspore/mint/nn/__init__.py +2 -16
  130. mindspore/mint/nn/functional.py +4 -110
  131. mindspore/mint/nn/layer/__init__.py +0 -2
  132. mindspore/mint/nn/layer/_functions.py +1 -2
  133. mindspore/mint/nn/layer/activation.py +0 -6
  134. mindspore/mint/nn/layer/basic.py +0 -47
  135. mindspore/mint/nn/layer/conv.py +10 -10
  136. mindspore/mint/nn/layer/normalization.py +11 -16
  137. mindspore/mint/nn/layer/pooling.py +0 -4
  138. mindspore/nn/__init__.py +1 -3
  139. mindspore/nn/cell.py +231 -239
  140. mindspore/nn/layer/activation.py +4 -2
  141. mindspore/nn/layer/basic.py +56 -14
  142. mindspore/nn/layer/container.py +16 -0
  143. mindspore/nn/layer/embedding.py +4 -169
  144. mindspore/nn/layer/image.py +1 -1
  145. mindspore/nn/layer/normalization.py +2 -1
  146. mindspore/nn/layer/thor_layer.py +4 -85
  147. mindspore/nn/optim/ada_grad.py +0 -1
  148. mindspore/nn/optim/adafactor.py +0 -1
  149. mindspore/nn/optim/adam.py +32 -127
  150. mindspore/nn/optim/adamax.py +0 -1
  151. mindspore/nn/optim/asgd.py +0 -1
  152. mindspore/nn/optim/ftrl.py +8 -102
  153. mindspore/nn/optim/lamb.py +1 -4
  154. mindspore/nn/optim/lars.py +0 -3
  155. mindspore/nn/optim/lazyadam.py +25 -218
  156. mindspore/nn/optim/momentum.py +5 -43
  157. mindspore/nn/optim/optimizer.py +6 -55
  158. mindspore/nn/optim/proximal_ada_grad.py +0 -1
  159. mindspore/nn/optim/rmsprop.py +0 -1
  160. mindspore/nn/optim/rprop.py +0 -1
  161. mindspore/nn/optim/sgd.py +0 -1
  162. mindspore/nn/optim/tft_wrapper.py +2 -4
  163. mindspore/nn/optim/thor.py +0 -2
  164. mindspore/nn/probability/bijector/bijector.py +7 -8
  165. mindspore/nn/probability/bijector/gumbel_cdf.py +2 -2
  166. mindspore/nn/probability/bijector/power_transform.py +20 -21
  167. mindspore/nn/probability/bijector/scalar_affine.py +5 -5
  168. mindspore/nn/probability/bijector/softplus.py +13 -14
  169. mindspore/nn/probability/distribution/_utils/utils.py +2 -2
  170. mindspore/nn/wrap/cell_wrapper.py +39 -5
  171. mindspore/nn/wrap/grad_reducer.py +4 -89
  172. mindspore/numpy/array_creations.py +4 -4
  173. mindspore/numpy/fft.py +9 -9
  174. mindspore/numpy/utils_const.py +1 -1
  175. mindspore/{nn/reinforcement → onnx}/__init__.py +5 -8
  176. mindspore/onnx/onnx_export.py +137 -0
  177. mindspore/opencv_core4110.dll +0 -0
  178. mindspore/opencv_imgcodecs4110.dll +0 -0
  179. mindspore/{opencv_imgproc452.dll → opencv_imgproc4110.dll} +0 -0
  180. mindspore/ops/__init__.py +2 -0
  181. mindspore/ops/_grad_experimental/grad_comm_ops.py +38 -2
  182. mindspore/ops/_grad_experimental/grad_inner_ops.py +0 -9
  183. mindspore/ops/_op_impl/aicpu/__init__.py +0 -10
  184. mindspore/ops/_op_impl/cpu/__init__.py +1 -5
  185. mindspore/ops/_op_impl/cpu/{buffer_append.py → joinedstr_op.py} +8 -8
  186. mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +28 -24
  187. mindspore/ops/auto_generate/gen_extend_func.py +6 -11
  188. mindspore/ops/auto_generate/gen_ops_def.py +385 -154
  189. mindspore/ops/auto_generate/gen_ops_prim.py +5676 -5167
  190. mindspore/ops/communication.py +97 -0
  191. mindspore/ops/composite/__init__.py +5 -2
  192. mindspore/ops/composite/base.py +16 -2
  193. mindspore/ops/composite/multitype_ops/__init__.py +3 -1
  194. mindspore/ops/composite/multitype_ops/_compile_utils.py +150 -8
  195. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -1
  196. mindspore/ops/composite/multitype_ops/add_impl.py +7 -0
  197. mindspore/ops/composite/multitype_ops/mod_impl.py +27 -0
  198. mindspore/ops/function/__init__.py +2 -0
  199. mindspore/ops/function/array_func.py +24 -18
  200. mindspore/ops/function/comm_func.py +3883 -0
  201. mindspore/ops/function/debug_func.py +7 -6
  202. mindspore/ops/function/grad/grad_func.py +4 -12
  203. mindspore/ops/function/math_func.py +89 -86
  204. mindspore/ops/function/nn_func.py +92 -313
  205. mindspore/ops/function/random_func.py +9 -18
  206. mindspore/ops/functional.py +4 -1
  207. mindspore/ops/functional_overload.py +377 -30
  208. mindspore/ops/operations/__init__.py +2 -5
  209. mindspore/ops/operations/_custom_ops_utils.py +7 -9
  210. mindspore/ops/operations/_inner_ops.py +12 -50
  211. mindspore/ops/operations/_rl_inner_ops.py +0 -933
  212. mindspore/ops/operations/array_ops.py +5 -50
  213. mindspore/ops/operations/comm_ops.py +95 -17
  214. mindspore/ops/operations/custom_ops.py +237 -22
  215. mindspore/ops/operations/debug_ops.py +33 -35
  216. mindspore/ops/operations/manually_defined/ops_def.py +39 -318
  217. mindspore/ops/operations/math_ops.py +5 -5
  218. mindspore/ops/operations/nn_ops.py +3 -3
  219. mindspore/ops/operations/sparse_ops.py +0 -83
  220. mindspore/ops/primitive.py +4 -27
  221. mindspore/ops/tensor_method.py +88 -10
  222. mindspore/ops_generate/aclnn/aclnn_kernel_register_auto_cc_generator.py +5 -5
  223. mindspore/ops_generate/aclnn/gen_aclnn_implement.py +8 -8
  224. mindspore/ops_generate/api/functions_cc_generator.py +53 -4
  225. mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +25 -11
  226. mindspore/ops_generate/common/gen_constants.py +11 -10
  227. mindspore/ops_generate/common/op_proto.py +18 -1
  228. mindspore/ops_generate/common/template.py +102 -245
  229. mindspore/ops_generate/common/template_utils.py +212 -0
  230. mindspore/ops_generate/gen_custom_ops.py +69 -0
  231. mindspore/ops_generate/op_def/ops_def_cc_generator.py +78 -7
  232. mindspore/ops_generate/op_def_py/base_op_prim_py_generator.py +360 -0
  233. mindspore/ops_generate/op_def_py/custom_op_prim_py_generator.py +140 -0
  234. mindspore/ops_generate/op_def_py/op_def_py_generator.py +54 -7
  235. mindspore/ops_generate/op_def_py/op_prim_py_generator.py +5 -312
  236. mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +74 -17
  237. mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +22 -5
  238. mindspore/ops_generate/pyboost/gen_pyboost_func.py +0 -16
  239. mindspore/ops_generate/pyboost/op_template_parser.py +3 -2
  240. mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +21 -5
  241. mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +2 -2
  242. mindspore/ops_generate/pyboost/pyboost_functions_impl_cpp_generator.py +30 -10
  243. mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +10 -3
  244. mindspore/ops_generate/pyboost/pyboost_internal_kernel_info_adapter_generator.py +1 -1
  245. mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +19 -9
  246. mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +71 -28
  247. mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +10 -9
  248. mindspore/ops_generate/pyboost/pyboost_utils.py +27 -16
  249. mindspore/ops_generate/resources/yaml_loader.py +13 -0
  250. mindspore/ops_generate/tensor_py_cc_generator.py +2 -2
  251. mindspore/parallel/_auto_parallel_context.py +5 -15
  252. mindspore/parallel/_cell_wrapper.py +1 -1
  253. mindspore/parallel/_parallel_serialization.py +4 -6
  254. mindspore/parallel/_ps_context.py +2 -2
  255. mindspore/parallel/_utils.py +34 -17
  256. mindspore/parallel/auto_parallel.py +23 -9
  257. mindspore/parallel/checkpoint_transform.py +20 -2
  258. mindspore/parallel/cluster/process_entity/_api.py +28 -33
  259. mindspore/parallel/cluster/process_entity/_utils.py +9 -5
  260. mindspore/parallel/cluster/run.py +5 -3
  261. mindspore/{experimental/llm_boost/ascend_native → parallel/distributed}/__init__.py +21 -22
  262. mindspore/parallel/distributed/distributed_data_parallel.py +393 -0
  263. mindspore/parallel/distributed/flatten_grad_buffer.py +295 -0
  264. mindspore/parallel/function/reshard_func.py +6 -5
  265. mindspore/parallel/nn/parallel_cell_wrapper.py +40 -3
  266. mindspore/parallel/nn/parallel_grad_reducer.py +0 -8
  267. mindspore/parallel/shard.py +7 -21
  268. mindspore/parallel/strategy.py +336 -0
  269. mindspore/parallel/transform_safetensors.py +127 -20
  270. mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +13 -9
  271. mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +1 -1
  272. mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +1 -1
  273. mindspore/profiler/common/constant.py +5 -0
  274. mindspore/profiler/common/file_manager.py +9 -0
  275. mindspore/profiler/common/msprof_cmd_tool.py +40 -4
  276. mindspore/profiler/common/path_manager.py +65 -24
  277. mindspore/profiler/common/profiler_context.py +27 -14
  278. mindspore/profiler/common/profiler_info.py +3 -3
  279. mindspore/profiler/common/profiler_meta_data.py +1 -0
  280. mindspore/profiler/common/profiler_op_analyse.py +10 -6
  281. mindspore/profiler/common/profiler_path_manager.py +13 -0
  282. mindspore/profiler/common/util.py +30 -3
  283. mindspore/profiler/dynamic_profiler.py +91 -46
  284. mindspore/profiler/envprofiler.py +30 -5
  285. mindspore/profiler/experimental_config.py +18 -2
  286. mindspore/profiler/platform/cpu_profiler.py +10 -4
  287. mindspore/profiler/platform/npu_profiler.py +34 -7
  288. mindspore/profiler/profiler.py +193 -145
  289. mindspore/profiler/profiler_action_controller.py +1 -1
  290. mindspore/profiler/profiler_interface.py +2 -2
  291. mindspore/rewrite/symbol_tree/symbol_tree.py +1 -1
  292. mindspore/run_check/_check_version.py +108 -24
  293. mindspore/runtime/__init__.py +9 -6
  294. mindspore/runtime/executor.py +35 -0
  295. mindspore/runtime/memory.py +113 -0
  296. mindspore/runtime/thread_bind_core.py +1 -1
  297. mindspore/swresample-4.dll +0 -0
  298. mindspore/swscale-6.dll +0 -0
  299. mindspore/tinyxml2.dll +0 -0
  300. mindspore/{experimental/llm_boost → tools}/__init__.py +5 -5
  301. mindspore/tools/data_dump.py +130 -0
  302. mindspore/tools/sdc_detect.py +91 -0
  303. mindspore/tools/stress_detect.py +63 -0
  304. mindspore/train/__init__.py +6 -6
  305. mindspore/train/_utils.py +8 -21
  306. mindspore/train/amp.py +6 -7
  307. mindspore/train/callback/_callback.py +2 -1
  308. mindspore/train/callback/_checkpoint.py +1 -17
  309. mindspore/train/callback/_flops_collector.py +10 -6
  310. mindspore/train/callback/_train_fault_tolerance.py +72 -25
  311. mindspore/train/data_sink.py +5 -9
  312. mindspore/train/dataset_helper.py +5 -5
  313. mindspore/train/model.py +41 -230
  314. mindspore/train/serialization.py +160 -401
  315. mindspore/train/train_thor/model_thor.py +2 -2
  316. mindspore/turbojpeg.dll +0 -0
  317. mindspore/utils/__init__.py +6 -3
  318. mindspore/utils/dlpack.py +92 -0
  319. mindspore/utils/dryrun.py +1 -1
  320. mindspore/utils/runtime_execution_order_check.py +10 -0
  321. mindspore/utils/sdc_detect.py +14 -12
  322. mindspore/utils/stress_detect.py +43 -0
  323. mindspore/utils/utils.py +152 -16
  324. mindspore/version.py +1 -1
  325. {mindspore-2.7.0rc1.dist-info → mindspore-2.7.1.dist-info}/METADATA +3 -2
  326. {mindspore-2.7.0rc1.dist-info → mindspore-2.7.1.dist-info}/RECORD +330 -344
  327. mindspore/_extends/remote/kernel_build_server_ascend.py +0 -75
  328. mindspore/communication/_hccl_management.py +0 -297
  329. mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +0 -207
  330. mindspore/experimental/llm_boost/ascend_native/llm_boost.py +0 -52
  331. mindspore/experimental/llm_boost/atb/__init__.py +0 -23
  332. mindspore/experimental/llm_boost/atb/boost_base.py +0 -385
  333. mindspore/experimental/llm_boost/atb/llama_boost.py +0 -137
  334. mindspore/experimental/llm_boost/atb/qwen_boost.py +0 -124
  335. mindspore/experimental/llm_boost/register.py +0 -130
  336. mindspore/experimental/llm_boost/utils.py +0 -31
  337. mindspore/include/OWNERS +0 -7
  338. mindspore/mindspore_cpu_res_manager.dll +0 -0
  339. mindspore/mindspore_ops_kernel_common.dll +0 -0
  340. mindspore/mindspore_res_manager.dll +0 -0
  341. mindspore/nn/optim/_dist_optimizer_registry.py +0 -111
  342. mindspore/nn/reinforcement/_batch_read_write.py +0 -142
  343. mindspore/nn/reinforcement/_tensors_queue.py +0 -152
  344. mindspore/nn/reinforcement/tensor_array.py +0 -145
  345. mindspore/opencv_core452.dll +0 -0
  346. mindspore/opencv_imgcodecs452.dll +0 -0
  347. mindspore/ops/_op_impl/aicpu/priority_replay_buffer.py +0 -113
  348. mindspore/ops/_op_impl/aicpu/reservoir_replay_buffer.py +0 -96
  349. mindspore/ops/_op_impl/aicpu/sparse_cross.py +0 -42
  350. mindspore/ops/_op_impl/cpu/buffer_get.py +0 -28
  351. mindspore/ops/_op_impl/cpu/buffer_sample.py +0 -28
  352. mindspore/ops/_op_impl/cpu/priority_replay_buffer.py +0 -42
  353. mindspore/ops/operations/_tensor_array.py +0 -359
  354. mindspore/ops/operations/rl_ops.py +0 -288
  355. mindspore/parallel/_offload_context.py +0 -275
  356. mindspore/parallel/_recovery_context.py +0 -115
  357. mindspore/parallel/_transformer/__init__.py +0 -35
  358. mindspore/parallel/_transformer/layers.py +0 -765
  359. mindspore/parallel/_transformer/loss.py +0 -251
  360. mindspore/parallel/_transformer/moe.py +0 -693
  361. mindspore/parallel/_transformer/op_parallel_config.py +0 -222
  362. mindspore/parallel/_transformer/transformer.py +0 -3124
  363. mindspore/parallel/mpi/_mpi_config.py +0 -116
  364. mindspore/profiler/common/validator/validate_path.py +0 -84
  365. mindspore/train/memory_profiling_pb2.py +0 -298
  366. mindspore/utils/hooks.py +0 -81
  367. /mindspore/common/{_auto_dynamic.py → dynamic_shape/_auto_dynamic.py} +0 -0
  368. {mindspore-2.7.0rc1.dist-info → mindspore-2.7.1.dist-info}/WHEEL +0 -0
  369. {mindspore-2.7.0rc1.dist-info → mindspore-2.7.1.dist-info}/entry_points.txt +0 -0
  370. {mindspore-2.7.0rc1.dist-info → mindspore-2.7.1.dist-info}/top_level.txt +0 -0
@@ -16,18 +16,18 @@
16
16
  import os
17
17
  import json
18
18
  import warnings
19
- from typing import Optional, Dict, Callable, Any
19
+ from typing import Optional, Dict, Callable, Any, Iterable
20
20
  from sys import getsizeof
21
21
  from concurrent.futures import ProcessPoolExecutor, as_completed
22
22
 
23
23
  from mindspore import log as logger
24
- from mindspore.profiler.common.constant import ProfilerStepNameConstant, DeviceTarget
24
+ from mindspore.profiler.common.constant import ProfilerStepNameConstant, DeviceTarget, ProfilerActivity
25
25
  from mindspore.profiler.common.profiler_context import ProfilerContext
26
26
  from mindspore.profiler.platform.npu_profiler import NPUProfilerAnalysis
27
27
  from mindspore.profiler.profiler_action_controller import ProfilerActionController
28
28
  from mindspore.profiler.experimental_config import _ExperimentalConfig
29
29
  from mindspore.profiler.profiler_interface import ProfilerInterface
30
- from mindspore.profiler.schedule import _default_schedule_fn, ProfilerAction, Schedule
30
+ from mindspore.profiler.schedule import _default_schedule_fn, ProfilerAction
31
31
  from mindspore.profiler.common.record_function import RecordFunction
32
32
  from mindspore.profiler.common.path_manager import PathManager
33
33
  from mindspore.profiler.common.profiler_path_manager import ProfilerPathManager
@@ -111,9 +111,9 @@ def tensorboard_trace_handler(dir_name: str = None, worker_name: str = None,
111
111
  logger.warning("async_mode is not bool, set by default.")
112
112
  async_mode = False
113
113
 
114
- def handler_fn() -> None:
114
+ def handler_fn(prof_inst) -> None:
115
115
  if analyse_flag:
116
- NPUProfilerAnalysis.online_analyse(async_mode=async_mode)
116
+ prof_inst.analyse(async_mode=async_mode)
117
117
 
118
118
  return handler_fn
119
119
 
@@ -261,9 +261,10 @@ class Profiler:
261
261
  ... # Profiler end
262
262
  ... profiler.analyse()
263
263
  """
264
- MAX_META_SIZE = 100 * 1024 * 1024 # 100MB
265
264
 
266
265
  def __init__(self, **kwargs) -> None:
266
+ logger.warning("'mindspore.Profiler' will be deprecated and removed in a future version. Please use the api "
267
+ "'mindspore.profiler.profile' instead.")
267
268
  self._metadata: Dict[str, str] = {}
268
269
  self._prof_context: ProfilerContext = ProfilerContext()
269
270
  self._prof_context.set_params(**kwargs)
@@ -564,7 +565,7 @@ class Profiler:
564
565
  return
565
566
 
566
567
  add_size = getsizeof(key) + getsizeof(value)
567
- if getsizeof(self._metadata) + add_size < self.MAX_META_SIZE:
568
+ if getsizeof(self._metadata) + add_size < ProfilerMetaData.MAX_META_SIZE:
568
569
  if key in self._metadata:
569
570
  logger.warning(f"{key} is already saved as metadata, override it.")
570
571
  self._metadata[key] = value
@@ -595,7 +596,7 @@ class Profiler:
595
596
  return
596
597
 
597
598
  add_size = getsizeof(key) + getsizeof(value)
598
- if getsizeof(self._metadata) + add_size < self.MAX_META_SIZE:
599
+ if getsizeof(self._metadata) + add_size < ProfilerMetaData.MAX_META_SIZE:
599
600
  try:
600
601
  if key in self._metadata:
601
602
  logger.warning(f"{key} is already saved as metadata, override it.")
@@ -696,38 +697,32 @@ class Profile:
696
697
  correspondence, cluster, etc data analysis.
697
698
 
698
699
  Args:
699
- start_profile (bool, optional): The start_profile parameter controls whether to enable or disable performance
700
- data collection based on conditions. Default: ``True`` .
701
- activities (list, optional): The activities to collect.
700
+ activities (Iterable, optional): The activities to collect.
702
701
  Default: ``[ProfilerActivity.CPU, ProfilerActivity.NPU]``.
703
702
 
704
703
  - ProfilerActivity.CPU: Collect MindSpore framework data.
705
704
  - ProfilerActivity.NPU: Collect CANN software stack and NPU data.
706
705
  - ProfilerActivity.GPU: Collect GPU data.
707
- schedule (schedule, optional): Sets the action strategy for the capture, defined by the schedule class,
708
- to be used with the step interface. Default: ``None``. Performance data of all steps is collected.
709
- For details, see :class:`mindspore.profiler.schedule` .
710
- on_trace_ready (Callable, optional): Sets the callback function to be executed when the performance data
711
- is collected. Default: ``None``. It indicates that only performance data is collected, but not resolved.
712
- For details, see :func:`mindspore.profiler.tensorboard_trace_handler` .
706
+ with_stack (bool, optional): (Ascend only) Whether to collect frame host call stack data
707
+ on the Python side. This
708
+ data is presented in the form of a flame graph in the timeline. When using this parameter, `activities` must
709
+ include ``ProfilerActivity.CPU``. Default value: ``False`` .
713
710
  profile_memory (bool, optional): (Ascend only) Whether to collect tensor memory data, collect when ``True`` .
714
711
  When using this parameter, `activities` must set to ``[ProfilerActivity.CPU, ProfilerActivity.NPU]``.
715
712
  Collecting operator memory data when GE backend requires collecting from the first step.
716
713
  Default: ``False`` . The operator name currently collected by this parameter is incomplete.
717
714
  This issue will be resolved in later versions. It is recommended to use the environment variable
718
715
  ``MS_ALLOC_CONF`` instead.
719
- with_stack (bool, optional): (Ascend only) Whether to collect frame host call stack data
720
- on the Python side. This
721
- data is presented in the form of a flame graph in the timeline. When using this parameter, `activities` must
722
- include ``ProfilerActivity.CPU``. Default value: ``False`` .
723
- hbm_ddr (bool, optional): (Ascend only) Whether to collect On-Chip Memory/DDR read and write rate data,
724
- collect when True. Default: ``False`` .
725
- pcie (bool, optional): (Ascend only) Whether to collect PCIe bandwidth data, collect when True.
726
- Default: ``False`` .
727
716
  data_process (bool, optional): (Ascend/GPU) Whether to collect data to prepare performance data.
728
717
  Default value: ``False`` .
729
718
  parallel_strategy (bool, optional): (Ascend only) Whether to collect parallel policy performance data.
730
719
  Default value: ``False`` .
720
+ start_profile (bool, optional): The start_profile parameter controls whether to enable or disable performance
721
+ data collection based on conditions. Default: ``True`` .
722
+ hbm_ddr (bool, optional): (Ascend only) Whether to collect On-Chip Memory/DDR read and write rate data,
723
+ collect when True. Default: ``False`` .
724
+ pcie (bool, optional): (Ascend only) Whether to collect PCIe bandwidth data, collect when True.
725
+ Default: ``False`` .
731
726
  sync_enable (bool, optional): (GPU only) Whether the profiler collects operators in a synchronous way.
732
727
  Default: ``True`` .
733
728
 
@@ -739,6 +734,12 @@ class Profile:
739
734
  record_shapes (bool, optional): (Ascend only) Whether to collect operator input tensor shapes data, collect
740
735
  when ``True`` . When using this parameter, `activities` must include ``ProfilerActivity.CPU``.
741
736
  Default: ``False``.
737
+ schedule (Callable, optional): Sets the action strategy for the capture, defined by the schedule class,
738
+ to be used with the step interface. Default: ``None``. Performance data of all steps is collected.
739
+ For details, see :class:`mindspore.profiler.schedule` .
740
+ on_trace_ready (Callable, optional): Sets the callback function to be executed when the performance data
741
+ is collected. Default: ``None``. It indicates that only performance data is collected, but not resolved.
742
+ For details, see :func:`mindspore.profiler.tensorboard_trace_handler` .
742
743
  experimental_config (_ExperimentalConfig, optional): expandable parameters can be configured in this
743
744
  configuration item. For details, see :class:`mindspore.profiler._ExperimentalConfig` .
744
745
  Raises:
@@ -803,70 +804,54 @@ class Profile:
803
804
  ... prof.step()
804
805
  """
805
806
 
806
- def __init__(
807
- self,
808
- activities: list = None,
809
- with_stack: bool = False,
810
- profile_memory: bool = False,
811
- data_process: bool = False,
812
- parallel_strategy: bool = False,
813
- start_profile: bool = True,
814
- hbm_ddr: bool = False,
815
- pcie: bool = False,
816
- sync_enable: bool = True,
817
- record_shapes: bool = False,
818
- schedule: Schedule = None,
819
- on_trace_ready: Optional[Callable[..., Any]] = None,
820
- experimental_config: Optional[_ExperimentalConfig] = None,
821
- ):
822
- self._activities = activities
823
- self._with_stack = with_stack
824
- self._profile_memory = profile_memory
825
- self._data_process = data_process
826
- self._parallel_strategy = parallel_strategy
827
- self._start_profile = start_profile
828
- self._hbm_ddr = hbm_ddr
829
- self._pcie = pcie
830
- self._sync_enable = sync_enable
831
- self._record_shapes = record_shapes
832
- self._schedule = schedule
833
- self._on_trace_ready = on_trace_ready
834
- self._experimental_config = experimental_config or _ExperimentalConfig()
835
- self._profiler = Profiler(
836
- profiler_level=self._experimental_config.profiler_level,
837
- activities=self._activities,
838
- aic_metrics=self._experimental_config.aic_metrics,
839
- with_stack=self._with_stack,
840
- profile_memory=self._profile_memory,
841
- data_process=self._data_process,
842
- parallel_strategy=self._parallel_strategy,
843
- start_profile=self._start_profile,
844
- l2_cache=self._experimental_config.l2_cache,
845
- hbm_ddr=self._hbm_ddr,
846
- pcie=self._pcie,
847
- sync_enable=self._sync_enable,
848
- record_shapes=self._record_shapes,
849
- data_simplification=self._experimental_config.data_simplification,
850
- mstx=self._experimental_config.mstx,
851
- mstx_domain_include=self._experimental_config.mstx_domain_include,
852
- mstx_domain_exclude=self._experimental_config.mstx_domain_exclude,
853
- export_type=self._experimental_config.export_type,
854
- sys_io=self._experimental_config.sys_io,
855
- sys_interconnection=self._experimental_config.sys_interconnection,
856
- host_sys=self._experimental_config.host_sys,
857
- schedule=self._schedule,
858
- on_trace_ready=self._on_trace_ready,
859
- )
860
-
861
- def __enter__(self) -> 'Profile':
862
- self._profiler.__enter__()
863
- return self
864
-
865
- def __exit__(self, exe_type, exe_val, exc_tb):
866
- self._profiler.__exit__(exe_type, exe_val, exc_tb)
867
-
868
- def __del__(self):
869
- self._profiler.__del__()
807
+ def __init__(self,
808
+ activities: Optional[Iterable[ProfilerActivity]] = None,
809
+ with_stack: bool = False,
810
+ profile_memory: bool = False,
811
+ data_process: bool = False,
812
+ parallel_strategy: bool = False,
813
+ start_profile: bool = True,
814
+ hbm_ddr: bool = False,
815
+ pcie: bool = False,
816
+ sync_enable: bool = True,
817
+ record_shapes: bool = False,
818
+ schedule: Optional[Callable[[int], ProfilerAction]] = None,
819
+ on_trace_ready: Optional[Callable[..., Any]] = None,
820
+ experimental_config: Optional[_ExperimentalConfig] = None):
821
+ self._metadata: Dict[str, str] = {}
822
+ self._prof_context: ProfilerContext = ProfilerContext()
823
+ kwargs = {
824
+ "activities": activities,
825
+ "with_stack": with_stack,
826
+ "profile_memory": profile_memory,
827
+ "data_process": data_process,
828
+ "parallel_strategy": parallel_strategy,
829
+ "start_profile": start_profile,
830
+ "hbm_ddr": hbm_ddr,
831
+ "pcie": pcie,
832
+ "sync_enable": sync_enable,
833
+ "record_shapes": record_shapes,
834
+ "schedule": schedule,
835
+ "on_trace_ready": on_trace_ready,
836
+ "experimental_config": experimental_config,
837
+ }
838
+ self._prof_context.set_params(**kwargs)
839
+ self._has_started: bool = False
840
+ if schedule and isinstance(schedule, Callable):
841
+ self.schedule = schedule
842
+ # add step markers into the trace and table view
843
+ self.record_steps = True
844
+ else:
845
+ if schedule:
846
+ logger.warning("schedule is not Callable, set by default.")
847
+ self.schedule = _default_schedule_fn
848
+ self.record_steps = False
849
+ self._step_rec_fn: Optional[RecordFunction] = None
850
+ self.step_num = 0
851
+ self.current_action: ProfilerAction = self.schedule(self.step_num)
852
+ self.action_controller = ProfilerActionController(ProfilerInterface, self._prof_context.on_trace_ready)
853
+ if self._prof_context.start_profile:
854
+ self.start()
870
855
 
871
856
  def start(self) -> None:
872
857
  """
@@ -931,7 +916,14 @@ class Profile:
931
916
  ... prof.step()
932
917
  ... prof.stop()
933
918
  """
934
- self._profiler.start()
919
+ if self._has_started:
920
+ logger.warning("The profile has already started. Do not turn on again in the open state.")
921
+ return
922
+ self._has_started = True
923
+ self.action_controller.transit_action(ProfilerAction.NONE, self.current_action)
924
+ if self.record_steps:
925
+ self._step_rec_fn = RecordFunction(ProfilerStepNameConstant.PROFILER_STEP + str(self.step_num))
926
+ self._step_rec_fn.start()
935
927
 
936
928
  def stop(self) -> None:
937
929
  """
@@ -995,7 +987,13 @@ class Profile:
995
987
  ... prof.step()
996
988
  ... prof.stop()
997
989
  """
998
- self._profiler.stop()
990
+ if not self._has_started:
991
+ logger.error("The profile has not started. Do not turn off again in the closed state.")
992
+ return
993
+ self._has_started = False
994
+ if self.record_steps and self._step_rec_fn:
995
+ self._step_rec_fn.stop()
996
+ self.action_controller.transit_action(self.current_action, None)
999
997
 
1000
998
  def step(self) -> None:
1001
999
  """
@@ -1006,59 +1004,71 @@ class Profile:
1006
1004
  RuntimeError: If the `schedule` parameter is not set.
1007
1005
 
1008
1006
  Examples:
1009
- >>> import numpy as np
1010
- >>> import mindspore
1011
- >>> from mindspore import nn, context
1012
- >>> import mindspore.dataset as ds
1013
- >>> from mindspore.profiler import ProfilerLevel, ProfilerActivity, AicoreMetrics, ExportType
1014
- >>>
1015
- >>> class Net(nn.Cell):
1016
- ... def __init__(self):
1017
- ... super(Net, self).__init__()
1018
- ... self.fc = nn.Dense(2,2)
1019
- ... def construct(self, x):
1020
- ... return self.fc(x)
1021
- >>>
1022
- >>> def generator():
1023
- ... for i in range(2):
1024
- ... yield np.ones([2, 2]).astype(np.float32), np.ones([2]).astype(np.int32)
1025
- >>>
1026
- >>> def train(net):
1027
- ... optimizer = nn.Momentum(net.trainable_params(), 1, 0.9)
1028
- ... loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True)
1029
- ... data = ds.GeneratorDataset(generator, ["data", "label"])
1030
- ... model = mindspore.train.Model(net, loss, optimizer)
1031
- ... model.train(1, data)
1032
- >>>
1033
- >>> if __name__ == '__main__':
1034
- ... # If the device_target is GPU, set the device_target to "GPU"
1035
- ... context.set_context(mode=mindspore.GRAPH_MODE)
1036
- ... mindspore.set_device("Ascend")
1037
- ...
1038
- ... # Init Profiler
1039
- ... experimental_config = mindspore.profiler._ExperimentalConfig(
1040
- ... profiler_level=ProfilerLevel.Level0,
1041
- ... aic_metrics=AicoreMetrics.AiCoreNone,
1042
- ... l2_cache=False,
1043
- ... mstx=False,
1044
- ... data_simplification=False,
1045
- ... export_type=[ExportType.Text])
1046
- ... steps = 10
1047
- ... net = Net()
1048
- ... # Note that the Profiler should be initialized before model.train
1049
- ... with mindspore.profiler.profile(activities=[ProfilerActivity.CPU, ProfilerActivity.NPU],
1050
- ... schedule=mindspore.profiler.schedule(wait=0, warmup=0, active=1,
1051
- ... repeat=1, skip_first=0),
1052
- ... on_trace_ready=mindspore.profiler.tensorboard_trace_handler("./data"),
1053
- ... profile_memory=False,
1054
- ... experimental_config=experimental_config) as prof:
1055
- ...
1056
- ... # Train Model
1057
- ... for step in range(steps):
1058
- ... train(net)
1059
- ... prof.step()
1007
+ >>> import numpy as np
1008
+ >>> import mindspore
1009
+ >>> from mindspore import nn, context
1010
+ >>> import mindspore.dataset as ds
1011
+ >>> from mindspore.profiler import ProfilerLevel, ProfilerActivity, AicoreMetrics, ExportType
1012
+ >>>
1013
+ >>> class Net(nn.Cell):
1014
+ ... def __init__(self):
1015
+ ... super(Net, self).__init__()
1016
+ ... self.fc = nn.Dense(2,2)
1017
+ ... def construct(self, x):
1018
+ ... return self.fc(x)
1019
+ >>>
1020
+ >>> def generator():
1021
+ ... for i in range(2):
1022
+ ... yield np.ones([2, 2]).astype(np.float32), np.ones([2]).astype(np.int32)
1023
+ >>>
1024
+ >>> def train(net):
1025
+ ... optimizer = nn.Momentum(net.trainable_params(), 1, 0.9)
1026
+ ... loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True)
1027
+ ... data = ds.GeneratorDataset(generator, ["data", "label"])
1028
+ ... model = mindspore.train.Model(net, loss, optimizer)
1029
+ ... model.train(1, data)
1030
+ >>>
1031
+ >>> if __name__ == '__main__':
1032
+ ... # If the device_target is GPU, set the device_target to "GPU"
1033
+ ... context.set_context(mode=mindspore.GRAPH_MODE)
1034
+ ... mindspore.set_device("Ascend")
1035
+ ...
1036
+ ... # Init Profiler
1037
+ ... experimental_config = mindspore.profiler._ExperimentalConfig(
1038
+ ... profiler_level=ProfilerLevel.Level0,
1039
+ ... aic_metrics=AicoreMetrics.AiCoreNone,
1040
+ ... l2_cache=False,
1041
+ ... mstx=False,
1042
+ ... data_simplification=False,
1043
+ ... export_type=[ExportType.Text])
1044
+ ... steps = 10
1045
+ ... net = Net()
1046
+ ... # Note that the Profiler should be initialized before model.train
1047
+ ... with mindspore.profiler.profile(activities=[ProfilerActivity.CPU, ProfilerActivity.NPU],
1048
+ ... schedule=mindspore.profiler.schedule(wait=0, warmup=0, active=1,
1049
+ ... repeat=1, skip_first=0),
1050
+ ... on_trace_ready=mindspore.profiler.
1051
+ ... tensorboard_trace_handler("./data"),
1052
+ ... profile_memory=False,
1053
+ ... experimental_config=experimental_config) as prof:
1054
+ ...
1055
+ ... # Train Model
1056
+ ... for step in range(steps):
1057
+ ... train(net)
1058
+ ... prof.step()
1060
1059
  """
1061
- self._profiler.step()
1060
+ if not self._has_started:
1061
+ logger.error("profile is stopped, step takes no effect!")
1062
+ return
1063
+ if self.record_steps and self._step_rec_fn:
1064
+ self._step_rec_fn.stop()
1065
+ prev_action = self.current_action
1066
+ self.step_num += 1
1067
+ self.current_action = self.schedule(self.step_num)
1068
+ self.action_controller.transit_action(prev_action, self.current_action)
1069
+ if self.record_steps:
1070
+ self._step_rec_fn = RecordFunction(ProfilerStepNameConstant.PROFILER_STEP + str(self.step_num))
1071
+ self._step_rec_fn.start()
1062
1072
 
1063
1073
  def add_metadata(self, key: str, value: str):
1064
1074
  """
@@ -1075,8 +1085,18 @@ class Profile:
1075
1085
  ... # Call Profiler add_metadata
1076
1086
  ... prof.add_metadata("test_key", "test_value")
1077
1087
  """
1088
+ if not isinstance(key, str) or not isinstance(value, str):
1089
+ logger.warning("The key and value of metadata must be string. Skip this metadata.")
1090
+ return
1078
1091
 
1079
- self._profiler.add_metadata(key, value)
1092
+ add_size = getsizeof(key) + getsizeof(value)
1093
+ if getsizeof(self._metadata) + add_size < ProfilerMetaData.MAX_META_SIZE:
1094
+ if key in self._metadata:
1095
+ logger.warning(f"{key} is already saved as metadata, override it.")
1096
+ self._metadata[key] = value
1097
+ ProfilerMetaData.set_metadata(self._metadata)
1098
+ else:
1099
+ logger.warning("Too many metadata added. Skip this metadata")
1080
1100
 
1081
1101
  def add_metadata_json(self, key: str, value: str):
1082
1102
  """
@@ -1094,7 +1114,35 @@ class Profile:
1094
1114
  ... # Call Profiler add_metadata_json
1095
1115
  ... prof.add_metadata_json("test_key", json.dumps({"key1": 1, "key2": 2}))
1096
1116
  """
1097
- self._profiler.add_metadata_json(key, value)
1117
+ if not isinstance(key, str) or not isinstance(value, str):
1118
+ logger.warning("The key and value of metadata must be string. Skip this metadata.")
1119
+ return
1120
+
1121
+ add_size = getsizeof(key) + getsizeof(value)
1122
+ if getsizeof(self._metadata) + add_size < ProfilerMetaData.MAX_META_SIZE:
1123
+ try:
1124
+ if key in self._metadata:
1125
+ logger.warning(f"{key} is already saved as metadata, override it.")
1126
+ self._metadata[key] = json.loads(value)
1127
+ ProfilerMetaData.set_metadata(self._metadata)
1128
+ except ValueError:
1129
+ logger.warning("The metadata value must be json format string. Skip this metadata")
1130
+ else:
1131
+ logger.warning("Too many metadata added. Skip this metadata")
1132
+
1133
+ def __enter__(self) -> 'Profile':
1134
+ if not self._has_started:
1135
+ self.start()
1136
+ return self
1137
+
1138
+ def __exit__(self, exc_type, exc_value, traceback) -> None:
1139
+ if self._has_started:
1140
+ self.stop()
1141
+
1142
+ def __del__(self):
1143
+ if self._has_started:
1144
+ self.stop()
1145
+ logger.warning("profile is stopped at the end of the program.")
1098
1146
 
1099
1147
 
1100
1148
  def analyse(profiler_path: str, max_process_number: int = os.cpu_count() // 2, pretty=False, step_list=None,
@@ -56,7 +56,7 @@ class ProfilerActionController:
56
56
  This method is called when the trace is ready to notify the callback function.
57
57
  """
58
58
  if self.on_trace_ready:
59
- self.on_trace_ready()
59
+ self.on_trace_ready(self.prof_interface)
60
60
 
61
61
  def transit_action(self, prev_action: ProfilerAction, current_action: ProfilerAction) -> None:
62
62
  """
@@ -76,14 +76,14 @@ class ProfilerInterface:
76
76
  logger.info("ProfilerInterface stop")
77
77
 
78
78
  @classmethod
79
- def analyse(cls):
79
+ def analyse(cls, **kwargs):
80
80
  """ProfilerInterface analyse"""
81
81
  if not cls.is_initialized:
82
82
  logger.warning("ProfilerInterface analyse failed, profiler has not been initialized.")
83
83
  return
84
84
 
85
85
  for profiler in cls.platform_profilers_set:
86
- profiler.analyse()
86
+ profiler.analyse(**kwargs)
87
87
 
88
88
  logger.info("ProfilerInterface analyse")
89
89
 
@@ -1503,7 +1503,7 @@ class SymbolTree(Observer, Observable, NodeManager):
1503
1503
  """
1504
1504
  # ast.Constant can be check without eval
1505
1505
  if isinstance(ast_node, ast.Constant):
1506
- return True, bool(ast.value)
1506
+ return True, bool(ast_node.value)
1507
1507
  # Get the module where the code of ast_node is located
1508
1508
  file_path = inspect.getfile(type(self.get_origin_network()))
1509
1509
  module = None