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
@@ -13,23 +13,25 @@
13
13
  # limitations under the License.
14
14
  # ============================================================================
15
15
  """debug_ops"""
16
- import os
17
16
  import stat
17
+ from pathlib import Path
18
18
 
19
19
  import numpy as np
20
20
  from mindspore import log as logger
21
21
  from mindspore._c_expression import security, HookType
22
- from mindspore._c_expression import Tensor as Tensor_
22
+ from mindspore._c_expression import TensorPy as Tensor_
23
+ from mindspore._c_expression import _tensordump_process_file
23
24
  from mindspore import _checkparam as validator
24
25
  from mindspore.common import dtype as mstype
25
26
  from mindspore.common.parameter import Parameter
26
27
  from mindspore.common.tensor import Tensor
28
+ from mindspore.common.jit_context import jit_context
27
29
  from mindspore.ops.primitive import prim_attr_register, Primitive, PrimitiveWithInfer
28
30
  from mindspore._checkparam import check_hook_fn
31
+ from mindspore.ops import operations as P
29
32
 
30
33
 
31
34
  SUMMARY_TENSOR_CACHE = []
32
- TENSORDUMP_ID = 0
33
35
 
34
36
 
35
37
  def _cache_summary_data(op_name, define_name, tensor):
@@ -61,11 +63,9 @@ class ScalarSummary(Primitive):
61
63
  """
62
64
  This operator will put a scalar to a summary file with protocol buffer format.
63
65
  It must be used with :class:`mindspore.SummaryRecord` or :class:`mindspore.SummaryCollector`,
64
- which specify the directory of the summary file. The summary file can
65
- be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
66
- mindinsight/docs/en/master/index.html>`_ for details.
67
- In Ascend platform with graph mode, can set environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
68
- to solve operator execution failure when calling this operator intensively.
66
+ which specify the directory of the summary file.
67
+ In Ascend platform with graph mode, the environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
68
+ can be set to solve operator execution failure when calling this operator intensively.
69
69
 
70
70
  Inputs:
71
71
  - **name** (str) - The name of the input variable, it must not be an empty string.
@@ -121,11 +121,9 @@ class ScalarSummary(Primitive):
121
121
  class ImageSummary(Primitive):
122
122
  """
123
123
  This operator will put an image tensor to a summary file with protocol buffer format. It must be used with
124
- SummaryRecord or SummaryCollector, which specify the directory of the summary file. The summary file can
125
- be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
126
- mindinsight/docs/en/master/index.html>`_ for details.
127
- In Ascend platform with graph mode, can set environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
128
- to solve operator execution failure when calling this operator intensively.
124
+ SummaryRecord or SummaryCollector, which specify the directory of the summary file.
125
+ In Ascend platform with graph mode, the environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
126
+ can be set to solve execution failure when calling this operator intensively.
129
127
 
130
128
  Inputs:
131
129
  - **name** (str) - The name of the input variable, it must not be an empty string.
@@ -174,11 +172,9 @@ class ImageSummary(Primitive):
174
172
  class TensorSummary(Primitive):
175
173
  """
176
174
  This operator will put a tensor to a summary file with protocol buffer format. It must be used with SummaryRecord
177
- or SummaryCollector, which specify the directory of the summary file. The summary file can
178
- be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
179
- mindinsight/docs/en/master/index.html>`_ for details.
180
- In Ascend platform with graph mode, can set environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
181
- to solve operator execution failure when calling this operator intensively.
175
+ or SummaryCollector, which specify the directory of the summary file.
176
+ In Ascend platform with graph mode, the environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
177
+ can be set to solve operator execution failure when calling this operator intensively.
182
178
 
183
179
  Inputs:
184
180
  - **name** (str) - The name of the input variable.
@@ -235,15 +231,15 @@ class TensorDump(Primitive):
235
231
  Save the Tensor as an npy file in numpy format.
236
232
 
237
233
  .. warning::
