mindspore 2.4.10__cp310-cp310-win_amd64.whl → 2.6.0__cp310-cp310-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (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.cp310-win_amd64.pyd +0 -0
  6. mindspore/_c_expression.cp310-win_amd64.pyd +0 -0
  7. mindspore/_c_mindrecord.cp310-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 +47 -198
  22. mindspore/_extends/parse/resources.py +1 -5
  23. mindspore/_extends/parse/standard_method.py +229 -99
  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 +480 -372
  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 +5 -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 +975 -1981
  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 +324 -573
  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 +183 -117
  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 +209 -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 +179 -120
  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 +798 -761
  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 +933 -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 +1373 -192
  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 +53 -42
  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 +19 -15
  222. mindspore/nn/optim/adamax.py +8 -7
  223. mindspore/nn/optim/adasum.py +5 -5
  224. mindspore/nn/optim/asgd.py +3 -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 +361 -359
  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 +52 -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 +258 -46
  286. mindspore/ops/auto_generate/gen_extend_func.py +757 -185
  287. mindspore/ops/auto_generate/gen_ops_def.py +4197 -2243
  288. mindspore/ops/auto_generate/gen_ops_prim.py +16976 -6055
  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 +4351 -3813
  334. mindspore/ops/function/nn_func.py +1712 -637
  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 +452 -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 +26 -18
  343. mindspore/ops/functional.py +23 -7
  344. mindspore/ops/functional_overload.py +1548 -0
  345. mindspore/ops/op_info_register.py +32 -244
  346. mindspore/ops/operations/__init__.py +23 -15
  347. mindspore/ops/operations/_custom_ops_utils.py +235 -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 +298 -87
  360. mindspore/ops/operations/debug_ops.py +157 -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 +212 -531
  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 +1895 -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 +296 -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 +159 -40
  426. mindspore/parallel/_cell_wrapper.py +132 -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 +700 -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 +258 -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 -59
  446. mindspore/parallel/transform_safetensors.py +364 -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 +109 -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 +416 -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 +96 -27
  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} +228 -108
  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 +269 -136
  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 +552 -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.0.dist-info}/METADATA +3 -3
  584. {mindspore-2.4.10.dist-info → mindspore-2.6.0.dist-info}/RECORD +587 -418
  585. {mindspore-2.4.10.dist-info → mindspore-2.6.0.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.0.dist-info}/WHEEL +0 -0
  602. {mindspore-2.4.10.dist-info → mindspore-2.6.0.dist-info}/top_level.txt +0 -0
@@ -18,6 +18,7 @@
18
18
  from __future__ import absolute_import
19
19
  from __future__ import division
20
20
 
21
+ import os
21
22
  from mindspore.common import Tensor
22
23
  from mindspore import _checkparam as validator
23
24
  from mindspore.communication.management import get_rank, get_group_size, GlobalComm, _get_group, _host_distribute
@@ -54,10 +55,10 @@ class ReduceOp:
54
55
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
55
56
  without any third-party or configuration file dependencies.
56
57
  Please see the `msrun start up
57
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
58
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
58
59
  for more details.
59
60
 
60
- This example should be run with multiple devices.
61
+ This example should be run with 2 devices.
61
62
 
62
63
  >>> import numpy as np
63
64
  >>> import mindspore
@@ -100,7 +101,9 @@ def check_collective_target_dtype(data_name, data_dtype, prim_name):
100
101
  def check_hcom_group_valid(group, prim_name=None):
101
102
  """Check if hcom group is valid."""
102
103
  msg_prefix = f"For '{prim_name}', the" if prim_name else "The"
103
- if not _host_distribute() and context.get_context("mode") == context.PYNATIVE_MODE and \
104
+ sim_level = os.getenv("MS_SIMULATION_LEVEL")
105
+ no_sim = (sim_level is None or sim_level.strip() == '')
106
+ if no_sim and (not _host_distribute()) and context.get_context("mode") == context.PYNATIVE_MODE and \
104
107
  group != GlobalComm.WORLD_COMM_GROUP:
105
108
  raise RuntimeError(f"{msg_prefix} 'group' only support 'hccl_world_group' in pynative mode, but got "
106
109
  f"'group': {group}. Please start by using mpi-run.")
@@ -141,7 +144,7 @@ class AllReduce(Primitive):
141
144
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
142
145
  without any third-party or configuration file dependencies.
143
146
  Please see the `msrun start up
