mindspore 2.4.1__cp39-cp39-win_amd64.whl → 2.5.0__cp39-cp39-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 (395) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
  3. mindspore/Newtonsoft.Json.dll +0 -0
  4. mindspore/__init__.py +8 -3
  5. mindspore/_c_dataengine.cp39-win_amd64.pyd +0 -0
  6. mindspore/_c_expression.cp39-win_amd64.pyd +0 -0
  7. mindspore/_c_mindrecord.cp39-win_amd64.pyd +0 -0
  8. mindspore/_checkparam.py +0 -5
  9. mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
  10. mindspore/_extends/parse/compile_config.py +64 -0
  11. mindspore/_extends/parse/deprecated/__init__.py +0 -0
  12. mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +375 -0
  13. mindspore/_extends/parse/parser.py +23 -5
  14. mindspore/_extends/parse/standard_method.py +123 -27
  15. mindspore/_extends/pijit/pijit_func_white_list.py +1 -1
  16. mindspore/amp.py +7 -1
  17. mindspore/atlprov.dll +0 -0
  18. mindspore/avcodec-59.dll +0 -0
  19. mindspore/avdevice-59.dll +0 -0
  20. mindspore/avfilter-8.dll +0 -0
  21. mindspore/avformat-59.dll +0 -0
  22. mindspore/avutil-57.dll +0 -0
  23. mindspore/boost/boost_cell_wrapper.py +136 -41
  24. mindspore/c1.dll +0 -0
  25. mindspore/c1xx.dll +0 -0
  26. mindspore/c2.dll +0 -0
  27. mindspore/common/__init__.py +3 -1
  28. mindspore/common/_register_for_tensor.py +0 -1
  29. mindspore/common/_stub_tensor.py +25 -4
  30. mindspore/common/_tensor_cpp_method.py +17 -0
  31. mindspore/common/_tensor_docs.py +6132 -0
  32. mindspore/common/api.py +99 -25
  33. mindspore/common/dtype.py +34 -34
  34. mindspore/common/dump.py +2 -1
  35. mindspore/common/file_system.py +8 -1
  36. mindspore/common/generator.py +2 -0
  37. mindspore/common/hook_handle.py +3 -1
  38. mindspore/common/initializer.py +3 -4
  39. mindspore/common/lazy_inline.py +8 -2
  40. mindspore/common/mindir_util.py +10 -2
  41. mindspore/common/parameter.py +30 -27
  42. mindspore/common/tensor.py +713 -1337
  43. mindspore/communication/__init__.py +1 -1
  44. mindspore/communication/_comm_helper.py +10 -0
  45. mindspore/communication/comm_func.py +215 -173
  46. mindspore/communication/management.py +23 -20
  47. mindspore/context.py +292 -193
  48. mindspore/dataset/__init__.py +23 -19
  49. mindspore/dataset/callback/ds_callback.py +2 -1
  50. mindspore/dataset/core/config.py +84 -3
  51. mindspore/dataset/engine/cache_admin.py +3 -3
  52. mindspore/dataset/engine/cache_client.py +5 -4
  53. mindspore/dataset/engine/datasets.py +192 -149
  54. mindspore/dataset/engine/datasets_audio.py +14 -0
  55. mindspore/dataset/engine/datasets_standard_format.py +28 -11
  56. mindspore/dataset/engine/datasets_text.py +38 -1
  57. mindspore/dataset/engine/datasets_user_defined.py +125 -65
  58. mindspore/dataset/engine/datasets_vision.py +81 -8
  59. mindspore/dataset/engine/iterators.py +281 -63
  60. mindspore/dataset/engine/obs/util.py +8 -0
  61. mindspore/dataset/engine/queue.py +40 -0
  62. mindspore/dataset/engine/samplers.py +26 -2
  63. mindspore/dataset/engine/serializer_deserializer.py +1 -1
  64. mindspore/dataset/engine/validators.py +43 -11
  65. mindspore/dataset/transforms/py_transforms_util.py +17 -0
  66. mindspore/dataset/transforms/transforms.py +29 -12
  67. mindspore/dataset/vision/validators.py +1 -2
  68. mindspore/device_context/__init__.py +21 -0
  69. mindspore/device_context/ascend/__init__.py +25 -0
  70. mindspore/device_context/ascend/device.py +72 -0
  71. mindspore/device_context/ascend/op_debug.py +94 -0
  72. mindspore/device_context/ascend/op_precision.py +193 -0
  73. mindspore/device_context/ascend/op_tuning.py +127 -0
  74. mindspore/device_context/cpu/__init__.py +25 -0
  75. mindspore/device_context/cpu/device.py +62 -0
  76. mindspore/device_context/cpu/op_tuning.py +43 -0
  77. mindspore/device_context/gpu/__init__.py +21 -0
  78. mindspore/device_context/gpu/device.py +70 -0
  79. mindspore/device_context/gpu/op_precision.py +67 -0
  80. mindspore/device_context/gpu/op_tuning.py +175 -0
  81. mindspore/device_manager.py +134 -0
  82. mindspore/dnnl.dll +0 -0
  83. mindspore/dpcmi.dll +0 -0
  84. mindspore/experimental/llm_boost/__init__.py +3 -2
  85. mindspore/experimental/llm_boost/ascend_native/__init__.py +22 -0
  86. mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +211 -0
  87. mindspore/experimental/llm_boost/ascend_native/llm_boost.py +52 -0
  88. mindspore/experimental/llm_boost/atb/boost_base.py +239 -64
  89. mindspore/experimental/llm_boost/atb/llama_boost.py +52 -30
  90. mindspore/experimental/llm_boost/atb/qwen_boost.py +47 -24
  91. mindspore/experimental/llm_boost/register.py +1 -0
  92. mindspore/experimental/optim/adadelta.py +26 -22
  93. mindspore/experimental/optim/adam.py +3 -0
  94. mindspore/experimental/optim/lr_scheduler.py +33 -24
  95. mindspore/experimental/optim/radam.py +33 -30
  96. mindspore/hal/device.py +28 -0
  97. mindspore/hal/event.py +17 -0
  98. mindspore/hal/memory.py +94 -3
  99. mindspore/hal/stream.py +91 -6
  100. mindspore/include/api/context.h +1 -2
  101. mindspore/include/dataset/constants.h +2 -2
  102. mindspore/jpeg62.dll +0 -0
  103. mindspore/log.py +12 -0
  104. mindspore/mindrecord/__init__.py +1 -1
  105. mindspore/mindrecord/config.py +17 -316
  106. mindspore/mindrecord/filereader.py +1 -9
  107. mindspore/mindrecord/filewriter.py +5 -15
  108. mindspore/mindrecord/mindpage.py +1 -9
  109. mindspore/mindspore_backend.dll +0 -0
  110. mindspore/mindspore_common.dll +0 -0
  111. mindspore/mindspore_core.dll +0 -0
  112. mindspore/mindspore_glog.dll +0 -0
  113. mindspore/mindspore_ops.dll +0 -0
  114. mindspore/mint/__init__.py +824 -218
  115. mindspore/mint/distributed/__init__.py +66 -4
  116. mindspore/mint/distributed/distributed.py +2594 -44
  117. mindspore/mint/linalg/__init__.py +6 -0
  118. mindspore/mint/nn/__init__.py +473 -14
  119. mindspore/mint/nn/functional.py +486 -11
  120. mindspore/mint/nn/layer/__init__.py +17 -4
  121. mindspore/mint/nn/layer/_functions.py +330 -0
  122. mindspore/mint/nn/layer/activation.py +169 -1
  123. mindspore/mint/nn/layer/basic.py +123 -0
  124. mindspore/mint/nn/layer/conv.py +727 -0
  125. mindspore/mint/nn/layer/normalization.py +215 -19
  126. mindspore/mint/nn/layer/padding.py +797 -0
  127. mindspore/mint/nn/layer/pooling.py +170 -0
  128. mindspore/mint/optim/__init__.py +2 -1
  129. mindspore/mint/optim/adam.py +223 -0
  130. mindspore/mint/optim/adamw.py +26 -19
  131. mindspore/mint/special/__init__.py +2 -1
  132. mindspore/msobj140.dll +0 -0
  133. mindspore/mspdb140.dll +0 -0
  134. mindspore/mspdbcore.dll +0 -0
  135. mindspore/mspdbst.dll +0 -0
  136. mindspore/mspft140.dll +0 -0
  137. mindspore/msvcdis140.dll +0 -0
  138. mindspore/msvcp140_1.dll +0 -0
  139. mindspore/msvcp140_2.dll +0 -0
  140. mindspore/msvcp140_atomic_wait.dll +0 -0
  141. mindspore/msvcp140_codecvt_ids.dll +0 -0
  142. mindspore/multiprocessing/__init__.py +5 -0
  143. mindspore/nn/__init__.py +2 -0
  144. mindspore/nn/cell.py +142 -21
  145. mindspore/nn/dynamic_lr.py +2 -1
  146. mindspore/nn/layer/activation.py +6 -6
  147. mindspore/nn/layer/basic.py +35 -25
  148. mindspore/nn/layer/channel_shuffle.py +3 -3
  149. mindspore/nn/layer/conv.py +3 -0
  150. mindspore/nn/layer/embedding.py +3 -3
  151. mindspore/nn/layer/normalization.py +8 -7
  152. mindspore/nn/layer/padding.py +4 -3
  153. mindspore/nn/layer/pooling.py +55 -23
  154. mindspore/nn/layer/rnn_cells.py +1 -1
  155. mindspore/nn/layer/rnns.py +2 -1
  156. mindspore/nn/layer/timedistributed.py +5 -5
  157. mindspore/nn/layer/transformer.py +48 -26
  158. mindspore/nn/learning_rate_schedule.py +5 -3
  159. mindspore/nn/loss/loss.py +31 -36
  160. mindspore/nn/optim/ada_grad.py +1 -0
  161. mindspore/nn/optim/adadelta.py +2 -2
  162. mindspore/nn/optim/adam.py +1 -1
  163. mindspore/nn/optim/lars.py +1 -4
  164. mindspore/nn/optim/optimizer.py +1 -1
  165. mindspore/nn/optim/rprop.py +2 -2
  166. mindspore/nn/optim/thor.py +2 -1
  167. mindspore/nn/utils/__init__.py +22 -0
  168. mindspore/nn/utils/init.py +73 -0
  169. mindspore/nn/wrap/cell_wrapper.py +4 -6
  170. mindspore/nn/wrap/loss_scale.py +3 -4
  171. mindspore/numpy/array_creations.py +60 -62
  172. mindspore/numpy/array_ops.py +148 -143
  173. mindspore/numpy/logic_ops.py +41 -42
  174. mindspore/numpy/math_ops.py +361 -359
  175. mindspore/numpy/utils.py +16 -16
  176. mindspore/numpy/utils_const.py +4 -4
  177. mindspore/opencv_core452.dll +0 -0
  178. mindspore/opencv_imgcodecs452.dll +0 -0
  179. mindspore/opencv_imgproc452.dll +0 -0
  180. mindspore/ops/__init__.py +2 -1
  181. mindspore/ops/_grad_experimental/grad_comm_ops.py +107 -8
  182. mindspore/ops/_grad_experimental/grad_debug_ops.py +6 -1
  183. mindspore/ops/_grad_experimental/grad_inner_ops.py +9 -0
  184. mindspore/ops/_grad_experimental/grad_math_ops.py +2 -1
  185. mindspore/ops/_op_impl/cpu/__init__.py +1 -0
  186. mindspore/ops/_op_impl/cpu/raise_op.py +28 -0
  187. mindspore/ops/_vmap/vmap_array_ops.py +20 -19
  188. mindspore/ops/_vmap/vmap_base.py +0 -2
  189. mindspore/ops/_vmap/vmap_grad_nn_ops.py +19 -13
  190. mindspore/ops/_vmap/vmap_math_ops.py +11 -9
  191. mindspore/ops/_vmap/vmap_nn_ops.py +20 -34
  192. mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +149 -12
  193. mindspore/ops/auto_generate/gen_arg_handler.py +0 -61
  194. mindspore/ops/auto_generate/gen_extend_func.py +554 -60
  195. mindspore/ops/auto_generate/gen_ops_def.py +1621 -115
  196. mindspore/ops/auto_generate/gen_ops_prim.py +8027 -3411
  197. mindspore/ops/auto_generate/pyboost_inner_prim.py +183 -79
  198. mindspore/ops/composite/base.py +1 -1
  199. mindspore/ops/composite/multitype_ops/_compile_utils.py +229 -30
  200. mindspore/ops/composite/multitype_ops/pow_impl.py +0 -29
  201. mindspore/ops/function/__init__.py +12 -0
  202. mindspore/ops/function/array_func.py +561 -159
  203. mindspore/ops/function/clip_func.py +64 -0
  204. mindspore/ops/function/debug_func.py +28 -20
  205. mindspore/ops/function/image_func.py +1 -1
  206. mindspore/ops/function/linalg_func.py +5 -4
  207. mindspore/ops/function/math_func.py +1664 -294
  208. mindspore/ops/function/nn_func.py +988 -317
  209. mindspore/ops/function/parameter_func.py +3 -56
  210. mindspore/ops/function/random_func.py +243 -33
  211. mindspore/ops/function/sparse_unary_func.py +1 -1
  212. mindspore/ops/functional.py +18 -5
  213. mindspore/ops/functional_overload.py +897 -0
  214. mindspore/ops/operations/__init__.py +3 -2
  215. mindspore/ops/operations/_embedding_cache_ops.py +4 -4
  216. mindspore/ops/operations/_grad_ops.py +2 -34
  217. mindspore/ops/operations/_infer_ops.py +2 -1
  218. mindspore/ops/operations/_inner_ops.py +38 -8
  219. mindspore/ops/operations/array_ops.py +45 -303
  220. mindspore/ops/operations/comm_ops.py +23 -17
  221. mindspore/ops/operations/custom_ops.py +7 -49
  222. mindspore/ops/operations/debug_ops.py +42 -47
  223. mindspore/ops/operations/inner_ops.py +6 -4
  224. mindspore/ops/operations/linalg_ops.py +3 -2
  225. mindspore/ops/operations/manually_defined/ops_def.py +185 -104
  226. mindspore/ops/operations/math_ops.py +11 -216
  227. mindspore/ops/operations/nn_ops.py +153 -310
  228. mindspore/ops/primitive.py +23 -21
  229. mindspore/ops/tensor_method.py +1669 -0
  230. mindspore/ops_generate/aclnn_kernel_register_auto_cc_generator.py +110 -0
  231. mindspore/ops_generate/add_tensor_docs_generator.py +54 -0
  232. mindspore/ops_generate/arg_handler.py +0 -61
  233. mindspore/ops_generate/auto_grad_impl_cc_generator.py +135 -0
  234. mindspore/ops_generate/auto_grad_reg_cc_generator.py +93 -0
  235. mindspore/ops_generate/base_generator.py +11 -0
  236. mindspore/ops_generate/cpp_create_prim_instance_helper_generator.py +108 -0
  237. mindspore/ops_generate/functional_map_cpp_generator.py +491 -0
  238. mindspore/ops_generate/functional_overload_py_generator.py +110 -0
  239. mindspore/ops_generate/functions_cc_generator.py +233 -0
  240. mindspore/ops_generate/gen_aclnn_implement.py +110 -114
  241. mindspore/ops_generate/gen_constants.py +157 -3
  242. mindspore/ops_generate/gen_ops.py +245 -990
  243. mindspore/ops_generate/gen_pyboost_func.py +97 -998
  244. mindspore/ops_generate/gen_utils.py +119 -33
  245. mindspore/ops_generate/lite_ops_cpp_generator.py +155 -0
  246. mindspore/ops_generate/op_api_proto.py +206 -0
  247. mindspore/ops_generate/op_def_py_generator.py +131 -0
  248. mindspore/ops_generate/op_prim_py_generator.py +480 -0
  249. mindspore/ops_generate/op_proto.py +373 -108
  250. mindspore/ops_generate/op_template_parser.py +436 -0
  251. mindspore/ops_generate/ops_def_cc_generator.py +288 -0
  252. mindspore/ops_generate/ops_def_h_generator.py +74 -0
  253. mindspore/ops_generate/ops_name_h_generator.py +68 -0
  254. mindspore/ops_generate/ops_primitive_h_generator.py +81 -0
  255. mindspore/ops_generate/pyboost_functions_cpp_generator.py +370 -0
  256. mindspore/ops_generate/pyboost_functions_h_generator.py +68 -0
  257. mindspore/ops_generate/pyboost_functions_py_generator.py +148 -0
  258. mindspore/ops_generate/pyboost_grad_function_cpp_generator.py +154 -0
  259. mindspore/ops_generate/pyboost_inner_prim_generator.py +131 -0
  260. mindspore/ops_generate/pyboost_native_grad_functions_generator.py +268 -0
  261. mindspore/ops_generate/pyboost_op_cpp_code_generator.py +851 -0
  262. mindspore/ops_generate/pyboost_overload_functions_cpp_generator.py +344 -0
  263. mindspore/ops_generate/pyboost_utils.py +92 -33
  264. mindspore/ops_generate/template.py +294 -44
  265. mindspore/ops_generate/tensor_func_reg_cpp_generator.py +422 -0
  266. mindspore/parallel/__init__.py +3 -3
  267. mindspore/parallel/_auto_parallel_context.py +44 -34
  268. mindspore/parallel/_cell_wrapper.py +22 -3
  269. mindspore/parallel/_parallel_serialization.py +13 -2
  270. mindspore/parallel/_utils.py +4 -2
  271. mindspore/parallel/algo_parameter_config.py +1 -1
  272. mindspore/parallel/checkpoint_transform.py +44 -0
  273. mindspore/parallel/cluster/process_entity/_api.py +131 -37
  274. mindspore/parallel/cluster/process_entity/_utils.py +41 -6
  275. mindspore/parallel/cluster/run.py +20 -3
  276. mindspore/parallel/parameter_broadcast.py +1 -1
  277. mindspore/parallel/shard.py +3 -0
  278. mindspore/parallel/transform_safetensors.py +119 -253
  279. mindspore/pgodb140.dll +0 -0
  280. mindspore/pgort140.dll +0 -0
  281. mindspore/profiler/__init__.py +17 -4
  282. mindspore/profiler/analysis/__init__.py +0 -0
  283. mindspore/profiler/analysis/parser/__init__.py +0 -0
  284. mindspore/profiler/analysis/parser/ascend_cann_parser.py +166 -0
  285. mindspore/profiler/analysis/parser/base_parser.py +158 -0
  286. mindspore/profiler/analysis/parser/framework_cann_relation_parser.py +45 -0
  287. mindspore/profiler/analysis/parser/ms_framework_parser.py +142 -0
  288. mindspore/profiler/analysis/parser/ms_minddata_parser.py +145 -0
  289. mindspore/profiler/analysis/parser/timeline_assembly_factory/__init__.py +0 -0
  290. mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +261 -0
  291. mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +40 -0
  292. mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +84 -0
  293. mindspore/profiler/analysis/parser/timeline_creator/__init__.py +0 -0
  294. mindspore/profiler/analysis/parser/timeline_creator/base_timeline_creator.py +44 -0
  295. mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +90 -0
  296. mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +76 -0
  297. mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +103 -0
  298. mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +134 -0
  299. mindspore/profiler/analysis/parser/timeline_event/__init__.py +0 -0
  300. mindspore/profiler/analysis/parser/timeline_event/base_event.py +233 -0
  301. mindspore/profiler/analysis/parser/timeline_event/cpu_op_event.py +47 -0
  302. mindspore/profiler/analysis/parser/timeline_event/flow_event.py +36 -0
  303. mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +260 -0
  304. mindspore/profiler/analysis/parser/timeline_event/msprof_event.py +73 -0
  305. mindspore/profiler/analysis/parser/timeline_event/scope_layer_event.py +53 -0
  306. mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +146 -0
  307. mindspore/profiler/analysis/task_manager.py +131 -0
  308. mindspore/profiler/analysis/time_converter.py +84 -0
  309. mindspore/profiler/analysis/viewer/__init__.py +0 -0
  310. mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +333 -0
  311. mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +87 -0
  312. mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +252 -0
  313. mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +313 -0
  314. mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +322 -0
  315. mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +265 -0
  316. mindspore/profiler/analysis/viewer/ascend_timeline_viewer.py +58 -0
  317. mindspore/profiler/analysis/viewer/base_viewer.py +26 -0
  318. mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +97 -0
  319. mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +581 -0
  320. mindspore/profiler/analysis/work_flow.py +73 -0
  321. mindspore/profiler/common/ascend_msprof_exporter.py +138 -0
  322. mindspore/profiler/common/command_executor.py +90 -0
  323. mindspore/profiler/common/constant.py +174 -3
  324. mindspore/profiler/common/file_manager.py +208 -0
  325. mindspore/profiler/common/log.py +130 -0
  326. mindspore/profiler/common/msprof_cmd_tool.py +202 -0
  327. mindspore/profiler/common/path_manager.py +371 -0
  328. mindspore/profiler/common/process_bar.py +168 -0
  329. mindspore/profiler/common/process_pool.py +9 -3
  330. mindspore/profiler/common/profiler_context.py +476 -0
  331. mindspore/profiler/common/profiler_info.py +304 -0
  332. mindspore/profiler/common/profiler_output_path.py +284 -0
  333. mindspore/profiler/common/profiler_parameters.py +210 -0
  334. mindspore/profiler/common/profiler_path_manager.py +120 -0
  335. mindspore/profiler/common/record_function.py +76 -0
  336. mindspore/profiler/common/tlv_decoder.py +76 -0
  337. mindspore/profiler/common/util.py +75 -2
  338. mindspore/profiler/dynamic_profiler.py +270 -37
  339. mindspore/profiler/envprofiler.py +138 -0
  340. mindspore/profiler/mstx.py +199 -0
  341. mindspore/profiler/platform/__init__.py +21 -0
  342. mindspore/profiler/platform/base_profiler.py +40 -0
  343. mindspore/profiler/platform/cpu_profiler.py +124 -0
  344. mindspore/profiler/platform/gpu_profiler.py +74 -0
  345. mindspore/profiler/platform/npu_profiler.py +309 -0
  346. mindspore/profiler/profiler.py +580 -93
  347. mindspore/profiler/profiler_action_controller.py +187 -0
  348. mindspore/profiler/profiler_interface.py +114 -0
  349. mindspore/profiler/schedule.py +208 -0
  350. mindspore/rewrite/api/symbol_tree.py +1 -2
  351. mindspore/run_check/_check_version.py +18 -13
  352. mindspore/runtime/__init__.py +37 -0
  353. mindspore/runtime/device.py +27 -0
  354. mindspore/runtime/event.py +209 -0
  355. mindspore/runtime/executor.py +148 -0
  356. mindspore/runtime/memory.py +392 -0
  357. mindspore/runtime/stream.py +460 -0
  358. mindspore/runtime/thread_bind_core.py +401 -0
  359. mindspore/swresample-4.dll +0 -0
  360. mindspore/swscale-6.dll +0 -0
  361. mindspore/tbbmalloc.dll +0 -0
  362. mindspore/tinyxml2.dll +0 -0
  363. mindspore/train/__init__.py +2 -2
  364. mindspore/train/_utils.py +53 -18
  365. mindspore/train/amp.py +8 -4
  366. mindspore/train/callback/_checkpoint.py +32 -18
  367. mindspore/train/callback/_early_stop.py +1 -1
  368. mindspore/train/callback/_flops_collector.py +105 -69
  369. mindspore/train/callback/_history.py +1 -1
  370. mindspore/train/callback/_summary_collector.py +44 -6
  371. mindspore/train/callback/_tft_register.py +37 -15
  372. mindspore/train/dataset_helper.py +11 -11
  373. mindspore/train/metrics/precision.py +4 -5
  374. mindspore/train/mind_ir_pb2.py +167 -46
  375. mindspore/train/model.py +13 -14
  376. mindspore/train/serialization.py +461 -72
  377. mindspore/train/summary/summary_record.py +1 -2
  378. mindspore/train/train_thor/model_thor.py +1 -1
  379. mindspore/turbojpeg.dll +0 -0
  380. mindspore/utils/__init__.py +4 -2
  381. mindspore/utils/dryrun.py +138 -0
  382. mindspore/utils/runtime_execution_order_check.py +550 -0
  383. mindspore/vcmeta.dll +0 -0
  384. mindspore/vcruntime140.dll +0 -0
  385. mindspore/vcruntime140_1.dll +0 -0
  386. mindspore/version.py +1 -1
  387. {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/METADATA +3 -4
  388. {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/RECORD +391 -265
  389. {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/entry_points.txt +1 -1
  390. mindspore/common/_tensor_overload.py +0 -139
  391. mindspore/mindspore_np_dtype.dll +0 -0
  392. mindspore/profiler/envprofiling.py +0 -254
  393. mindspore/profiler/profiling.py +0 -1926
  394. {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/WHEEL +0 -0
  395. {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,199 @@
1
+ # Copyright 2020-2024 Huawei Technologies Co., Ltd
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ============================================================================
15
+ """ Mstx class for NPU profiling """
16
+ import mindspore
17
+ import mindspore._c_expression as c_expression
18
+
19
+ from mindspore import log as logging
20
+ from mindspore.runtime import Stream
21
+ from mindspore.profiler.common.constant import DeviceTarget
22
+
23
+
24
+ class Mstx:
25
+ """
26
+ Mstx class provides profiling tools for marking and tracing on NPU. This class provides three static methods: mark,
27
+ range_start and range_end for adding marker points and ranges in profiling.
28
+ """
29
+
30
+ NPU_PROFILER = c_expression.Profiler.get_instance(DeviceTarget.NPU.value)
31
+
32
+ @staticmethod
33
+ def mark(message: str, stream: mindspore.runtime.Stream = None) -> None:
34
+ """Add a marker point in profiling.
35
+
36
+ Args:
37
+ message (str): Description for the marker.
38
+ stream (:class:`~.runtime.Stream`, optional): NPU stream for async execution, expected type:
39
+ mindspore.runtime.Stream. Default: ``None``, which means only marking on host side without
40
+ marking on device stream.
41
+
42
+ Examples:
43
+ >>> import numpy as np
44
+ >>> import mindspore as ms
45
+ >>> from mindspore import nn
46
+ >>> import mindspore.dataset as ds
47
+ >>> from mindspore import Profiler
48
+ >>> from mindspore.profiler import ProfilerLevel, ProfilerActivity, schedule, tensor_board_trace_handler
49
+ >>> from mindspore.profiler import mstx
50
+ >>>
51
+ >>> class Net(nn.Cell):
52
+ ... def __init__(self):
53
+ ... super(Net, self).__init__()
54
+ ... self.fc = nn.Dense(2,2)
55
+ ... def construct(self, x):
56
+ ... return self.fc(x)
57
+ >>>
58
+ >>> def generator():
59
+ ... for i in range(2):
60
+ ... yield (np.ones([2, 2]).astype(np.float32), np.ones([2]).astype(np.int32))
61
+ >>>
62
+ >>> def train(net):
63
+ ... stream = ms.runtime.current_stream()
64
+ ... optimizer = nn.Momentum(net.trainable_params(), 1, 0.9)
65
+ ... loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True)
66
+ ... data = ds.GeneratorDataset(generator, ["data", "label"])
67
+ ... model = ms.train.Model(net, loss, optimizer)
68
+ ... # Add marker before training
69
+ ... mstx.mark("train start", stream)
70
+ ... model.train(1, data)
71
+ ... # Add marker after training
72
+ ... mstx.mark("train end", stream)
73
+ >>>
74
+ >>> if __name__ == '__main__':
75
+ ... # Note: mstx only supports Ascend device and cannot be used in mindspore.nn.Cell.construct
76
+ ... # when in mindspore.GRAPH_MODE
77
+ ... ms.set_context(mode=ms.PYNATIVE_MODE)
78
+ ... ms.set_device(device_target="Ascend", device_id=0)
79
+ ... # Init Profiler
80
+ ... with Profiler(profiler_level=ProfilerLevel.LevelNone,
81
+ ... on_trace_ready=tensor_board_trace_handler,
82
+ ... activities=[ProfilerActivity.CPU, ProfilerActivity.NPU],
83
+ ... schedule=schedule(wait=0, warmup=0, active=3, repeat=1, skip_first=0),
84
+ ... mstx=True) as profiler:
85
+ ... net = Net()
86
+ ... for i in range(5):
87
+ ... train(net)
88
+ ... profiler.step()
89
+ """
90
+ if not message or not isinstance(message, str):
91
+ logging.warning("Invalid message for mstx.mark func. Please input valid message string.")
92
+ return
93
+ if stream:
94
+ if isinstance(stream, Stream):
95
+ device_stream = stream.device_stream()
96
+ Mstx.NPU_PROFILER.mstx_mark(message, device_stream)
97
+ else:
98
+ logging.warning(
99
+ f"Invalid stream for mstx.mark func. Expected mindspore.runtime.Stream but got {type(stream)}.",
100
+ )
101
+ else:
102
+ Mstx.NPU_PROFILER.mstx_mark(message)
103
+
104
+ @staticmethod
105
+ def range_start(message: str, stream: mindspore.runtime.Stream = None) -> int:
106
+ """Start a profiling range.
107
+
108
+ Args:
109
+ message (str): Description for the range.
110
+ stream (:class:`~.runtime.Stream`, optional): NPU stream for async execution, expected type:
111
+ mindspore.runtime.Stream. Default: ``None``, which means only starting mstx range on
112
+ host side without starting on device stream.
113
+
114
+ Returns:
115
+ int, range ID for range_end.
116
+
117
+ Examples:
118
+ >>> import numpy as np
119
+ >>> import mindspore as ms
120
+ >>> from mindspore import nn
121
+ >>> import mindspore.dataset as ds
122
+ >>> from mindspore import Profiler
123
+ >>> from mindspore.profiler import ProfilerLevel, ProfilerActivity, schedule, tensor_board_trace_handler
124
+ >>> from mindspore.profiler import mstx
125
+ >>>
126
+ >>> class Net(nn.Cell):
127
+ ... def __init__(self):
128
+ ... super(Net, self).__init__()
129
+ ... self.fc = nn.Dense(2,2)
130
+ ... def construct(self, x):
131
+ ... return self.fc(x)
132
+ >>>
133
+ >>> def generator():
134
+ ... for i in range(2):
135
+ ... yield (np.ones([2, 2]).astype(np.float32), np.ones([2]).astype(np.int32))
136
+ >>>
137
+ >>> def train(net):
138
+ ... stream = ms.runtime.current_stream()
139
+ ... optimizer = nn.Momentum(net.trainable_params(), 1, 0.9)
140
+ ... loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True)
141
+ ... data = ds.GeneratorDataset(generator, ["data", "label"])
142
+ ... model = ms.train.Model(net, loss, optimizer)
143
+ ... # Start profiling range
144
+ ... range_id = mstx.range_start("training process", stream)
145
+ ... model.train(1, data)
146
+ ... # End profiling range
147
+ ... mstx.range_end(range_id)
148
+ >>>
149
+ >>> if __name__ == '__main__':
150
+ ... # Note: mstx only supports Ascend device and cannot be used in mindspore.nn.Cell.construct
151
+ ... # when in mindspore.GRAPH_MODE
152
+ ... ms.set_context(mode=ms.PYNATIVE_MODE)
153
+ ... ms.set_device(device_target="Ascend", device_id=0)
154
+ ... with Profiler(profiler_level=ProfilerLevel.LevelNone,
155
+ ... on_trace_ready=tensor_board_trace_handler,
156
+ ... activities=[ProfilerActivity.CPU, ProfilerActivity.NPU],
157
+ ... schedule=schedule(wait=0, warmup=0, active=3, repeat=1, skip_first=0),
158
+ ... mstx=True) as profiler:
159
+ ... net = Net()
160
+ ... for i in range(5):
161
+ ... train(net)
162
+ ... profiler.step()
163
+ """
164
+ if not message or not isinstance(message, str):
165
+ logging.warning("Invalid message for mstx.range_start func. Please input valid message string.")
166
+ return 0
167
+ # pylint: disable=no-else-return
168
+ if stream:
169
+ if isinstance(stream, Stream):
170
+ device_stream = stream.device_stream()
171
+ return Mstx.NPU_PROFILER.mstx_range_start(message, device_stream)
172
+ else:
173
+ logging.warning(
174
+ f"Invalid stream for mstx.range_start func. "
175
+ f"Expected mindspore.runtime.Stream but got {type(stream)}.",
176
+ )
177
+ return 0
178
+ else:
179
+ return Mstx.NPU_PROFILER.mstx_range_start(message)
180
+
181
+ @staticmethod
182
+ def range_end(range_id: int) -> None:
183
+ """End a profiling range.
184
+
185
+ Args:
186
+ range_id (int): Range ID from range_start.
187
+
188
+ Examples:
189
+ >>> # Please refer to the example in range_start
190
+ >>> # range_id = mstx.range_start("training process", stream)
191
+ >>> # model.train(1, data)
192
+ >>> # mstx.range_end(range_id)
193
+ """
194
+ if not isinstance(range_id, int):
195
+ logging.warning(
196
+ "Invalid message for mstx.range_start func. Please input return value from mstx.range_start."
197
+ )
198
+ return
199
+ Mstx.NPU_PROFILER.mstx_range_end(range_id)
@@ -0,0 +1,21 @@
1
+ # Copyright 2020-2024 Huawei Technologies Co., Ltd
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ============================================================================
15
+ """Platform profiler"""
16
+ from .cpu_profiler import CpuProfiler
17
+ from .gpu_profiler import GpuProfiler
18
+ from .npu_profiler import NpuProfiler
19
+
20
+
21
+ __all__ = ["CpuProfiler", "GpuProfiler", "NpuProfiler"]
@@ -0,0 +1,40 @@
1
+ # Copyright 2020-2024 Huawei Technologies Co., Ltd
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ============================================================================
15
+ """Platform profiler interface."""
16
+ from abc import ABC, abstractmethod
17
+
18
+
19
+ class BaseProfiler(ABC):
20
+ """
21
+ BaseProfiler is the base class for all platform profilers.
22
+ """
23
+
24
+ @abstractmethod
25
+ def start(self):
26
+ """
27
+ Start profiling.
28
+ """
29
+
30
+ @abstractmethod
31
+ def stop(self):
32
+ """
33
+ Stop profiling.
34
+ """
35
+
36
+ @abstractmethod
37
+ def analyse(self, **kwargs):
38
+ """
39
+ Analyse profiling result.
40
+ """
@@ -0,0 +1,124 @@
1
+ # Copyright 2020-2024 Huawei Technologies Co., Ltd
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ============================================================================
15
+ """CPU platform profiler."""
16
+ import mindspore._c_expression as c_expression
17
+
18
+ from mindspore.profiler.common.registry import PROFILERS
19
+ from mindspore.profiler.common.constant import DeviceTarget, ProfilerActivity
20
+ from mindspore.profiler.common.util import print_msg_with_pid
21
+ from mindspore.profiler.common.profiler_context import ProfilerContext
22
+ from mindspore.profiler.common.profiler_path_manager import ProfilerPathManager
23
+ from mindspore.profiler.platform.base_profiler import BaseProfiler
24
+ from mindspore.profiler.analysis.time_converter import TimeConverter
25
+ from mindspore.profiler.analysis.task_manager import TaskManager
26
+ from mindspore.profiler.analysis.parser.ms_framework_parser import FrameworkParser
27
+ from mindspore.profiler.analysis.parser.framework_cann_relation_parser import FrameworkCannRelationParser
28
+ from mindspore.profiler.analysis.viewer.ms_dataset_viewer import MsDatasetViewer
29
+ from mindspore.profiler.analysis.viewer.ascend_timeline_viewer import AscendTimelineViewer
30
+ from mindspore.profiler.common.log import ProfilerLogger
31
+
32
+
33
+ @PROFILERS.register_module(DeviceTarget.CPU.value)
34
+ class CpuProfiler(BaseProfiler):
35
+ """
36
+ CPU platform profiler
37
+ """
38
+
39
+ def __init__(self) -> None:
40
+ super().__init__()
41
+ self._prof_ctx = ProfilerContext()
42
+ self._profiler = c_expression.Profiler.get_instance(DeviceTarget.CPU.value)
43
+ self._prof_path_mgr = ProfilerPathManager()
44
+ self._prof_mgr = c_expression.ProfilerManager.get_instance()
45
+ ProfilerLogger.init(self._prof_ctx.ascend_ms_dir)
46
+ self._logger = ProfilerLogger.get_instance()
47
+
48
+ def start(self) -> None:
49
+ """Start profiling."""
50
+ self._logger.info("CpuProfiler start.")
51
+ self._profiler.init(self._prof_ctx.framework_path)
52
+ self._logger.info("CpuProfiler framework_path: %s", self._prof_ctx.framework_path)
53
+ self._profiler.step_profiling_enable(True)
54
+
55
+ if ProfilerActivity.CPU in self._prof_ctx.activities:
56
+ self._profiler.enable_op_time()
57
+
58
+ if self._prof_ctx.profile_memory:
59
+ self._profiler.enable_profile_memory()
60
+
61
+ def stop(self) -> None:
62
+ """Stop profiling."""
63
+ self._logger.info("CpuProfiler stop.")
64
+ self._profiler.stop()
65
+
66
+ def analyse(self, **kwargs) -> None:
67
+ """Analyse profiling data."""
68
+ if ProfilerContext().device_target_set != {DeviceTarget.CPU.value}:
69
+ return
70
+ self._logger.info("CpuProfiler analyse.")
71
+ CPUProfilerAnalysis.online_analyse()
72
+
73
+ def finalize(self) -> None:
74
+ """Finalize profiling data."""
75
+ self._logger.info("CpuProfiler finalize.")
76
+
77
+
78
+ class CPUProfilerAnalysis:
79
+ """
80
+ CPU profiler analysis interface
81
+ """
82
+
83
+ @classmethod
84
+ def online_analyse(cls):
85
+ """
86
+ Online analysis for CPU
87
+ """
88
+ cls._pre_analyse_online()
89
+ cls._run_tasks(**ProfilerContext().to_dict())
90
+
91
+ @classmethod
92
+ def _pre_analyse_online(cls):
93
+ """
94
+ Pre-process for online analysis
95
+ """
96
+ ProfilerPathManager().create_output_path()
97
+ TimeConverter.init_parameters(freq=100.0, cntvct=0, localtime_diff=0)
98
+
99
+ @classmethod
100
+ def _run_tasks(cls, **kwargs) -> None:
101
+ """
102
+ Run tasks for online analysis
103
+ """
104
+ ascend_ms_dir = kwargs.get("ascend_ms_dir", "")
105
+ print_msg_with_pid(f"Start parsing profiling data: {ascend_ms_dir}")
106
+ task_mgr = cls._construct_task_mgr(**kwargs)
107
+ task_mgr.run()
108
+
109
+ @classmethod
110
+ def _construct_task_mgr(cls, **kwargs) -> TaskManager:
111
+ """
112
+ Construct task manager based on activities and parameters
113
+ """
114
+ task_mgr = TaskManager()
115
+
116
+ task_mgr.create_flow(
117
+ FrameworkParser(**kwargs)
118
+ .register_post_hook(MsDatasetViewer(**kwargs).save),
119
+ FrameworkCannRelationParser()
120
+ .register_post_hook(AscendTimelineViewer(**kwargs).save),
121
+ flow_name="cpu_flow", show_process=True
122
+ )
123
+
124
+ return task_mgr
@@ -0,0 +1,74 @@
1
+ # Copyright 2024 Huawei Technologies Co., Ltd
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ============================================================================
15
+ """GPU platform profiler."""
16
+ import mindspore._c_dataengine as cde
17
+ import mindspore._c_expression as c_expression
18
+ from mindspore.profiler.common.registry import PROFILERS
19
+ from mindspore.profiler.common.constant import DeviceTarget, ProfilerActivity
20
+
21
+ from mindspore.profiler.common.profiler_context import ProfilerContext
22
+ from mindspore.profiler.platform.base_profiler import BaseProfiler
23
+ from mindspore.profiler.common.log import ProfilerLogger
24
+
25
+
26
+ @PROFILERS.register_module(DeviceTarget.GPU.value)
27
+ class GpuProfiler(BaseProfiler):
28
+ """
29
+ GPU platform profiler
30
+ """
31
+ def __init__(self) -> None:
32
+ super().__init__()
33
+ self._prof_ctx = ProfilerContext()
34
+ self._profiler = c_expression.Profiler.get_instance(DeviceTarget.GPU.value)
35
+ ProfilerLogger.init(self._prof_ctx.ascend_ms_dir)
36
+ self._logger = ProfilerLogger.get_instance()
37
+
38
+ self._profiler.init(self._prof_ctx.output_path)
39
+ self._profiler.sync_enable(self._prof_ctx.sync_enable)
40
+
41
+ if self._prof_ctx.data_process:
42
+ self._md_profiler = cde.GlobalContext.profiling_manager()
43
+ self._md_profiler.init()
44
+
45
+ def start(self) -> None:
46
+ """Start profiling."""
47
+ self._logger.info("GpuProfiler start.")
48
+
49
+ if self._prof_ctx.data_process:
50
+ self._profiler.data_process_enable(True)
51
+ self._md_profiler.start()
52
+
53
+ if ProfilerActivity.GPU in self._prof_ctx.activities:
54
+ self._profiler.enable_op_time()
55
+
56
+ if ProfilerActivity.CPU in self._prof_ctx.activities:
57
+ self._profiler.step_profiling_enable(True)
58
+
59
+ def stop(self) -> None:
60
+ """Stop profiling."""
61
+ self._logger.info("GpuProfiler stop.")
62
+ self._profiler.stop()
63
+
64
+ if self._prof_ctx.data_process:
65
+ self._md_profiler.stop()
66
+ self._md_profiler.save(self._prof_ctx.output_path)
67
+
68
+ def analyse(self, **kwargs) -> None:
69
+ """Analyse profiling data."""
70
+ self._logger.info("GpuProfiler analyse.")
71
+
72
+ def finalize(self) -> None:
73
+ """Finalize profiling data."""
74
+ self._logger.info("GpuProfiler finalize.")