238
- - If a large amount of data is stored within a short period, it may lead to memory overflow on the device side.
239
- Consider slicing the data to reduce the data scale.
240
- - Since data saving is processed asynchronously, when the amount of data is too large or the main process exits
241
- too quickly, data loss may occur. You need to actively control the destruction time of the main process,
242
- such as using sleep.
234
+ The parameter input_output will no longer support the value 'all'.
235
+
236
+ .. note::
237
+ In Ascend platform with graph mode, the environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
238
+ can be set to solve operator execution failure when outputting big tensor or outputting tensor intensively.
243
239
 
244
240
  Args:
245
241
  input_output (str, optional): Used to control Tensordump behavior.
246
- Available value is one of ['in', 'out', 'all']. Default value is ``out``.
242
+ Available value is one of ['in', 'out']. Default value is ``out``.
247
243
 
248
244
  In case of OpA --> RedistributionOps --> OpB,
249
245
  The dump data of OpA's output is not equal to OpB's input (Due to the redistribution operators).
@@ -253,21 +249,19 @@ class TensorDump(Primitive):
253
249
  Different requirements of saving dump data can be achieved by configuring parameter input_output:
254
250
 
255
251
  - If the input_output is 'out', the dump data contains only OpA's output slice.
256
- - If the input_output is 'all', the dump data contains both OpA's output slice and OpB's input slice.
257
252
  - If the input_output is 'in', the dump data contains only OpB's input slice.
258
253
 
259
- For input_output is 'all' or 'in', the input slice npy file format is:
260
- id_fileName_cNodeID_dumpMode_rankID.npy.
254
+ For input_output is 'in', the input slice npy file format is:
255
+ fileName_dumpMode_dtype_id.npy.
261
256
 
262
- For input_output is 'out' or 'all' the output slice npy file format is:
263
- id_fileName.npy.
257
+ For input_output is 'out', the output slice npy file format is:
258
+ fileName_dtype_id.npy.
264
259
 
265
- - id: An auto increment ID.
266
260
  - fileName: Value of the parameter file
267
261
  (if parameter file_name is a user-specified path, the value of fileName is the last level of the path).
268
- - cNodeID: The node ID of the Tensordump node in the step_parallel_end.ir file.
269
262
  - dumpMode: Value of the parameter input_output.
270
- - rankID: Logical device id.
263
+ - dtype: The original data type. Data of type bfloat16 stored in the .npy file will be converted to float32.
264
+ - id: An auto increment ID.
271
265
 
272
266
  Inputs:
273
267
  - **file** (str) - The path of the file to be saved.
@@ -285,7 +279,8 @@ class TensorDump(Primitive):
285
279
  >>> import mindspore as ms
286
280
  >>> import time
287
281
  >>> from mindspore import nn, Tensor, ops
288
- >>> ms.set_context(mode=ms.GRAPH_MODE, device_target="Ascend")
282
+ >>> ms.set_context(mode=ms.GRAPH_MODE)
283
+ >>> ms.set_device(device_target="Ascend")
289
284
  >>> class Net(nn.Cell):
290
285
  ... def __init__(self):
291
286
  ... super(Net, self).__init__()
@@ -305,7 +300,7 @@ class TensorDump(Primitive):
305
300
  >>> net = Net()
306
301
  >>> out = net(input_x)
307
302
  >>> time.sleep(0.5)
308
- >>> add = np.load('0_add.npy')
303
+ >>> add = np.load('add_float32_0.npy')
309
304
  >>> print(add)
310
305
  [[2. 3. 4. 5.]
311
306
  [6. 7. 8. 9.]]
@@ -318,35 +313,34 @@ class TensorDump(Primitive):
318
313
  self.add_prim_attr("side_effect_io", True)
319
314
  self.add_prim_attr("channel_name", "ms_tensor_dump")
320
315
 
316
+ def _save_file(self, file, data):
317
+ file = Path(file)
318
+ if file.exists():
319
+ file.chmod(stat.S_IWUSR)
320
+ np.save(file, data)
321
+ file.chmod(stat.S_IRUSR)
322
+
321
323
  def __call__(self, file, input_x):
322
324
  validator.check_value_type('file', file, [str], self.__class__.__name__)
323
325
  if not file:
324
326
  raise ValueError("For 'TensorDump', the input argument[file] cannot be an empty string.")
325
327
  validator.check_value_type('input_x', input_x, [Tensor], self.__class__.__name__)
326
- global TENSORDUMP_ID
327
- npy_suffix = ".npy"
328
- directory, filename = os.path.split(file)
329
- if directory and not os.path.exists(directory):
330
- os.makedirs(directory, mode=0o700, exist_ok=True)
331
- new_filename = f"{TENSORDUMP_ID}_{filename}"
332
- new_file = os.path.join(directory, new_filename)
333
- if not new_file.endswith(npy_suffix):
334
- new_file += npy_suffix
335
- if os.path.exists(new_file):
336
- os.chmod(new_file, stat.S_IWUSR)
337
- np.save(new_file, input_x.asnumpy())
338
- os.chmod(new_file, stat.S_IRUSR)
339
- TENSORDUMP_ID += 1
328
+
329
+ dtype = input_x.dtype
330
+ file = _tensordump_process_file(file, str(dtype))
331
+ if not file:
332
+ return
333
+ if dtype == mstype.bfloat16:
334
+ input_x = P.Cast()(input_x, mstype.float32)
335
+ self._save_file(file, input_x.asnumpy())
340
336
 
341
337
 
342
338
  class HistogramSummary(Primitive):
343
339
  """
344
340
  This operator will calculate the histogram of a tensor and put it to a summary file with protocol buffer format.
345
341
  It must be used with SummaryRecord or SummaryCollector, which specify the directory of the summary file.
346
- The summary file can be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
347
- mindinsight/docs/en/master/index.html>`_ for details.
348
- In Ascend platform with graph mode, can set environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
349
- to solve operator execution failure when calling this operator intensively.
342
+ In Ascend platform with graph mode, the environment variables `MS_DUMP_SLICE_SIZE` and `MS_DUMP_WAIT_TIME`
343
+ can be set to solve operator execution failure when calling this operator intensively.
350
344
 
351
345
  Inputs:
352
346
  - **name** (str) - The name of the input variable.
@@ -398,7 +392,7 @@ class HistogramSummary(Primitive):
398
392
  _cache_summary_data(self.name, args[0], args[1])
399
393
 
400
394
 
401
- class InsertGradientOf(PrimitiveWithInfer):
395
+ class InsertGradientOf(Primitive):
402
396
  """
403
397
  Attaches callback to the graph node that will be invoked on the node's gradient.
404
398
 
@@ -464,11 +458,106 @@ class InsertGradientOf(PrimitiveWithInfer):
464
458
  self.add_prim_attr('side_effect_backprop', True)
465
459
  self.f = f
466
460
 
467
- def infer_shape(self, x_shape):
468
- return x_shape
469
461
 