144
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
147
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
145
148
  for more details.
146
149
 
147
150
  This example should be run with 2 devices.
@@ -231,7 +234,7 @@ class Reduce(PrimitiveWithInfer):
231
234
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method without any third-party
232
235
  or configuration file dependencies.
233
236
  Please see the `msrun start up
234
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
237
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
235
238
  for more details.
236
239
 
237
240
  This example should be run with 4 devices.
@@ -244,13 +247,13 @@ class Reduce(PrimitiveWithInfer):
244
247
  >>> # Launch 4 processes.
245
248
  >>> init()
246
249
  >>> class ReduceNet(nn.Cell):
247
- >>> def __init__(self):
248
- >>> super(Net, self).__init__()
249
- >>> self.reduce = ops.Reduce(dest_rank=1)
250
- >>>
251
- >>> def construct(self, x):
252
- >>> out = self.reduce(x)
253
- >>> return out
250
+ ... def __init__(self):
251
+ ... super(ReduceNet, self).__init__()
252
+ ... self.reduce = ops.Reduce(dest_rank=1)
253
+ ...
254
+ ... def construct(self, x):
255
+ ... out = self.reduce(x)
256
+ ... return out
254
257
  >>> input = Tensor(np.ones([2, 8]).astype(np.float32))
255
258
  >>> net = ReduceNet()
256
259
  >>> output = net(input)
@@ -315,7 +318,7 @@ class AllGather(PrimitiveWithInfer):
315
318
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
316
319
  without any third-party or configuration file dependencies.
317
320
  Please see the `msrun start up
318
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
321
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
319
322
  for more details.
320
323
 
321
324
  This example should be run with 2 devices.
@@ -538,7 +541,7 @@ class ReduceScatter(Primitive):
538
541
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
539
542
  without any third-party or configuration file dependencies.
540
543
  Please see the `msrun start up
541
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
544
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
542
545
  for more details.
543
546
 
544
547
  This example should be run with 2 devices.
@@ -676,7 +679,7 @@ class Broadcast(PrimitiveWithInfer):
676
679
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
677
680
  without any third-party or configuration file dependencies.
678
681
  Please see the `msrun start up
679
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
682
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
680
683
  for more details.
681
684
 
682
685
  This example should be run with 2 devices.
@@ -880,7 +883,7 @@ class AlltoAll(PrimitiveWithInfer):
880
883
  split_count (int): On each process, divide blocks into split_count number.
881
884
  split_dim (int): On each process, split blocks along the split_dim.
882
885
  concat_dim (int): On each process, gather the received blocks along the concat_dimension.
883
- group (str): The communication group to work on. Default: ``GlobalComm.WORLD_COMM_GROUP`` .
886
+ group (str, optional): The communication group to work on. Default: ``GlobalComm.WORLD_COMM_GROUP`` .
884
887
 
885
888
  Inputs:
886
889
  - **input_x** (Tensor) - The shape of tensor is :math:`(x_1, x_2, ..., x_R)`.
@@ -906,7 +909,7 @@ class AlltoAll(PrimitiveWithInfer):
906
909
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
907
910
  without any third-party or configuration file dependencies.
908
911
  Please see the `msrun start up
909
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
912
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
910
913
  for more details.
911
914
 
912
915
  This example should be run with 8 devices.
@@ -1028,7 +1031,7 @@ class NeighborExchangeV2(Primitive):
1028
1031
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
1029
1032
  without any third-party or configuration file dependencies.
1030
1033
  Please see the `msrun start up
1031
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1034
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1032
1035
  for more details.
1033
1036
 
1034
1037
  This example should be run with 2 devices.
@@ -1051,7 +1054,7 @@ class NeighborExchangeV2(Primitive):
1051
1054
  ... def construct(self, x):
1052
1055
  ... out = self.neighbor_exchangev2(x)
1053
1056
  ... return out
