mindspore 2.4.10__cp311-cp311-win_amd64.whl → 2.6.0rc1__cp311-cp311-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 (602) 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 +13 -6
  5. mindspore/_c_dataengine.cp311-win_amd64.pyd +0 -0
  6. mindspore/_c_expression.cp311-win_amd64.pyd +0 -0
  7. mindspore/_c_mindrecord.cp311-win_amd64.pyd +0 -0
  8. mindspore/_check_jit_forbidden_api.py +3 -0
  9. mindspore/_checkparam.py +3 -38
  10. mindspore/_deprecated/__init__.py +17 -0
  11. mindspore/_deprecated/jit.py +198 -0
  12. mindspore/_extends/builtin_operations.py +1 -1
  13. mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
  14. mindspore/_extends/parse/__init__.py +6 -7
  15. mindspore/_extends/parse/compile_config.py +83 -0
  16. mindspore/_extends/parse/deprecated/__init__.py +0 -0
  17. mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +394 -0
  18. mindspore/_extends/parse/jit_fallback_modules/__init__.py +0 -0
  19. mindspore/_extends/parse/jit_fallback_modules/check_utils.py +123 -0
  20. mindspore/_extends/parse/jit_fallback_modules/third_party_modules.py +50 -0
  21. mindspore/_extends/parse/parser.py +46 -197
  22. mindspore/_extends/parse/resources.py +1 -5
  23. mindspore/_extends/parse/standard_method.py +217 -98
  24. mindspore/_extends/pijit/__init__.py +2 -2
  25. mindspore/_extends/pijit/pijit_func_white_list.py +17 -12
  26. mindspore/_extends/pijit/tensor_func_list.py +27 -0
  27. mindspore/_extends/utils.py +1 -1
  28. mindspore/amp.py +11 -5
  29. mindspore/atlprov.dll +0 -0
  30. mindspore/avcodec-59.dll +0 -0
  31. mindspore/avdevice-59.dll +0 -0
  32. mindspore/avfilter-8.dll +0 -0
  33. mindspore/avformat-59.dll +0 -0
  34. mindspore/avutil-57.dll +0 -0
  35. mindspore/boost/__init__.py +2 -2
  36. mindspore/boost/base.py +3 -7
  37. mindspore/boost/boost_cell_wrapper.py +138 -43
  38. mindspore/c1.dll +0 -0
  39. mindspore/c1xx.dll +0 -0
  40. mindspore/c2.dll +0 -0
  41. mindspore/common/__init__.py +6 -3
  42. mindspore/common/_grad_function.py +56 -0
  43. mindspore/common/_pijit_context.py +14 -5
  44. mindspore/common/_register_for_tensor.py +1 -2
  45. mindspore/common/_stub_tensor.py +30 -14
  46. mindspore/common/_tensor_cpp_method.py +17 -0
  47. mindspore/common/_tensor_docs.py +4760 -0
  48. mindspore/common/api.py +435 -371
  49. mindspore/common/auto_dynamic_shape.py +41 -44
  50. mindspore/common/dtype.py +39 -36
  51. mindspore/common/dump.py +9 -6
  52. mindspore/common/file_system.py +9 -1
  53. mindspore/common/generator.py +2 -0
  54. mindspore/common/hook_handle.py +6 -2
  55. mindspore/common/initializer.py +13 -10
  56. mindspore/common/jit_begin_end.py +94 -0
  57. mindspore/common/jit_config.py +6 -1
  58. mindspore/common/jit_context.py +76 -0
  59. mindspore/common/jit_trace.py +378 -0
  60. mindspore/common/lazy_inline.py +9 -3
  61. mindspore/common/mindir_util.py +10 -2
  62. mindspore/common/mutable.py +5 -4
  63. mindspore/common/parameter.py +135 -52
  64. mindspore/common/seed.py +2 -2
  65. mindspore/common/sparse_tensor.py +23 -17
  66. mindspore/common/tensor.py +951 -1992
  67. mindspore/communication/__init__.py +7 -5
  68. mindspore/communication/_comm_helper.py +52 -2
  69. mindspore/communication/comm_func.py +240 -181
  70. mindspore/communication/management.py +95 -26
  71. mindspore/context.py +314 -566
  72. mindspore/dataset/__init__.py +65 -37
  73. mindspore/dataset/audio/__init__.py +2 -8
  74. mindspore/dataset/audio/transforms.py +3 -17
  75. mindspore/dataset/callback/ds_callback.py +2 -1
  76. mindspore/dataset/core/config.py +87 -6
  77. mindspore/dataset/engine/cache_admin.py +3 -3
  78. mindspore/dataset/engine/cache_client.py +6 -5
  79. mindspore/dataset/engine/datasets.py +292 -267
  80. mindspore/dataset/engine/datasets_audio.py +22 -8
  81. mindspore/dataset/engine/datasets_standard_format.py +46 -27
  82. mindspore/dataset/engine/datasets_text.py +78 -48
  83. mindspore/dataset/engine/datasets_user_defined.py +182 -116
  84. mindspore/dataset/engine/datasets_vision.py +120 -44
  85. mindspore/dataset/engine/iterators.py +283 -63
  86. mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +1 -1
  87. mindspore/dataset/engine/obs/util.py +8 -0
  88. mindspore/dataset/engine/queue.py +40 -0
  89. mindspore/dataset/engine/samplers.py +289 -43
  90. mindspore/dataset/engine/serializer_deserializer.py +3 -2
  91. mindspore/dataset/engine/validators.py +53 -11
  92. mindspore/dataset/text/__init__.py +7 -6
  93. mindspore/dataset/text/transforms.py +6 -5
  94. mindspore/dataset/text/utils.py +3 -3
  95. mindspore/dataset/transforms/__init__.py +0 -9
  96. mindspore/dataset/transforms/py_transforms_util.py +17 -0
  97. mindspore/dataset/transforms/transforms.py +31 -14
  98. mindspore/dataset/utils/browse_dataset.py +1 -1
  99. mindspore/dataset/vision/__init__.py +2 -9
  100. mindspore/dataset/vision/transforms.py +202 -158
  101. mindspore/dataset/vision/utils.py +7 -5
  102. mindspore/dataset/vision/validators.py +1 -2
  103. mindspore/device_context/__init__.py +21 -0
  104. mindspore/device_context/ascend/__init__.py +25 -0
  105. mindspore/device_context/ascend/device.py +72 -0
  106. mindspore/device_context/ascend/op_debug.py +153 -0
  107. mindspore/device_context/ascend/op_precision.py +193 -0
  108. mindspore/device_context/ascend/op_tuning.py +123 -0
  109. mindspore/{ops_generate/gen_constants.py → device_context/cpu/__init__.py} +6 -17
  110. mindspore/device_context/cpu/device.py +62 -0
  111. mindspore/device_context/cpu/op_tuning.py +43 -0
  112. mindspore/device_context/gpu/__init__.py +21 -0
  113. mindspore/device_context/gpu/device.py +70 -0
  114. mindspore/device_context/gpu/op_precision.py +67 -0
  115. mindspore/device_context/gpu/op_tuning.py +175 -0
  116. mindspore/device_manager.py +170 -0
  117. mindspore/dnnl.dll +0 -0
  118. mindspore/dpcmi.dll +0 -0
  119. mindspore/experimental/es/embedding_service.py +35 -27
  120. mindspore/experimental/llm_boost/__init__.py +1 -0
  121. mindspore/experimental/llm_boost/ascend_native/__init__.py +22 -0
  122. mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +211 -0
  123. mindspore/experimental/llm_boost/ascend_native/llm_boost.py +52 -0
  124. mindspore/experimental/llm_boost/atb/boost_base.py +2 -3
  125. mindspore/experimental/llm_boost/atb/llama_boost.py +6 -1
  126. mindspore/experimental/llm_boost/register.py +1 -0
  127. mindspore/experimental/map_parameter.py +4 -4
  128. mindspore/experimental/optim/adadelta.py +6 -6
  129. mindspore/experimental/optim/adagrad.py +4 -4
  130. mindspore/experimental/optim/adam.py +7 -0
  131. mindspore/experimental/optim/adamax.py +4 -4
  132. mindspore/experimental/optim/adamw.py +4 -0
  133. mindspore/experimental/optim/asgd.py +1 -1
  134. mindspore/experimental/optim/lr_scheduler.py +73 -46
  135. mindspore/experimental/optim/radam.py +34 -31
  136. mindspore/experimental/optim/rprop.py +1 -1
  137. mindspore/experimental/optim/sgd.py +1 -1
  138. mindspore/hal/contiguous_tensors_handle.py +6 -10
  139. mindspore/hal/device.py +55 -53
  140. mindspore/hal/event.py +52 -52
  141. mindspore/hal/memory.py +157 -117
  142. mindspore/hal/stream.py +150 -109
  143. mindspore/include/api/context.h +0 -1
  144. mindspore/include/dataset/constants.h +7 -4
  145. mindspore/include/dataset/execute.h +2 -2
  146. mindspore/jpeg62.dll +0 -0
  147. mindspore/log.py +50 -0
  148. mindspore/mindrecord/__init__.py +21 -8
  149. mindspore/mindrecord/config.py +17 -316
  150. mindspore/mindrecord/filereader.py +1 -9
  151. mindspore/mindrecord/filewriter.py +5 -15
  152. mindspore/mindrecord/mindpage.py +1 -9
  153. mindspore/mindspore_backend_common.dll +0 -0
  154. mindspore/mindspore_backend_manager.dll +0 -0
  155. mindspore/mindspore_common.dll +0 -0
  156. mindspore/mindspore_core.dll +0 -0
  157. mindspore/mindspore_dump.dll +0 -0
  158. mindspore/mindspore_frontend.dll +0 -0
  159. mindspore/mindspore_glog.dll +0 -0
  160. mindspore/mindspore_memory_pool.dll +0 -0
  161. mindspore/mindspore_ms_backend.dll +0 -0
  162. mindspore/mindspore_ops.dll +0 -0
  163. mindspore/{mindspore_backend.dll → mindspore_ops_host.dll} +0 -0
  164. mindspore/mindspore_ops_kernel_common.dll +0 -0
  165. mindspore/mindspore_profiler.dll +0 -0
  166. mindspore/mindspore_pyboost.dll +0 -0
  167. mindspore/mindspore_pynative.dll +0 -0
  168. mindspore/mindspore_res_manager.dll +0 -0
  169. mindspore/mindspore_runtime_pipeline.dll +0 -0
  170. mindspore/mint/__init__.py +796 -759
  171. mindspore/mint/distributed/__init__.py +70 -4
  172. mindspore/mint/distributed/distributed.py +2679 -44
  173. mindspore/mint/linalg/__init__.py +8 -0
  174. mindspore/mint/nn/__init__.py +743 -22
  175. mindspore/mint/nn/functional.py +716 -23
  176. mindspore/mint/nn/layer/__init__.py +21 -4
  177. mindspore/mint/nn/layer/_functions.py +334 -0
  178. mindspore/mint/nn/layer/activation.py +276 -1
  179. mindspore/mint/nn/layer/basic.py +123 -0
  180. mindspore/mint/nn/layer/conv.py +921 -0
  181. mindspore/mint/nn/layer/normalization.py +223 -28
  182. mindspore/mint/nn/layer/padding.py +797 -0
  183. mindspore/mint/nn/layer/pooling.py +235 -0
  184. mindspore/mint/optim/__init__.py +3 -1
  185. mindspore/mint/optim/adam.py +223 -0
  186. mindspore/mint/optim/adamw.py +26 -19
  187. mindspore/mint/optim/sgd.py +171 -0
  188. mindspore/mint/special/__init__.py +2 -1
  189. mindspore/msobj140.dll +0 -0
  190. mindspore/mspdb140.dll +0 -0
  191. mindspore/mspdbcore.dll +0 -0
  192. mindspore/mspdbst.dll +0 -0
  193. mindspore/mspft140.dll +0 -0
  194. mindspore/msvcdis140.dll +0 -0
  195. mindspore/msvcp140_1.dll +0 -0
  196. mindspore/msvcp140_2.dll +0 -0
  197. mindspore/msvcp140_atomic_wait.dll +0 -0
  198. mindspore/msvcp140_codecvt_ids.dll +0 -0
  199. mindspore/multiprocessing/__init__.py +5 -0
  200. mindspore/nn/__init__.py +4 -1
  201. mindspore/nn/cell.py +1370 -189
  202. mindspore/nn/dynamic_lr.py +2 -1
  203. mindspore/nn/layer/activation.py +29 -27
  204. mindspore/nn/layer/basic.py +51 -35
  205. mindspore/nn/layer/channel_shuffle.py +3 -3
  206. mindspore/nn/layer/container.py +1 -1
  207. mindspore/nn/layer/conv.py +22 -17
  208. mindspore/nn/layer/embedding.py +12 -11
  209. mindspore/nn/layer/normalization.py +56 -49
  210. mindspore/nn/layer/padding.py +4 -3
  211. mindspore/nn/layer/pooling.py +120 -42
  212. mindspore/nn/layer/rnn_cells.py +1 -1
  213. mindspore/nn/layer/rnns.py +2 -1
  214. mindspore/nn/layer/timedistributed.py +5 -5
  215. mindspore/nn/layer/transformer.py +59 -36
  216. mindspore/nn/learning_rate_schedule.py +8 -4
  217. mindspore/nn/loss/loss.py +58 -55
  218. mindspore/nn/optim/ada_grad.py +7 -5
  219. mindspore/nn/optim/adadelta.py +11 -9
  220. mindspore/nn/optim/adafactor.py +1 -1
  221. mindspore/nn/optim/adam.py +17 -13
  222. mindspore/nn/optim/adamax.py +8 -7
  223. mindspore/nn/optim/adasum.py +5 -5
  224. mindspore/nn/optim/asgd.py +1 -1
  225. mindspore/nn/optim/ftrl.py +11 -9
  226. mindspore/nn/optim/lamb.py +1 -1
  227. mindspore/nn/optim/lars.py +1 -4
  228. mindspore/nn/optim/lazyadam.py +12 -10
  229. mindspore/nn/optim/momentum.py +7 -6
  230. mindspore/nn/optim/optimizer.py +3 -3
  231. mindspore/nn/optim/proximal_ada_grad.py +12 -10
  232. mindspore/nn/optim/rmsprop.py +13 -12
  233. mindspore/nn/optim/rprop.py +11 -9
  234. mindspore/nn/optim/sgd.py +9 -6
  235. mindspore/nn/optim/tft_wrapper.py +5 -2
  236. mindspore/nn/optim/thor.py +2 -1
  237. mindspore/nn/probability/bijector/bijector.py +17 -11
  238. mindspore/nn/probability/bijector/gumbel_cdf.py +5 -5
  239. mindspore/nn/probability/bijector/invert.py +2 -2
  240. mindspore/nn/probability/bijector/scalar_affine.py +3 -3
  241. mindspore/nn/probability/bijector/softplus.py +3 -2
  242. mindspore/nn/probability/distribution/beta.py +3 -3
  243. mindspore/nn/probability/distribution/categorical.py +1 -1
  244. mindspore/nn/probability/distribution/cauchy.py +4 -2
  245. mindspore/nn/probability/distribution/exponential.py +6 -7
  246. mindspore/nn/probability/distribution/gamma.py +2 -2
  247. mindspore/nn/probability/distribution/gumbel.py +2 -2
  248. mindspore/nn/probability/distribution/half_normal.py +5 -3
  249. mindspore/nn/probability/distribution/logistic.py +5 -3
  250. mindspore/nn/probability/distribution/poisson.py +1 -1
  251. mindspore/nn/probability/distribution/uniform.py +5 -3
  252. mindspore/nn/reinforcement/_tensors_queue.py +1 -1
  253. mindspore/nn/reinforcement/tensor_array.py +1 -1
  254. mindspore/nn/utils/init.py +13 -11
  255. mindspore/nn/wrap/__init__.py +6 -6
  256. mindspore/nn/wrap/cell_wrapper.py +181 -122
  257. mindspore/nn/wrap/grad_reducer.py +45 -36
  258. mindspore/nn/wrap/loss_scale.py +6 -7
  259. mindspore/numpy/array_creations.py +63 -65
  260. mindspore/numpy/array_ops.py +149 -144
  261. mindspore/numpy/logic_ops.py +41 -42
  262. mindspore/numpy/math_ops.py +365 -363
  263. mindspore/numpy/utils.py +17 -18
  264. mindspore/numpy/utils_const.py +5 -6
  265. mindspore/opencv_core452.dll +0 -0
  266. mindspore/opencv_imgcodecs452.dll +0 -0
  267. mindspore/opencv_imgproc452.dll +0 -0
  268. mindspore/ops/__init__.py +5 -3
  269. mindspore/ops/_grad_experimental/grad_comm_ops.py +112 -16
  270. mindspore/ops/_grad_experimental/grad_debug_ops.py +14 -2
  271. mindspore/ops/_grad_experimental/grad_inner_ops.py +9 -0
  272. mindspore/ops/_grad_experimental/grad_math_ops.py +2 -1
  273. mindspore/ops/_grad_experimental/taylor_rule.py +29 -0
  274. mindspore/ops/_op_impl/cpu/__init__.py +1 -0
  275. mindspore/ops/_op_impl/cpu/raise_op.py +28 -0
  276. mindspore/ops/_register_for_op.py +0 -11
  277. mindspore/{ops_generate → ops/_utils}/arg_dtype_cast.py +123 -4
  278. mindspore/{ops_generate → ops/_utils}/arg_handler.py +3 -65
  279. mindspore/ops/_vmap/vmap_array_ops.py +27 -25
  280. mindspore/ops/_vmap/vmap_base.py +0 -2
  281. mindspore/ops/_vmap/vmap_grad_nn_ops.py +21 -14
  282. mindspore/ops/_vmap/vmap_math_ops.py +15 -16
  283. mindspore/ops/_vmap/vmap_nn_ops.py +29 -42
  284. mindspore/ops/auto_generate/__init__.py +4 -3
  285. mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +236 -46
  286. mindspore/ops/auto_generate/gen_extend_func.py +764 -124
  287. mindspore/ops/auto_generate/gen_ops_def.py +4018 -2264
  288. mindspore/ops/auto_generate/gen_ops_prim.py +15463 -5037
  289. mindspore/ops/auto_generate/pyboost_inner_prim.py +221 -87
  290. mindspore/ops/composite/__init__.py +2 -1
  291. mindspore/ops/composite/base.py +20 -25
  292. mindspore/ops/composite/math_ops.py +6 -16
  293. mindspore/ops/composite/multitype_ops/__init__.py +5 -2
  294. mindspore/ops/composite/multitype_ops/_compile_utils.py +228 -30
  295. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -2
  296. mindspore/ops/composite/multitype_ops/add_impl.py +2 -1
  297. mindspore/ops/composite/multitype_ops/bitwise_and_impl.py +2 -1
  298. mindspore/ops/composite/multitype_ops/bitwise_or_impl.py +2 -1
  299. mindspore/ops/composite/multitype_ops/bitwise_xor_impl.py +2 -1
  300. mindspore/ops/composite/multitype_ops/div_impl.py +6 -4
  301. mindspore/ops/composite/multitype_ops/equal_impl.py +4 -3
  302. mindspore/ops/composite/multitype_ops/floordiv_impl.py +2 -1
  303. mindspore/ops/composite/multitype_ops/getitem_impl.py +3 -2
  304. mindspore/ops/composite/multitype_ops/greater_equal_impl.py +4 -3
  305. mindspore/ops/composite/multitype_ops/greater_impl.py +4 -3
  306. mindspore/ops/composite/multitype_ops/in_impl.py +2 -1
  307. mindspore/ops/composite/multitype_ops/invert_impl.py +50 -0
  308. mindspore/ops/composite/multitype_ops/left_shift_impl.py +2 -1
  309. mindspore/ops/composite/multitype_ops/less_equal_impl.py +4 -3
  310. mindspore/ops/composite/multitype_ops/less_impl.py +4 -3
  311. mindspore/ops/composite/multitype_ops/logic_not_impl.py +3 -2
  312. mindspore/ops/composite/multitype_ops/logical_and_impl.py +2 -1
  313. mindspore/ops/composite/multitype_ops/logical_or_impl.py +2 -1
  314. mindspore/ops/composite/multitype_ops/mod_impl.py +2 -1
  315. mindspore/ops/composite/multitype_ops/mul_impl.py +3 -2
  316. mindspore/ops/composite/multitype_ops/negative_impl.py +2 -1
  317. mindspore/ops/composite/multitype_ops/not_equal_impl.py +2 -1
  318. mindspore/ops/composite/multitype_ops/not_in_impl.py +2 -1
  319. mindspore/ops/composite/multitype_ops/ones_like_impl.py +18 -0
  320. mindspore/ops/composite/multitype_ops/pow_impl.py +2 -30
  321. mindspore/ops/composite/multitype_ops/right_shift_impl.py +2 -1
  322. mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
  323. mindspore/ops/composite/multitype_ops/sub_impl.py +2 -1
  324. mindspore/ops/function/__init__.py +40 -2
  325. mindspore/ops/function/_add_attr_func.py +58 -0
  326. mindspore/ops/function/array_func.py +2089 -2403
  327. mindspore/ops/function/clip_func.py +80 -23
  328. mindspore/ops/function/debug_func.py +57 -57
  329. mindspore/ops/function/grad/__init__.py +1 -0
  330. mindspore/ops/function/grad/grad_func.py +104 -71
  331. mindspore/ops/function/image_func.py +2 -2
  332. mindspore/ops/function/linalg_func.py +47 -78
  333. mindspore/ops/function/math_func.py +4501 -3802
  334. mindspore/ops/function/nn_func.py +1726 -620
  335. mindspore/ops/function/other_func.py +159 -1
  336. mindspore/ops/function/parameter_func.py +18 -84
  337. mindspore/ops/function/random_func.py +440 -387
  338. mindspore/ops/function/reshard_func.py +4 -70
  339. mindspore/ops/function/sparse_func.py +3 -3
  340. mindspore/ops/function/sparse_unary_func.py +6 -6
  341. mindspore/ops/function/spectral_func.py +25 -58
  342. mindspore/ops/function/vmap_func.py +24 -17
  343. mindspore/ops/functional.py +22 -7
  344. mindspore/ops/functional_overload.py +1440 -0
  345. mindspore/ops/op_info_register.py +32 -244
  346. mindspore/ops/operations/__init__.py +13 -7
  347. mindspore/ops/operations/_custom_ops_utils.py +247 -0
  348. mindspore/ops/operations/_embedding_cache_ops.py +4 -4
  349. mindspore/ops/operations/_grad_ops.py +2 -43
  350. mindspore/ops/operations/_infer_ops.py +2 -1
  351. mindspore/ops/operations/_inner_ops.py +43 -84
  352. mindspore/ops/operations/_ms_kernel.py +4 -10
  353. mindspore/ops/operations/_rl_inner_ops.py +1 -1
  354. mindspore/ops/operations/_scalar_ops.py +3 -2
  355. mindspore/ops/operations/_sequence_ops.py +1 -1
  356. mindspore/ops/operations/_tensor_array.py +1 -1
  357. mindspore/ops/operations/array_ops.py +81 -324
  358. mindspore/ops/operations/comm_ops.py +154 -108
  359. mindspore/ops/operations/custom_ops.py +232 -78
  360. mindspore/ops/operations/debug_ops.py +153 -59
  361. mindspore/ops/operations/inner_ops.py +7 -5
  362. mindspore/ops/operations/linalg_ops.py +1 -57
  363. mindspore/ops/operations/manually_defined/_inner.py +1 -1
  364. mindspore/ops/operations/manually_defined/ops_def.py +928 -180
  365. mindspore/ops/operations/math_ops.py +32 -234
  366. mindspore/ops/operations/nn_ops.py +210 -498
  367. mindspore/ops/operations/other_ops.py +62 -9
  368. mindspore/ops/operations/random_ops.py +13 -7
  369. mindspore/ops/operations/reshard_ops.py +1 -1
  370. mindspore/ops/operations/sparse_ops.py +2 -2
  371. mindspore/ops/primitive.py +66 -53
  372. mindspore/ops/tensor_method.py +1888 -0
  373. mindspore/ops_generate/__init__.py +0 -5
  374. mindspore/ops_generate/aclnn/__init__.py +0 -0
  375. mindspore/ops_generate/aclnn/aclnn_kernel_register_auto_cc_generator.py +135 -0
  376. mindspore/ops_generate/aclnn/gen_aclnn_implement.py +257 -0
  377. mindspore/ops_generate/api/__init__.py +0 -0
  378. mindspore/ops_generate/api/add_tensor_docs_generator.py +56 -0
  379. mindspore/ops_generate/api/cpp_create_prim_instance_helper_generator.py +105 -0
  380. mindspore/ops_generate/api/functional_map_cpp_generator.py +504 -0
  381. mindspore/ops_generate/api/functional_overload_py_generator.py +112 -0
  382. mindspore/ops_generate/api/functions_cc_generator.py +237 -0
  383. mindspore/ops_generate/api/gen_api.py +103 -0
  384. mindspore/ops_generate/api/op_api_proto.py +235 -0
  385. mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +461 -0
  386. mindspore/ops_generate/common/__init__.py +0 -0
  387. mindspore/ops_generate/common/base_generator.py +11 -0
  388. mindspore/ops_generate/common/gen_constants.py +91 -0
  389. mindspore/ops_generate/common/gen_utils.py +348 -0
  390. mindspore/ops_generate/common/op_proto.py +473 -0
  391. mindspore/ops_generate/common/template.py +523 -0
  392. mindspore/ops_generate/gen_ops.py +22 -1069
  393. mindspore/ops_generate/op_def/__init__.py +0 -0
  394. mindspore/ops_generate/op_def/gen_op_def.py +90 -0
  395. mindspore/ops_generate/op_def/lite_ops_cpp_generator.py +191 -0
  396. mindspore/ops_generate/op_def/ops_def_cc_generator.py +299 -0
  397. mindspore/ops_generate/op_def/ops_def_h_generator.py +74 -0
  398. mindspore/ops_generate/op_def/ops_name_h_generator.py +83 -0
  399. mindspore/ops_generate/op_def/ops_primitive_h_generator.py +125 -0
  400. mindspore/ops_generate/op_def_py/__init__.py +0 -0
  401. mindspore/ops_generate/op_def_py/gen_op_def_py.py +47 -0
  402. mindspore/ops_generate/op_def_py/op_def_py_generator.py +132 -0
  403. mindspore/ops_generate/op_def_py/op_prim_py_generator.py +489 -0
  404. mindspore/ops_generate/pyboost/__init__.py +0 -0
  405. mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +139 -0
  406. mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +93 -0
  407. mindspore/ops_generate/pyboost/gen_pyboost_func.py +175 -0
  408. mindspore/ops_generate/pyboost/op_template_parser.py +517 -0
  409. mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +407 -0
  410. mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +100 -0
  411. mindspore/ops_generate/pyboost/pyboost_functions_py_generator.py +148 -0
  412. mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +155 -0
  413. mindspore/ops_generate/pyboost/pyboost_inner_prim_generator.py +132 -0
  414. mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +272 -0
  415. mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +938 -0
  416. mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +357 -0
  417. mindspore/ops_generate/{pyboost_utils.py → pyboost/pyboost_utils.py} +179 -36
  418. mindspore/ops_generate/resources/__init__.py +0 -0
  419. mindspore/ops_generate/resources/resource_list.py +30 -0
  420. mindspore/ops_generate/resources/resource_loader.py +36 -0
  421. mindspore/ops_generate/resources/resource_manager.py +64 -0
  422. mindspore/ops_generate/resources/yaml_loader.py +88 -0
  423. mindspore/ops_generate/tensor_py_cc_generator.py +122 -0
  424. mindspore/parallel/__init__.py +7 -3
  425. mindspore/parallel/_auto_parallel_context.py +152 -34
  426. mindspore/parallel/_cell_wrapper.py +130 -15
  427. mindspore/parallel/_parallel_serialization.py +107 -5
  428. mindspore/parallel/_ps_context.py +1 -1
  429. mindspore/parallel/_recovery_context.py +7 -2
  430. mindspore/parallel/_tensor.py +142 -18
  431. mindspore/parallel/_utils.py +199 -23
  432. mindspore/parallel/algo_parameter_config.py +4 -4
  433. mindspore/parallel/auto_parallel.py +732 -0
  434. mindspore/parallel/checkpoint_convert.py +159 -0
  435. mindspore/parallel/checkpoint_transform.py +698 -35
  436. mindspore/parallel/cluster/process_entity/_api.py +276 -50
  437. mindspore/parallel/cluster/process_entity/_utils.py +41 -6
  438. mindspore/parallel/cluster/run.py +21 -4
  439. mindspore/parallel/function/__init__.py +24 -0
  440. mindspore/parallel/function/reshard_func.py +259 -0
  441. mindspore/parallel/nn/__init__.py +25 -0
  442. mindspore/parallel/nn/parallel_cell_wrapper.py +263 -0
  443. mindspore/parallel/nn/parallel_grad_reducer.py +169 -0
  444. mindspore/parallel/parameter_broadcast.py +25 -14
  445. mindspore/parallel/shard.py +137 -58
  446. mindspore/parallel/transform_safetensors.py +363 -305
  447. mindspore/pgodb140.dll +0 -0
  448. mindspore/pgort140.dll +0 -0
  449. mindspore/profiler/__init__.py +22 -5
  450. mindspore/profiler/analysis/__init__.py +0 -0
  451. mindspore/profiler/analysis/parser/__init__.py +0 -0
  452. mindspore/profiler/analysis/parser/ascend_cann_parser.py +170 -0
  453. mindspore/profiler/analysis/parser/base_parser.py +158 -0
  454. mindspore/profiler/analysis/parser/framework_cann_relation_parser.py +45 -0
  455. mindspore/profiler/analysis/parser/ms_framework_parser.py +142 -0
  456. mindspore/profiler/analysis/parser/ms_minddata_parser.py +145 -0
  457. mindspore/profiler/analysis/parser/timeline_assembly_factory/__init__.py +0 -0
  458. mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +264 -0
  459. mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +40 -0
  460. mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +106 -0
  461. mindspore/profiler/analysis/parser/timeline_creator/__init__.py +0 -0
  462. mindspore/profiler/analysis/parser/timeline_creator/base_timeline_creator.py +44 -0
  463. mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +90 -0
  464. mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +76 -0
  465. mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +103 -0
  466. mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +134 -0
  467. mindspore/profiler/analysis/parser/timeline_event/__init__.py +0 -0
  468. mindspore/profiler/analysis/parser/timeline_event/base_event.py +233 -0
  469. mindspore/profiler/analysis/parser/timeline_event/cpu_op_event.py +47 -0
  470. mindspore/profiler/analysis/parser/timeline_event/flow_event.py +36 -0
  471. mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +415 -0
  472. mindspore/profiler/analysis/parser/timeline_event/msprof_event.py +73 -0
  473. mindspore/profiler/analysis/parser/timeline_event/scope_layer_event.py +53 -0
  474. mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +146 -0
  475. mindspore/profiler/analysis/task_manager.py +131 -0
  476. mindspore/profiler/analysis/time_converter.py +84 -0
  477. mindspore/profiler/analysis/viewer/__init__.py +0 -0
  478. mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +372 -0
  479. mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +87 -0
  480. mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +250 -0
  481. mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +320 -0
  482. mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +327 -0
  483. mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +376 -0
  484. mindspore/profiler/analysis/viewer/ascend_timeline_viewer.py +58 -0
  485. mindspore/profiler/analysis/viewer/base_viewer.py +26 -0
  486. mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +96 -0
  487. mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +581 -0
  488. mindspore/profiler/analysis/work_flow.py +73 -0
  489. mindspore/profiler/common/ascend_msprof_exporter.py +139 -0
  490. mindspore/profiler/common/command_executor.py +90 -0
  491. mindspore/profiler/common/constant.py +186 -3
  492. mindspore/profiler/common/file_manager.py +208 -0
  493. mindspore/profiler/common/log.py +130 -0
  494. mindspore/profiler/common/msprof_cmd_tool.py +221 -0
  495. mindspore/profiler/common/path_manager.py +395 -0
  496. mindspore/profiler/common/process_bar.py +168 -0
  497. mindspore/profiler/common/process_pool.py +9 -3
  498. mindspore/profiler/common/profiler_context.py +500 -0
  499. mindspore/profiler/common/profiler_info.py +304 -0
  500. mindspore/profiler/common/profiler_meta_data.py +74 -0
  501. mindspore/profiler/common/profiler_output_path.py +284 -0
  502. mindspore/profiler/common/profiler_parameters.py +251 -0
  503. mindspore/profiler/common/profiler_path_manager.py +179 -0
  504. mindspore/profiler/common/record_function.py +76 -0
  505. mindspore/profiler/common/tlv_decoder.py +76 -0
  506. mindspore/profiler/common/util.py +75 -2
  507. mindspore/profiler/dynamic_profiler.py +341 -75
  508. mindspore/profiler/envprofiler.py +163 -0
  509. mindspore/profiler/experimental_config.py +197 -0
  510. mindspore/profiler/mstx.py +242 -0
  511. mindspore/profiler/platform/__init__.py +21 -0
  512. mindspore/profiler/platform/base_profiler.py +40 -0
  513. mindspore/profiler/platform/cpu_profiler.py +124 -0
  514. mindspore/profiler/platform/gpu_profiler.py +74 -0
  515. mindspore/profiler/platform/npu_profiler.py +335 -0
  516. mindspore/profiler/profiler.py +1073 -90
  517. mindspore/profiler/profiler_action_controller.py +187 -0
  518. mindspore/profiler/profiler_interface.py +118 -0
  519. mindspore/profiler/schedule.py +243 -0
  520. mindspore/rewrite/api/node.py +15 -13
  521. mindspore/rewrite/api/symbol_tree.py +2 -3
  522. mindspore/run_check/_check_version.py +27 -20
  523. mindspore/run_check/run_check.py +1 -1
  524. mindspore/runtime/__init__.py +37 -0
  525. mindspore/runtime/device.py +27 -0
  526. mindspore/runtime/event.py +209 -0
  527. mindspore/runtime/executor.py +177 -0
  528. mindspore/runtime/memory.py +409 -0
  529. mindspore/runtime/stream.py +460 -0
  530. mindspore/runtime/thread_bind_core.py +401 -0
  531. mindspore/safeguard/rewrite_obfuscation.py +12 -9
  532. mindspore/swresample-4.dll +0 -0
  533. mindspore/swscale-6.dll +0 -0
  534. mindspore/tbbmalloc.dll +0 -0
  535. mindspore/tinyxml2.dll +0 -0
  536. mindspore/train/__init__.py +8 -8
  537. mindspore/train/_utils.py +88 -25
  538. mindspore/train/amp.py +9 -5
  539. mindspore/train/callback/__init__.py +2 -2
  540. mindspore/train/callback/_callback.py +2 -16
  541. mindspore/train/callback/_checkpoint.py +53 -55
  542. mindspore/train/callback/_cluster_monitor.py +14 -18
  543. mindspore/train/callback/_early_stop.py +1 -1
  544. mindspore/train/callback/_flops_collector.py +103 -68
  545. mindspore/train/callback/_history.py +8 -5
  546. mindspore/train/callback/_lambda_callback.py +2 -2
  547. mindspore/train/callback/_landscape.py +0 -3
  548. mindspore/train/callback/_loss_monitor.py +2 -1
  549. mindspore/train/callback/_on_request_exit.py +6 -5
  550. mindspore/train/callback/_reduce_lr_on_plateau.py +11 -6
  551. mindspore/train/callback/_summary_collector.py +52 -19
  552. mindspore/train/callback/_time_monitor.py +2 -1
  553. mindspore/train/callback/{_tft_register.py → _train_fault_tolerance.py} +204 -107
  554. mindspore/train/data_sink.py +25 -2
  555. mindspore/train/dataset_helper.py +15 -16
  556. mindspore/train/loss_scale_manager.py +8 -7
  557. mindspore/train/metrics/accuracy.py +3 -3
  558. mindspore/train/metrics/confusion_matrix.py +9 -9
  559. mindspore/train/metrics/error.py +3 -3
  560. mindspore/train/metrics/hausdorff_distance.py +4 -4
  561. mindspore/train/metrics/mean_surface_distance.py +3 -3
  562. mindspore/train/metrics/metric.py +0 -12
  563. mindspore/train/metrics/occlusion_sensitivity.py +4 -2
  564. mindspore/train/metrics/precision.py +11 -10
  565. mindspore/train/metrics/recall.py +9 -9
  566. mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
  567. mindspore/train/mind_ir_pb2.py +174 -46
  568. mindspore/train/model.py +184 -113
  569. mindspore/train/serialization.py +622 -978
  570. mindspore/train/summary/_summary_adapter.py +2 -2
  571. mindspore/train/summary/summary_record.py +2 -3
  572. mindspore/train/train_thor/model_thor.py +1 -1
  573. mindspore/turbojpeg.dll +0 -0
  574. mindspore/utils/__init__.py +6 -3
  575. mindspore/utils/dryrun.py +140 -0
  576. mindspore/utils/hooks.py +81 -0
  577. mindspore/utils/runtime_execution_order_check.py +550 -0
  578. mindspore/utils/utils.py +138 -4
  579. mindspore/vcmeta.dll +0 -0
  580. mindspore/vcruntime140.dll +0 -0
  581. mindspore/vcruntime140_1.dll +0 -0
  582. mindspore/version.py +1 -1
  583. {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/METADATA +3 -3
  584. {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/RECORD +587 -418
  585. {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/entry_points.txt +1 -1
  586. mindspore/_install_custom.py +0 -43
  587. mindspore/common/_register_for_adapter.py +0 -74
  588. mindspore/common/_tensor_overload.py +0 -139
  589. mindspore/mindspore_np_dtype.dll +0 -0
  590. mindspore/ops/auto_generate/gen_arg_dtype_cast.py +0 -252
  591. mindspore/ops/auto_generate/gen_arg_handler.py +0 -197
  592. mindspore/ops/operations/_opaque_predicate_registry.py +0 -41
  593. mindspore/ops_generate/gen_aclnn_implement.py +0 -263
  594. mindspore/ops_generate/gen_ops_inner_prim.py +0 -131
  595. mindspore/ops_generate/gen_pyboost_func.py +0 -1052
  596. mindspore/ops_generate/gen_utils.py +0 -209
  597. mindspore/ops_generate/op_proto.py +0 -145
  598. mindspore/ops_generate/template.py +0 -261
  599. mindspore/profiler/envprofiling.py +0 -254
  600. mindspore/profiler/profiling.py +0 -1926
  601. {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/WHEEL +0 -0
  602. {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,36 @@
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
+ """Flow event classes for representing event relationships in Chrome trace format."""
16
+
17
+ from mindspore.profiler.common.constant import EventConstant
18
+ from mindspore.profiler.analysis.parser.timeline_event.base_event import FlowEvent
19
+
20
+
21
+ class FlowStartEvent(FlowEvent):
22
+ """Flow start event class for marking the beginning of a flow relationship."""
23
+
24
+ @property
25
+ def ph(self) -> str:
26
+ """Get event phase ('s' for flow start)."""
27
+ return EventConstant.START_FLOW
28
+
29
+
30
+ class FlowEndEvent(FlowEvent):
31
+ """Flow end event class for marking the end of a flow relationship."""
32
+
33
+ @property
34
+ def ph(self) -> str:
35
+ """Get event phase ('f' for flow end)."""
36
+ return EventConstant.END_FLOW
@@ -0,0 +1,415 @@
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
+ """Framework event classes for timeline analysis."""
16
+ from enum import Enum
17
+ from decimal import Decimal
18
+ from typing import Dict, Optional, List
19
+
20
+ from mindspore import log as logger
21
+ from mindspore.profiler.common.constant import EventConstant, FileConstant
22
+ from mindspore.profiler.analysis.time_converter import TimeConverter
23
+ from mindspore.profiler.analysis.parser.timeline_event.base_event import (
24
+ BaseEvent,
25
+ CompleteEvent,
26
+ MetaEvent,
27
+ InstantEvent,
28
+ )
29
+
30
+
31
+ class ProfilerStage(Enum):
32
+ """Profiler stage enumeration."""
33
+ DEFAULT = "Default"
34
+ PYTHON = "Python"
35
+ CAPTURE = "Capture"
36
+ RUN_GRAPH = "RunGraph"
37
+ RUN_GRAD = "RunGrad"
38
+ RUN_OP = "RunOp"
39
+ ASNUMPY = "Asnumpy"
40
+ COMPILE_GRAD_GRAPH = "CompileGradGraph"
41
+ WAIT_PIPELINE = "WaitPipeline"
42
+ SYNC_STREAM = "SyncStream"
43
+
44
+
45
+ class ProfilerModule(Enum):
46
+ """Profiler module enumeration."""
47
+ DEFAULT = "Default"
48
+ GRAPH_EXECUTOR_PY = "GraphExecutorPy"
49
+ RUNTIME_FRAMEWORK = "RuntimeFramework"
50
+ PYNATIVE_FRAMEWORK = "PynativeFramework"
51
+ KERNEL = "Kernel"
52
+ PYTHON = "Python"
53
+ CAPTURE = "Capture"
54
+ OTHER = "Other"
55
+
56
+
57
+ class ProfilerEvent(Enum):
58
+ """Profiler event enumeration."""
59
+ DEFAULT = "Default"
60
+ KERNEL_INFER = "KernelInfer"
61
+ KERNEL_RESIZE = "KernelResize"
62
+ KERNEL_INFER_AND_RESIZE = "KernelInferAndResize"
63
+ KERNEL_LAUNCH = "KernelLaunch"
64
+ KERNEL_LAUNCH_CALLBACK = "KernelLaunckCallback"
65
+ KERNEL_UPDATE = "KernelUpdate"
66
+ KERNEL_PREPARE_DATA = "KernelPrepareData"
67
+ GRAPH_LAUNCH = "GraphLaunch"
68
+ INPUT_PROCESS = "InputProcess"
69
+ OUTPUT_PROCESS = "OutputProcess"
70
+ WAIT_TASK_FINISH = "WaitTaskFinish"
71
+ PRE_LAUNCH = "PreLaunch"
72
+ POST_LAUNCH = "PostLaunch"
73
+ SEND_OUTPUT = "SendOutput"
74
+ MEMORY_ALLOC = "MemoryAlloc"
75
+ MEMORY_FREE = "MemoryFree"
76
+ COPY_DATA = "CopyData"
77
+ STREAM_SYNC = "StreamSync"
78
+ PROCESS_MULTI_STREAM = "ProcessMultiStream"
79
+ WAIT_KERNELS_INFER_FINISH = "WaitKernelsInferFinish"
80
+ WAIT_KERNELS_RESIZE_FINISH = "WaitKernelsResizeFinish"
81
+ WAIT_KERNELS_LAUNCH_FINISH = "WaitKernelsLaunchFinish"
82
+ # Inner event is not counted in the total time.
83
+ KERNEL_INFER_INNER = "KernelInferInner"
84
+ KERNEL_INFER_DATA_SYNC = "KernelInferDataSync"
85
+ KERNEL_RESIZE_INNER = "KernelResizeInner"
86
+ KERNEL_LAUNCH_INNER = "KernelLaunchInner"
87
+ BACKEND_GRAPH_RUN_INNER = "BackendGraphRunInner"
88
+ # PyNative Pipeline
89
+ RUN_OP = "RunOp"
90
+ PYNATIVE_FRONTEND_TASK = "PyNativeFrontendTask"
91
+ PYNATIVE_BACKEND_TASK = "PyNativeBackendTask"
92
+ PYNATIVE_DEVICE_TASK = "PyNativeDeviceTask"
93
+ PYNATIVE_LAUNCH_TASK = "PyNativeLaunchTask"
94
+ PYNATIVE_BPROP_TASK = "PyNativeBpropTask"
95
+ WAIT = "Wait"
96
+ # PyNative inner Event
97
+ PYNATIVE_GIL_ACQUIRE = "PyNativeGilAcquire"
98
+ PYNATIVE_CAST = "PyNativeCast"
99
+ PYNATIVE_INFER = "PyNativeInfer"
100
+ PYNATIVE_OP_COMPILE = "PyNativeOpCompile"
101
+ PYNATIVE_GRAD_EXPANDER = "PyNativeGradExpander"
102
+ PYNATIVE_GRAD_UPDATE_SENS = "PyNativeGradUpdateSens"
103
+ PYNATIVE_GRAD_CLEAR_TOP_CELL = "PyNativeGradClearTopCell"
104
+ PYNATIVE_GRAD_CLEAR_AUTO_GRAD_CELL = "PyNativeGradClearAutoGradCell"
105
+ # PyBoost
106
+ PYBOOST_INFER_OUTPUT = "PyBoostInferOutput"
107
+ PYBOOST_INFER_BY_OP_DEF = "PyBoostInferByOpDef"
108
+ PYBOOST_CREATE_OUTPUT_TENSOR = "PyBoostCreateOutputTensor"
109
+ PYBOOST_DEVICE_TASK = "PyBoostDeviceTask"
110
+ PYBOOST_MALLOC_INPUT = "PyBoostMallocInput"
111
+ PYBOOST_MALLOC_OUTPUT = "PyBoostMallocOutput"
112
+ PYBOOST_LAUNCH_ACLLNN = "PyBoostLaunchAclnn"
113
+ # pybind api
114
+ PYNATIVE_NEW_GRAPH = "PyNativeNewGraph"
115
+ PYNATIVE_END_GRAPH = "PyNativeEndGraph"
116
+ # Python
117
+ PYTHON_OBSERVED = "PythonObserved"
118
+ # Capture Event
119
+ CAPTURE_RUN_GRAPH = "CaptureRunGraph"
120
+ CAPTURE_PROCESS = "CaptureProcess"
121
+ CAPTURE_COMPILE = "CaptureCompile"
122
+ CAPTURE_GUARD = "CaptureGuard"
123
+ # AclNN
124
+ ACLNN_HIT_CACHE_STAGE_1 = "AclnnHitCacheStage1"
125
+ ACLNN_HIT_CACHE_STAGE_2 = "AclnnHitCacheStage2"
126
+ ACLNN_MISS_CACHE_STAGE_1 = "AclnnMissCacheStage1"
127
+ ACLNN_MISS_CACHE_STAGE_2 = "AclnnMissCacheStage2"
128
+ ACLNN_UPDATE_ADDRESS = "AclnnUpdateAddress"
129
+ ACLNN_RUN_OP = "AclnnRunOp"
130
+ # NoGraph grad
131
+ RUN_EXPANDER_FUNC = "RunExpanderFunc"
132
+ EMIT_OP = "EmitOp"
133
+ EXECUTE = "Execute"
134
+ RELEASE_RESOURCE = "ReleaseResource"
135
+ NATIVE_FUNC = "NativeFunc"
136
+
137
+
138
+ class FwkFixSizeFormat:
139
+ """Format definition for framework fixed-size data."""
140
+
141
+ OpRangeStruct = "<5Qi3Hb3?"
142
+
143
+
144
+ class OpRangeStructField(Enum):
145
+ """Field indices in operator range structure fixed-size data."""
146
+
147
+ THREAD_ID = 0
148
+ FLOW_ID = 1
149
+ STEP = 2
150
+ START_TIME_NS = 3
151
+ END_TIME_NS = 4
152
+ PROCESS_ID = 5
153
+ MODULE_INDEX = 6
154
+ EVENT_INDEX = 7
155
+ STAGE_INDEX = 8
156
+ LEVEL = 9
157
+ IS_GRAPH_DATA = 10
158
+ IS_STAGE = 11
159
+ IS_STACK = 12
160
+ NAME = 13
161
+ FULL_NAME = 14
162
+ MODULE_GRAPH = 15
163
+ EVENT_GRAPH = 16
164
+ CUSTOM_INFO = 17
165
+
166
+
167
+ class FwkProfileDataField:
168
+ """Framework profile data field."""
169
+
170
+ @staticmethod
171
+ def _get_enum_value(enum_class, index: int, enum_type: str) -> str:
172
+ """
173
+ Get enum value by index.
174
+ Args:
175
+ enum_class: The enum class to get value from.
176
+ index: The index of the enum value.
177
+ enum_type: The type name of enum for logging.
178
+ Returns:
179
+ The enum value string.
180
+ """
181
+ try:
182
+ return list(enum_class)[index].value
183
+ except IndexError:
184
+ logger.warning(f"Invalid {enum_type} index: {index}")
185
+ return enum_class.DEFAULT.value
186
+
187
+ @staticmethod
188
+ def get_stage_value(index: int) -> str:
189
+ """Get stage value."""
190
+ return FwkProfileDataField._get_enum_value(ProfilerStage, index, "stage")
191
+
192
+ @staticmethod
193
+ def get_module_value(index: int) -> str:
194
+ """Get module value."""
195
+ return FwkProfileDataField._get_enum_value(ProfilerModule, index, "module")
196
+
197
+ @staticmethod
198
+ def get_event_value(index: int) -> str:
199
+ """Get event value."""
200
+ return FwkProfileDataField._get_enum_value(ProfilerEvent, index, "event")
201
+
202
+
203
+ class FwkEventMixin:
204
+ """Mixin class for common framework event functionality."""
205
+
206
+ def get_name(self) -> str:
207
+ """Get operator name."""
208
+ op_name = self._origin_data.get(OpRangeStructField.NAME.value, "")
209
+ is_stack = self.fix_size_data[OpRangeStructField.IS_STACK.value]
210
+ if is_stack:
211
+ return op_name
212
+
213
+ is_graph_data = self.fix_size_data[OpRangeStructField.IS_GRAPH_DATA.value]
214
+ is_stage = self.fix_size_data[OpRangeStructField.IS_STAGE.value]
215
+ full_name = self._origin_data.get(OpRangeStructField.FULL_NAME.value, "")
216
+
217
+ name = ""
218
+ if is_graph_data:
219
+ module_graph = self._origin_data.get(OpRangeStructField.MODULE_GRAPH.value, "")
220
+ event_graph = self._origin_data.get(OpRangeStructField.EVENT_GRAPH.value, "")
221
+ name = f"{module_graph}::{event_graph}::{op_name}"
222
+ elif is_stage:
223
+ stage_index = self.fix_size_data[OpRangeStructField.STAGE_INDEX.value]
224
+ name = FwkProfileDataField.get_stage_value(stage_index)
225
+ elif op_name != "flow":
226
+ module_index = self.fix_size_data[OpRangeStructField.MODULE_INDEX.value]
227
+ event_index = self.fix_size_data[OpRangeStructField.EVENT_INDEX.value]
228
+ module_name = FwkProfileDataField.get_module_value(module_index)
229
+ event_name = FwkProfileDataField.get_event_value(event_index)
230
+ name = f"{module_name}::{event_name}::{full_name}"
231
+ else:
232
+ name = full_name
233
+ return name
234
+
235
+ def get_custom_info(self) -> str:
236
+ """Get custom information."""
237
+ value = self._origin_data.get(OpRangeStructField.CUSTOM_INFO.value, None)
238
+ if value is None:
239
+ return ""
240
+ pairs = [pair.split(":") for pair in value.split(";") if pair]
241
+ info_dict = {k: v for k, v in pairs[0:2] if len(pairs) >= 2}
242
+ return str(info_dict)
243
+
244
+
245
+ class FwkCompleteEvent(FwkEventMixin, CompleteEvent):
246
+ """Framework complete event with duration."""
247
+
248
+ def __init__(self, data: Dict):
249
+ """Initialize framework complete event."""
250
+ super().__init__(data)
251
+ self.fix_size_data = self._origin_data[FileConstant.FIX_SIZE_DATA]
252
+ self._ts_cache = None
253
+ self._te_cache = None
254
+ self._dur_cache = None
255
+ self._name_cache = None
256
+ self._parent: Optional[BaseEvent] = None
257
+ self._children: List[BaseEvent] = []
258
+
259
+ @property
260
+ def parent(self) -> BaseEvent:
261
+ """Get parent event."""
262
+ return self._parent
263
+
264
+ @parent.setter
265
+ def parent(self, event: BaseEvent) -> None:
266
+ """Set parent event."""
267
+ self._parent = event
268
+
269
+ @property
270
+ def children(self) -> List[BaseEvent]:
271
+ """Get child events."""
272
+ return self._children
273
+
274
+ @property
275
+ def ts_raw(self) -> int:
276
+ """Get raw start timestamp."""
277
+ return self.fix_size_data[OpRangeStructField.START_TIME_NS.value]
278
+
279
+ @property
280
+ def ts(self) -> Decimal:
281
+ """Get start time in us."""
282
+ if not self._ts_cache:
283
+ self._ts_cache = TimeConverter.convert_syscnt_to_timestamp_us(
284
+ self.fix_size_data[OpRangeStructField.START_TIME_NS.value]
285
+ )
286
+ return self._ts_cache
287
+
288
+ @property
289
+ def te(self) -> Decimal:
290
+ """Get end time in us."""
291
+ if not self._te_cache:
292
+ self._te_cache = TimeConverter.convert_syscnt_to_timestamp_us(
293
+ self.fix_size_data[OpRangeStructField.END_TIME_NS.value]
294
+ )
295
+ return self._te_cache
296
+
297
+ @property
298
+ def dur(self) -> Decimal:
299
+ """Get duration in us."""
300
+ if not self._dur_cache:
301
+ self._dur_cache = self.te - self.ts
302
+ return self._dur_cache
303
+
304
+ @property
305
+ def pid(self) -> int:
306
+ """Get process ID."""
307
+ return int(EventConstant.MINDSPORE_PID)
308
+
309
+ @property
310
+ def tid(self) -> int:
311
+ """Get thread ID."""
312
+ return int(self.fix_size_data[OpRangeStructField.THREAD_ID.value])
313
+
314
+ @property
315
+ def id(self) -> int:
316
+ """Get event ID."""
317
+ return int(self.fix_size_data[OpRangeStructField.FLOW_ID.value])
318
+
319
+ @property
320
+ def name(self) -> str:
321
+ """Get operator name."""
322
+ if not self._name_cache:
323
+ self._name_cache = self.get_name()
324
+ return self._name_cache
325
+
326
+ @property
327
+ def step(self) -> int:
328
+ """Get step ID."""
329
+ return int(self.fix_size_data[OpRangeStructField.STEP.value])
330
+
331
+ @property
332
+ def is_stack(self) -> bool:
333
+ """Get is stack."""
334
+ return bool(self.fix_size_data[OpRangeStructField.IS_STACK.value])
335
+
336
+ @property
337
+ def cat(self) -> str:
338
+ """Get event category."""
339
+ return EventConstant.STACK_EVENT_CAT if self.is_stack else ""
340
+
341
+ @property
342
+ def level(self) -> int:
343
+ """Get event level."""
344
+ return int(self.fix_size_data[OpRangeStructField.LEVEL.value])
345
+
346
+ @property
347
+ def custom_info(self) -> str:
348
+ """Get custom information."""
349
+ return self.get_custom_info()
350
+
351
+
352
+ class FwkInstantEvent(FwkEventMixin, InstantEvent):
353
+ """Framework instant event without duration."""
354
+
355
+ def __init__(self, data: Dict):
356
+ """Initialize framework instant event."""
357
+ super().__init__(data)
358
+ self.fix_size_data = self._origin_data[FileConstant.FIX_SIZE_DATA]
359
+ self._ts_cache = None
360
+ self._name_cache = None
361
+
362
+ @property
363
+ def ts_raw(self) -> int:
364
+ """Get raw start timestamp."""
365
+ return self.fix_size_data[OpRangeStructField.START_TIME_NS.value]
366
+
367
+ @property
368
+ def ts(self) -> Decimal:
369
+ """Get time in us."""
370
+ if not self._ts_cache:
371
+ self._ts_cache = TimeConverter.convert_syscnt_to_timestamp_us(
372
+ self.fix_size_data[OpRangeStructField.START_TIME_NS.value]
373
+ )
374
+ return self._ts_cache
375
+
376
+ @property
377
+ def pid(self) -> int:
378
+ """Get process ID."""
379
+ return int(EventConstant.MINDSPORE_PID)
380
+
381
+ @property
382
+ def tid(self) -> int:
383
+ """Get thread ID."""
384
+ return int(self.fix_size_data[OpRangeStructField.THREAD_ID.value])
385
+
386
+ @property
387
+ def name(self) -> str:
388
+ """Get operator name."""
389
+ if not self._name_cache:
390
+ self._name_cache = self.get_name()
391
+ return self._name_cache
392
+
393
+ @property
394
+ def step(self) -> int:
395
+ """Get step ID."""
396
+ return int(self.fix_size_data[OpRangeStructField.STEP.value])
397
+
398
+ @property
399
+ def level(self) -> int:
400
+ """Get event level."""
401
+ return int(self.fix_size_data[OpRangeStructField.LEVEL.value])
402
+
403
+ @property
404
+ def custom_info(self) -> str:
405
+ """Get custom information."""
406
+ return self.get_custom_info()
407
+
408
+
409
+ class FwkMetaEvent(MetaEvent):
410
+ """Framework metadata event."""
411
+
412
+ @property
413
+ def pid(self) -> int:
414
+ """Get framework process ID."""
415
+ return int(EventConstant.MINDSPORE_PID)
@@ -0,0 +1,73 @@
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
+ """Msprof event classes for MindSpore profiling data."""
16
+
17
+ from typing import Dict, List, Optional
18
+ from mindspore.profiler.analysis.parser.timeline_event.base_event import (
19
+ BaseEvent,
20
+ MetaEvent,
21
+ InstantEvent,
22
+ CompleteEvent,
23
+ CounterEvent
24
+ )
25
+
26
+
27
+ class MsprofCompleteEvent(CompleteEvent):
28
+ """Msprof Complete event class for representing complete operations with duration."""
29
+ _MINDSPORE_OP_KEY = "mindspore_op"
30
+
31
+ def __init__(self, data: Dict):
32
+ """Initialize complete event with data and empty event references."""
33
+ super().__init__(data)
34
+ self._parent: Optional[BaseEvent] = None
35
+ self._children: List[BaseEvent] = []
36
+ self._step_id = None
37
+
38
+ @property
39
+ def parent(self) -> BaseEvent:
40
+ """Get parent event reference."""
41
+ return self._parent
42
+
43
+ @parent.setter
44
+ def parent(self, event: BaseEvent) -> None:
45
+ """Set parent event and update mindspore_op argument."""
46
+ self._parent = event
47
+ self.args.update({self._MINDSPORE_OP_KEY: event.name})
48
+
49
+ @property
50
+ def children(self) -> List[BaseEvent]:
51
+ """Get list of children event references."""
52
+ return self._children
53
+
54
+ @property
55
+ def step_id(self) -> str:
56
+ """Get parent event reference."""
57
+ return self._step_id
58
+
59
+ @step_id.setter
60
+ def step_id(self, value):
61
+ self._step_id = value
62
+
63
+
64
+ class MsprofInstantEvent(InstantEvent):
65
+ """Msprof Instant event class for representing instantaneous operations."""
66
+
67
+
68
+ class MsprofMetaEvent(MetaEvent):
69
+ """Msprof Meta event class for representing metadata information."""
70
+
71
+
72
+ class MsprofCounterEvent(CounterEvent):
73
+ """Msprof Counter event class for representing counter-based metrics."""
@@ -0,0 +1,53 @@
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
+ """Scope event class for representing scope layer operations in profiling data."""
16
+
17
+ from decimal import Decimal
18
+
19
+ from mindspore.profiler.common.constant import EventConstant
20
+ from mindspore.profiler.analysis.parser.timeline_event.base_event import CompleteEvent, MetaEvent
21
+
22
+
23
+ class ScopeLayerCompleteEvent(CompleteEvent):
24
+ """Scope layer complete event class for representing scope operations with duration."""
25
+
26
+ def __init__(self, data: dict):
27
+ """Initialize scope layer event with data and duration."""
28
+ super().__init__(data)
29
+ self._dur = Decimal(data.get('dur', 0))
30
+
31
+ @property
32
+ def dur(self) -> Decimal:
33
+ """Get scope operation duration."""
34
+ return self._dur
35
+
36
+ @dur.setter
37
+ def dur(self, value: Decimal):
38
+ """Set scope operation duration."""
39
+ self._dur = value
40
+
41
+ @property
42
+ def pid(self) -> int:
43
+ """Get scope layer process ID."""
44
+ return int(EventConstant.SCOPE_LAYER_PID)
45
+
46
+
47
+ class ScopeLayerMetaEvent(MetaEvent):
48
+ """Scope layer meta event class for scope layer metadata."""
49
+
50
+ @property
51
+ def pid(self) -> int:
52
+ """Get scope layer process ID."""
53
+ return int(EventConstant.SCOPE_LAYER_PID)