470
- def infer_dtype(self, x_type):
471
- return x_type
462
+ class Morph(PrimitiveWithInfer):
463
+ """
464
+ The `Morph` Primitive is used to encapsulate a user-defined function `fn`, allowing it to be used as a custom
465
+ Primitive.
466
+ The primary application scenario of the `Morph` Primitive is in the auto-parallel case after `GRAPH_MODE` mode,
467
+ where collective communication operators are used within the user-defined `fn` to implement custom parallel
468
+ computation logic, especially in scenarios where `fn` involves dynamic shapes.
469
+ When the `Morph` Primitive is applied to inputs, it is actually the encapsulated user-defined function `fn` that is
470
+ applied to the inputs.
471
+ The main difference between the `Morph` Primitive and :func:`mindspore.ops.Custom` is that the former is expanded
472
+ and replaced by the user-defined `fn` before automatic differentiation, so there is no need to implement a backward
473
+ function.
474
+
475
+ .. note::
476
+ - This primitive is only supported in GRAPH_MODE.
477
+ - `fn` must satisfy the syntax constraints of the graph mode.
478
+ - Users do not need to implement a custom backward function.
479
+ - `vararg`, `kwarg`, `kwonlyargs` and free variables are not supported in user-defined function.
480
+
481
+ Args:
482
+ fn (Function): Mindspore's function, user-defined function.
483
+ infer_shape (Function): Mindspore's function, user-defined infer_shape function.
484
+ infer_dtype (Function): Mindspore's function, user-defined infer_dtype function.
485
+
486
+ Inputs:
487
+ The inputs of user-defined `fn`.
488
+
489
+ Outputs:
490
+ The outputs of user-defined `fn`.
491
+
492
+ Raises:
493
+ RuntimeError: if not used in GRAPH_MODE.
494
+
495
+ Examples:
496
+ >>> import numpy as np
497
+ >>> import mindspore as ms
498
+ >>> from mindspore import context, nn, ops, Tensor, Parameter
499
+ >>>
500
+ >>> np_weight0 = np.array([1.0, 2.0, 3.0])
501
+ >>> np_weight1 = np.array([4.0, 5.0, 6.0])
502
+ >>> np_input_x = np.array([7.0, 8.0, 9.0])
503
+ >>>
504
+ >>> def infer_dtype(args):
505
+ ... return args
506
+ >>>
507
+ >>> def infer_shape(args):
508
+ ... return args
509
+ >>>
510
+ >>> def mul_by(*args):
511
+ ... def inner(x):
512
+ ... return args[0] * x
513
+ ... return inner
514
+ >>>
515
+ >>> NUMBER_100 = 100
516
+ >>> class MorphNet(nn.Cell):
517
+ ... def __init__(self):
518
+ ... super(MorphNet, self).__init__()
519
+ ... self.weight0 = Parameter(Tensor(np_weight0, ms.float32), name="weight0")
520
+ ... self.weight1 = Parameter(Tensor(np_weight1, ms.float32), name="weight1")
521
+ ... self.mul_by_100 = ops.Morph(mul_by(NUMBER_100), infer_shape, infer_dtype)
522
+ ... def construct(self, x):
523
+ ... a = x * self.weight0
524
+ ... b = self.mul_by_100(a)
525
+ ... out = b * self.weight1
526
+ ... return out
527
+ >>>
528
+ >>> context.set_context(mode=context.GRAPH_MODE)
529
+ >>> input_x = Tensor(np_input_x, ms.float32)
530
+ >>> net = MorphNet()
531
+ >>> grad_op = ops.GradOperation(get_all=True, get_by_list=True)
532
+ >>> grad_net = grad_op(net, net.trainable_params())
533
+ >>> bwd_out = grad_net(input_x)
534
+ >>> x_grad = bwd_out[0][0].asnumpy()
535
+ >>> weight0_grad = bwd_out[1][0].asnumpy()
536
+ >>> weight1_grad = bwd_out[1][1].asnumpy()
537
+ >>> print("x_grad", x_grad)
538
+ >>> print("weight0_grad", weight0_grad)
539
+ >>> print("weight1_grad", weight1_grad)
540
+ x_grad [ 400. 1000. 1800.]
541
+ weight0_grad [2800. 4000. 5400.]
542
+ weight1_grad [ 700. 1600. 2700.]
543
+ """
544
+ @prim_attr_register
545
+ def __init__(self, fn, infer_shape, infer_dtype):
546
+ self.add_prim_attr('side_effect_backprop', True)
547
+ self.add_prim_attr('side_effect_mem', True)
548
+ self.add_prim_attr('side_effect_io', True)
549
+ self.add_prim_attr('__metamorphosis__', fn)
550
+ self._infer_shape = infer_shape
551
+ self._infer_dtype = infer_dtype
552
+
553
+ def infer_shape(self, *args):
554
+ return self._infer_shape(*args)
555
+
556
+ def infer_dtype(self, *args):
557
+ return self._infer_dtype(*args)
558
+
559
+ def __call__(self, *args):
560
+ raise RuntimeError("Morph is only supported in GRAPH_MODE.")
472
561
 
473
562
 
474
563
  class HookBackward(PrimitiveWithInfer):
@@ -532,8 +621,7 @@ class HookBackward(PrimitiveWithInfer):
532
621
  def __init__(self, hook_fn, cell_id=""):
533
622
  """Initialize HookBackward."""
534
623
  super(HookBackward, self).__init__(self.__class__.__name__)