1054
- ... class Net1(nn.Cell):
1057
+ >>> class Net1(nn.Cell):
1055
1058
  ... def __init__(self):
1056
1059
  ... super(Net1, self).__init__()
1057
1060
  ... self.neighbor_exchangev2 = ops.NeighborExchangeV2(send_rank_ids=[0, -1, -1, -1, -1, -1, -1, -1],
@@ -1067,16 +1070,19 @@ class NeighborExchangeV2(Primitive):
1067
1070
  >>> init()
1068
1071
  >>> rank_id = int(os.getenv("RANK_ID"))
1069
1072
  >>> if (rank_id % 2 == 0):
1070
- >>> input_x = ms.Tensor(np.ones([1, 1, 2, 2]), dtype = ms.float32)
1071
- >>> net = Net0()
1072
- >>> output = net(input_x)
1073
- >>> print(output)
1074
- >>> else:
1075
- >>> input_x = ms.Tensor(np.ones([1, 1, 2, 2]) * 2, dtype = ms.float32)
1076
- >>> net = Net1()
1077
- >>> output = net(input_x)
1078
- >>> print(output)
1073
+ ... input_x = ms.Tensor(np.ones([1, 1, 2, 2]), dtype = ms.float32)
1074
+ ... net = Net0()
1075
+ ... output = net(input_x)
1076
+ ... print(output)
1077
+ ... else:
1078
+ ... input_x = ms.Tensor(np.ones([1, 1, 2, 2]) * 2, dtype = ms.float32)
1079
+ ... net = Net1()
1080
+ ... output = net(input_x)
1081
+ ... print(output)
1082
+ rank 0:
1079
1083
  [[[[1. 1.], [1. 1.], [2. 2.]]]]
1084
+ rank 1:
1085
+ [[[[1. 1.], [2. 2.], [2. 2.]]]]
1080
1086
 
1081
1087
  Tutorial Examples:
1082
1088
  - `Distributed Set Communication Primitives - NeighborExchangeV2
@@ -1111,7 +1117,7 @@ class NeighborExchangeV2(Primitive):
1111
1117
 
1112
1118
  class CollectiveScatter(Primitive):
1113
1119
  r"""
1114
- Scatter tensor evently across the processes in the specified communication group.
1120
+ Scatter input data evently across the processes in the specified communication group.
1115
1121
 
1116
1122
  Note:
1117
1123
  The interface behavior only support Tensor input and scatter evenly.
@@ -1145,7 +1151,7 @@ class CollectiveScatter(Primitive):
1145
1151
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
1146
1152
  without any third-party or configuration file dependencies.
1147
1153
  Please see the `msrun start up
1148
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1154
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1149
1155
  for more details.
1150
1156
 
1151
1157
  This example should be run with 2 devices.
@@ -1158,12 +1164,12 @@ class CollectiveScatter(Primitive):
1158
1164
  >>> # Launch 2 processes.
1159
1165
  >>> init()
1160
1166
  >>> class CollectiveScatterNet(nn.Cell):
1161
- >>> def __init__(self):
1162
- >>> super(CollectiveScatter, self).__init__()
1163
- >>> self.collective_scatter = ops.CollectiveScatter(src_rank=0)
1164
- >>>
1165
- >>> def construct(self, x):
1166
- >>> return self.collective_scatter(x)
1167
+ ... def __init__(self):
1168
+ ... super(CollectiveScatterNet, self).__init__()
1169
+ ... self.collective_scatter = ops.CollectiveScatter(src_rank=0)
1170
+ ...
1171
+ ... def construct(self, x):
1172
+ ... return self.collective_scatter(x)
1167
1173
  >>>
1168
1174
  >>> input = Tensor(np.arange(8).reshape([4, 2]).astype(np.float32))
1169
1175
  >>> net = CollectiveScatterNet()
@@ -1230,7 +1236,7 @@ class CollectiveGather(Primitive):
1230
1236
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
1231
1237
  without any third-party or configuration file dependencies.
1232
1238
  Please see the `msrun start up
1233
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1239
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1234
1240
  for more details.
1235
1241
 
1236
1242
  This example should be run with 4 devices.
@@ -1306,7 +1312,7 @@ class Barrier(PrimitiveWithInfer):
1306
1312
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
1307
1313
  without any third-party or configuration file dependencies.
1308
1314
  Please see the `msrun start up
1309
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1315
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1310
1316
  for more details.
1311
1317
 
1312
1318
  This example should be run with 2 devices.
@@ -1319,12 +1325,12 @@ class Barrier(PrimitiveWithInfer):
1319
1325
  >>> # Launch 4 processes.
1320
1326
  >>> init()
1321
1327
  >>> class BarrierNet(nn.Cell):
1322
- >>> def __init__(self):
1323
- >>> super(BarrierNet, self).__init__()
1324
- >>> self.barrier = ops.Barrier()
1325
- >>>
1326
- >>> def construct(self):
1327
- >>> self.barrier()
1328
+ ... def __init__(self):
1329
+ ... super(BarrierNet, self).__init__()
1330
+ ... self.barrier = ops.Barrier()
1331
+ ...
1332
+ ... def construct(self):
1333
+ ... self.barrier()
1328
1334
  >>> net = BarrierNet()
1329
1335
  >>> net()
1330
1336
 
@@ -1351,10 +1357,10 @@ class Send(PrimitiveWithInfer):
1351
1357
  Send tensors to the specified dest_rank.
1352
1358
 
1353
1359
  Note:
1354
- Send and Receive must be used in combination and have same sr_tag.
1360
+ Send and Receive must be used in combination and have same `sr_tag`.
1355
1361
 
1356
1362
  Args:
1357
- sr_tag (int): The tag to identify the send/recv message. The message will
1363
+ sr_tag (int): The tag to identify the send/recv message. The message sent by this operator will
1358
1364
  be received by the Receive op with the same "sr_tag".
1359
1365
  dest_rank (int): A required integer identifying the destination rank.
1360
1366
  group (str, optional): The communication group to work on. Default: ``GlobalComm.WORLD_COMM_GROUP``.
@@ -1380,31 +1386,53 @@ class Send(PrimitiveWithInfer):
1380
1386
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
1381
1387
  without any third-party or configuration file dependencies.
1382
1388
  Please see the `msrun start up
1383
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1389
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1384
1390
  for more details.
1385
1391
 
1386
1392
  This example should be run with 2 devices.
1387
1393
 
1394
+ >>> import os
1388
1395
  >>> import numpy as np
1396
+ >>> import mindspore.ops as ops
1389
1397
  >>> import mindspore.nn as nn
1398
+ >>> import mindspore as ms
1390
1399
  >>> from mindspore.communication import init
1391
1400
  >>> from mindspore import Tensor
1392
- >>> from mindspore import ops
1393
1401
  >>>
1402
+ >>> ms.set_context(mode=ms.GRAPH_MODE, jit_level="O2")
1394
1403
  >>> init()
1404
+ >>>
1395
1405
  >>> class SendNet(nn.Cell):
1396
- >>> def __init__(self):
1397
- >>> super(SendNet, self).__init__()
1398
- >>> self.depend = ops.Depend()
1399
- >>> self.send = ops.Send(sr_tag=0, dest_rank=8, group="hccl_world_group")
1406
+ ... def __init__(self):
1407
+ ... super(SendNet, self).__init__()
1408
+ ... self.depend = ops.Depend()
1409
+ ... self.send = ops.Send(sr_tag=0, dest_rank=1, group="hccl_world_group")
1410
+ ...
1411
+ ... def construct(self, x):
1412
+ ... out = self.depend(x, self.send(x))
1413
+ ... return out
1400
1414
  >>>
1401
- >>> def construct(self, x):
1402
- >>> out = self.depend(x, self.send(x))
1403
- >>> return out
1415
+ >>> class ReceiveNet(nn.Cell):
1416
+ ... def __init__(self):
1417
+ ... super(ReceiveNet, self).__init__()
1418
+ ... self.recv = ops.Receive(sr_tag=0, src_rank=0, shape=[2, 8], dtype=ms.float32,
1419
+ ... group="hccl_world_group")
1420
+ ...
1421
+ ... def construct(self):
1422
+ ... out = self.recv()
1423
+ ... return out
1404
1424
  >>>
1405
- >>> input_ = Tensor(np.ones([2, 8]).astype(np.float32))
1406
- >>> net = Net()
1407
- >>> output = net(input_)
1425
+ >>> if __name__ == "__main__":
1426
+ ... rank_id = os.environ["RANK_ID"]
1427
+ ... rank_size = os.environ["RANK_SIZE"]
1428
+ ... if rank_id == "0":
1429
+ ... input_ = Tensor(np.ones([2, 8]).astype(np.float32))
1430
+ ... send_net = SendNet()
1431
+ ... output = send_net(input_)
1432
+ ... else:
1433
+ ... recv_net = ReceiveNet()
1434
+ ... output = recv_net()
1435
+ ... print(output.asnumpy())
1408
1436
 
1409
1437
  Tutorial Examples:
1410
1438
  - `Distributed Set Communication Primitives - Send
@@ -1432,11 +1460,11 @@ class Receive(PrimitiveWithInfer):
1432
1460
  Receive tensors from src_rank.
1433
1461
 
1434
1462
  Note:
1435
- Send and Receive must be used in combination and have same sr_tag.
1463
+ Send and Receive must be used in combination and have same `sr_tag`.
1436
1464
 
1437
1465
  Args:
1438
- sr_tag (int): A required integer identifying the send/recv message tag. The message will
1439
- will be send by the Send op with the same "sr_tag".
1466
+ sr_tag (int): A required integer identifying the send/recv message tag. This operator will receive the tensor
1467
+ sent by the Send operator with the same `sr_tag` tag.
1440
1468
  src_rank (int): A required integer identifying the source rank.
1441
1469
  shape (list[int]): A required list identifying the shape of the tensor to be received.
1442
1470
  dtype (Type): A required Type identifying the type of the tensor to be received. The supported types:
@@ -1449,7 +1477,7 @@ class Receive(PrimitiveWithInfer):
1449
1477
  Tensor, output has the same shape as the Tensor sent by `Send` operation.
1450
1478
 
1451
1479
  Raises:
1452
- TypeError: If `group` is not a str.
1480
+ TypeError: If `src_rank` is not an int or `group` is not a str.
1453
1481
  RuntimeError: If device target is invalid, or backend is invalid, or distributed initialization fails.
1454
1482
  ValueError: If the local rank id of the calling process in the group
1455
1483
  is larger than the group's rank size.
@@ -1464,30 +1492,53 @@ class Receive(PrimitiveWithInfer):
1464
1492
  For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method
1465
1493
  without any third-party or configuration file dependencies.
1466
1494
  Please see the `msrun start up
1467
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1495
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1468
1496
  for more details.
1469
1497
 
1470
1498
  This example should be run with 2 devices.
1471
1499
 
1500
+ >>> import os
1472
1501
  >>> import numpy as np
1502
+ >>> import mindspore.ops as ops
1473
1503
  >>> import mindspore.nn as nn
1504
+ >>> import mindspore as ms
1474
1505
  >>> from mindspore.communication import init
1475
1506
  >>> from mindspore import Tensor
1476
- >>> from mindspore import ops
1477
1507
  >>>
1508
+ >>> ms.set_context(mode=ms.GRAPH_MODE, jit_level="O2")
1478
1509
  >>> init()
1479
- >>> class ReceiveNet(nn.Cell):
1480
- >>> def __init__(self):
1481
- >>> super(ReceiveNet, self).__init__()
1482
- >>> self.recv = ops.Receive(sr_tag=0, src_rank=0, shape=[2, 8], dtype=ms.float32,
1483
- >>> group="hccl_world_group")
1484
1510
  >>>
1485
- >>> def construct(self):
1486
- >>> out = self.recv()
1487
- >>> return out
1511
+ >>> class SendNet(nn.Cell):
1512
+ ... def __init__(self):
1513
+ ... super(SendNet, self).__init__()
1514
+ ... self.depend = ops.Depend()
1515
+ ... self.send = ops.Send(sr_tag=0, dest_rank=1, group="hccl_world_group")
1516
+ ...
1517
+ ... def construct(self, x):
1518
+ ... out = self.depend(x, self.send(x))
1519
+ ... return out
1488
1520
  >>>
1489
- >>> net = Net()
1490
- >>> output = net()
1521
+ >>> class ReceiveNet(nn.Cell):
1522
+ ... def __init__(self):
1523
+ ... super(ReceiveNet, self).__init__()
1524
+ ... self.recv = ops.Receive(sr_tag=0, src_rank=0, shape=[2, 8], dtype=ms.float32,
1525
+ ... group="hccl_world_group")
1526
+ ...
1527
+ ... def construct(self):
1528
+ ... out = self.recv()
1529
+ ... return out
1530
+ >>>
1531
+ >>> if __name__ == "__main__":
1532
+ ... rank_id = os.environ["RANK_ID"]
1533
+ ... rank_size = os.environ["RANK_SIZE"]
1534
+ ... if rank_id == "0":
1535
+ ... input_ = Tensor(np.ones([2, 8]).astype(np.float32))
1536
+ ... send_net = SendNet()
1537
+ ... output = send_net(input_)
1538
+ ... else:
1539
+ ... recv_net = ReceiveNet()
1540
+ ... output = recv_net()
1541
+ ... print(output.asnumpy())
1491
1542
 
1492
1543
  Tutorial Examples:
1493
1544
  - `Distributed Set Communication Primitives - Receive
@@ -1842,7 +1893,7 @@ class BatchISendIRecv(PrimitiveWithInfer):
1842
1893
  without any third-party or configuration file dependencies.
1843
1894
 
1844
1895
  Please see the `msrun start up
1845
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
1896
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1846
1897
  for more details.
1847
1898
 
1848
1899
  This example should be run with 2 devices.
@@ -1921,28 +1972,29 @@ class BatchISendIRecv(PrimitiveWithInfer):
1921
1972
 
1922
1973
  class AlltoAllV(PrimitiveWithInfer):
1923
1974
  """
1924
- AllToAll which support uneven split.
1975
+ AllToAllV which support uneven scatter and gather compared with AllToAll.
1925
1976
 
1926
1977
  Note:
1927
1978
  - Only support flatten tensor as input. input tensor should be flattened and
1928
1979
  concatenated before call this primitive.
1929
1980
 
1930
1981
  Args:
1931
- send_numel_list(Union[tuple[int], list[int]]): split numel to scatter to different remote rank.
1932
- recv_numel_list(Union[tuple[int], list[int]]): split numel to gather from different remote rank.
1933
- group (str): The communication group to work on. Default: ``GlobalComm.WORLD_COMM_GROUP``, which
1934
- means ``"hccl_world_group"`` in Ascend, and ``"nccl_world_group"`` in GPU.
1935
- TODO:
1982
+ group (str, optional): The communication group to work on. Default: ``GlobalComm.WORLD_COMM_GROUP``, which
1983
+ means ``"hccl_world_group"`` in Ascend.
1984
+ block_size (int, optional): The basic units for scatter and gather numel by `send_numel_list`
1985
+ and `recv_numel_list`.
1986
+ Default: ``1``.
1936
1987
 
1937
1988
  Inputs:
1938
1989
  - **input_x** (Tensor) - flatten tensor to scatter. The shape of tensor is :math:`(x_1)`.
1990
+ - **send_numel_list** (Union[tuple[int], list[int], Tensor]) - split numel to scatter to different remote rank.
1991
+ The actual distributed data numel is :math:`(send_numel_list * block_size * input_x.dtype)`.
1992
+ - **recv_numel_list** (Union[tuple[int], list[int], Tensor]) - split numel to gather from different remote rank.
1993
+ The actual aggregated data numel is :math:`(recv_numel_list * block_size * input_x.dtype)`.
1939
1994
 
1940
1995
  Outputs:
1941
- Tensor. flattened and concatenated tensor gather from remote ranks.
1942
- If gather result is empty, it will return a Tensor with value 0, which has no actual meaning.
1943
-
1944
- Raises:
1945
- TypeError: If 'send_numel_list' or 'recv_numel_list' is not type of tuple and list.
1996
+ Tensor, flattened and concatenated tensor gather from remote ranks.
1997
+ If gather result is empty, it will return a Tensor with shape `()`, and value has no actual meaning.
1946
1998
 
1947
1999
  Supported Platforms:
1948
2000
  ``Ascend``
@@ -1955,13 +2007,11 @@ class AlltoAllV(PrimitiveWithInfer):
1955
2007
  without any third-party or configuration file dependencies.
1956
2008
 
1957
2009
  Please see the `msrun start up
1958
- <https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/msrun_launcher.html>`_
2010
+ <https://www.mindspore.cn/tutorials/en/master/parallel/msrun_launcher.html>`_
1959
2011
  for more details.
1960
2012
 
1961
2013
  This example should be run with 2 devices.
1962
2014
 
1963
- >>> import numpy as np
1964
- >>> import mindspore as ms
1965
2015
  >>> from mindspore import ops
1966
2016
  >>> import mindspore.nn as nn
1967
2017
  >>> from mindspore.communication import init, get_rank
@@ -1972,20 +2022,22 @@ class AlltoAllV(PrimitiveWithInfer):
1972
2022
  >>> class Net(nn.Cell):
1973
2023
  ... def __init__(self):
1974
2024
  ... super(Net, self).__init__()
1975
- ... if rank == 0:
1976
- ... self.all_to_all = ops.AlltoAllV([1, 2], [1, 2])
1977
- ... else:
1978
- ... self.all_to_all = ops.AlltoAllV([2, 1], [2, 1])
1979
- ...
1980
- ... def construct(self, x):
1981
- ... return self.all_to_all(x)
2025
+ ... self.all_to_all = ops.AlltoAllV()
1982
2026
  ...
2027
+ ... def construct(self, x, send_numel_list, recv_numel_list):
2028
+ ... return self.all_to_all(x, send_numel_list, recv_numel_list)
2029
+ >>> send_numel_list = []
2030
+ >>> recv_numel_list = []
1983
2031
  >>> if rank == 0:
1984
- >>> send_tensor = Tensor([0, 1, 2.])
2032
+ ... send_tensor = Tensor([0, 1, 2.])
2033
+ ... send_numel_list = [1, 2]
2034
+ ... recv_numel_list = [1, 2]
1985
2035
  >>> elif rank == 1:
1986
- >>> send_tensor = Tensor([3, 4, 5.])
2036
+ ... send_tensor = Tensor([3, 4, 5.])
2037
+ ... send_numel_list = [2, 1]
2038
+ ... recv_numel_list = [2, 1]
1987
2039
  >>> net = Net()
1988
- >>> output = net(send_tensor)
2040
+ >>> output = net(send_tensor, send_numel_list, recv_numel_list)
1989
2041
  >>> print(output)
1990
2042
  rank 0:
1991
2043
  [0. 3. 4]
@@ -1995,15 +2047,9 @@ class AlltoAllV(PrimitiveWithInfer):
1995
2047
  """
1996
2048
 
1997
2049
  @prim_attr_register
1998
- def __init__(self, send_numel_list, recv_numel_list, group=None, split_sizes_empty=False):
1999
- validator.check_value_type("send_numel_list", send_numel_list, [tuple, list], self.name)
2000
- validator.check_value_type("recv_numel_list", recv_numel_list, [tuple, list], self.name)
2050
+ def __init__(self, group=GlobalComm.WORLD_COMM_GROUP, block_size=1):
2001
2051
  self.group = GlobalComm.WORLD_COMM_GROUP if group is None else _get_group(group)
2002
- self.send_numel_list = send_numel_list
2003
- self.recv_numel_list = recv_numel_list
2004
- self.split_sizes_empty = split_sizes_empty
2005
2052
  self.rank_size = get_group_size(self.group)
2006
-
2007
2053
  self.add_prim_attr('group', self.group)
2008
- self.add_prim_attr('send_numel_list', send_numel_list)
2009
- self.add_prim_attr('recv_numel_list', recv_numel_list)
2054
+ validator.check_value_type("block_size", block_size, [int], self.name)
2055
+ self.add_prim_attr('block_size', self.block_size)