535
- if not check_hook_fn("HookBackward", hook_fn):
536
- return
624
+ check_hook_fn(hook_fn)
537
625
  if cell_id != "":
538
626
  logger.warning(f"The args 'cell_id' of HookBackward will be removed in a future version. If the value of "
539
627
  f"'cell_id' is set, the hook function will not work.")
@@ -605,6 +693,9 @@ class Print(Primitive):
605
693
  self.add_prim_attr("side_effect_io", True)
606
694
 
607
695
  def __call__(self, *args):
696
+ # Add for jit context.
697
+ if jit_context() and jit_context().compiled:
698
+ return
608
699
  for arg in args:
609
700
  if isinstance(arg, Parameter):
610
701
  print(Tensor_.__repr__(arg))
@@ -612,6 +703,9 @@ class Print(Primitive):
612
703
  print(arg.__repr__())
613
704
  else:
614
705
  print(arg)
706
+ # Add for jit context.
707
+ if jit_context():
708
+ jit_context().run_op(self, None, *args)
615
709
 
616
710
 
617
711
  class Assert(PrimitiveWithInfer):
@@ -87,7 +87,7 @@ class NoRepeatNGram(Primitive):
87
87
  Because 3 consecutive words [2, 3, 2] do not appear twice in the word sequence.
88
88
 
89
89
  Args:
90
- ngram_size (int): Size of n-grams, must be greater than 0. Default: ``1`` .
90
+ ngram_size (int, optional): Size of n-grams, must be greater than 0. Default: ``1`` .
91
91
 
92
92
  Inputs:
93
93
  - **state_seq** (Tensor) - n-gram word series, a 3-D tensor with shape: :math:`(batch\_size, beam\_width, m)`.
@@ -302,8 +302,8 @@ class FusedWeightScaleApplyMomentum(PrimitiveWithInfer):
302
302
  Default: ``0.0`` .
303
303
  - **loss_scale** (Tensor) - The loss scale value, must be a scalar tensor with float data type.
304
304
  Default: ``1.0`` .
305
- - **variable** (Parameter) - Weights to be updated. data type must be float.
306
- - **accumulation** (Parameter) - Accumulated gradient value by moment weight.
305
+ - **variable** (Union[Parameter, Tensor]) - Weights to be updated. data type must be float.
306
+ - **accumulation** (Union[Parameter, Tensor]) - Accumulated gradient value by moment weight.
307
307
  Has the same data type with `variable`.
308
308
  - **learning_rate** (Union[Number, Tensor]) - The learning rate value, must be a float number or
309
309
  a scalar tensor with float data type.
@@ -425,7 +425,8 @@ class FusedCastAdamWeightDecay(PrimitiveWithInfer):
425
425
  ... def construct(self, lr, beta1, beta2, epsilon, decay, grad, norm):
426
426
  ... out = self.opt(self.var, self.m, self.v, lr, beta1, beta2, epsilon, decay, grad, norm)
427
427
  ... return out
428
- >>> ms.set_context(mode=ms.GRAPH_MODE, device_target="CPU")
428
+ >>> ms.set_context(mode=ms.GRAPH_MODE)
429
+ >>> ms.set_device(device_target="CPU")
429
430
  >>> net = Net()
430
431
  >>> gradient = Tensor(np.ones([2, 2]), mstype.float16)
431
432
  >>> output = net(0.001, 0.9, 0.999, 1e-8, 0.0, gradient, 1.0)
@@ -560,7 +561,8 @@ class FusedAdaFactor(PrimitiveWithInfer):
560
561
  ... out = self.opt(epsilon, clip_threshold, beta1, beta2, weight_decay, lr, grad, self.param,
561
562
  ... self.exp_avg, self.exp_avg_sq_row, self.exp_avg_sq_col, self.exp_avg_sq)
562
563
  ... return out
563
- >>> ms.set_context(mode=ms.GRAPH_MODE, device_target="CPU")
564
+ >>> ms.set_context(mode=ms.GRAPH_MODE)
565
+ >>> ms.set_device(device_target="CPU")
564
566
  >>> net = Net()
565
567
  >>> gradient = Tensor(np.ones(param_shape), mstype.float32)
566
568
  >>> output = net((1e-30, 1e-3), 1.0, 0.9, 0.8, 1e-2, 0.03, gradient)
@@ -19,63 +19,7 @@ from __future__ import absolute_import
19
19
  from mindspore import _checkparam as Validator
20
20
  from mindspore.ops.primitive import Primitive
21
21
  from mindspore.ops.primitive import prim_attr_register
22
- from ..auto_generate import Geqrf
23
-
24
-
25
- class Svd(Primitive):
26
- """
27
- Computes the singular value decompositions of one or more matrices.
28
-
29
- Refer to :func:`mindspore.ops.svd` for more details.
30
-
31
- Args:
32
- full_matrices (bool, optional): If ``True`` , compute full-sized :math:`U` and :math:`V`. If ``False``,
33
- compute only the leading P singular vectors, with P is the minimum of M and N.
34
- Default: ``False`` .
35
- compute_uv (bool, optional): If ``True`` , compute the left and right singular vectors.
36
- If ``False`` , compute only the singular values. Default: ``True`` .
37
-
38
- Inputs:
39
- - **input** (Tensor) - Tensor of the matrices to be decomposed. The shape should be :math:`(*, M, N)`,
40
- the supported dtype are float32 and float64.
41
-
42
- Outputs:
43
- - **s** (Tensor) - Singular values. The shape is :math:`(*, P)`.
44
- - **u** (Tensor) - Left singular vectors. If `compute_uv` is ``False`` , u will be zero value.
45
- The shape is :math:`(*, M, P)`. If `full_matrices` is ``True`` , the shape will be :math:`(*, M, M)`.
46
- - **v** (Tensor) - Right singular vectors. If `compute_uv` is ``False`` , v will be zero value.
47
- The shape is :math:`(*, N, P)`. If `full_matrices` is ``True`` , the shape will be :math:`(*, N, N)`.
48
-
49
- Supported Platforms:
50
- ``GPU`` ``CPU``
51
-
52
- Examples:
53
- >>> import numpy as np
54
- >>> from mindspore import Tensor, set_context
55
- >>> from mindspore import ops
56
- >>> set_context(device_target="CPU")
57
- >>> svd = ops.Svd(full_matrices=True, compute_uv=True)
58
- >>> a = Tensor(np.array([[1, 2], [-4, -5], [2, 1]]).astype(np.float32))
59
- >>> s, u, v = svd(a)
60
- >>> print(s)
61
- [7.0652843 1.040081 ]
62
- >>> print(u)
63
- [[ 0.30821905 -0.48819482 0.81649697]
64
- [-0.90613353 0.11070572 0.40824813]
65
- [ 0.2896955 0.8656849 0.4082479 ]]
66
- >>> print(v)
67
- [[ 0.63863593 0.769509 ]
68
- [ 0.769509 -0.63863593]]
69
- """
70
-
71
- @prim_attr_register
72
- def __init__(self, full_matrices=False, compute_uv=True):
73
- super().__init__(name="Svd")
74
- self.init_prim_io_names(inputs=['a'], outputs=['s', 'u', 'v'])
75
- self.full_matrices = Validator.check_value_type("full_matrices", full_matrices, [bool], self.name)
76
- self.compute_uv = Validator.check_value_type("compute_uv", compute_uv, [bool], self.name)
77
- self.add_prim_attr('full_matrices', self.full_matrices)
78
- self.add_prim_attr('compute_uv', self.compute_uv)
22
+ from ..auto_generate import Geqrf, Svd
79
23
 
80
24
 
81
25
  class Eigh(Primitive):
@@ -66,7 +66,7 @@ class TensorReport(Primitive):
66
66
  @prim_attr_register
67
67
  def __init__(self):
68
68
  """Initialize TensorReport"""
69
- self.add_prim_attr("side_effect_io", True)
69
+ self.add_prim_attr("side_effect_mem", True)
70
70
  self.add_prim_attr("channel_name", "ms_tensor_report")
71
71
 
72
72
  def __call__(self, file, input_x):