mindspore 2.1.0__cp38-none-any.whl → 2.2.0__cp38-none-any.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 (539) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +4 -1
  3. mindspore/_akg/akg/build_module.py +5 -6
  4. mindspore/_akg/akg/composite/build_module.py +49 -16
  5. mindspore/_akg/akg/composite/split_stitch.py +10 -11
  6. mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
  7. mindspore/_akg/akg/tvm/api.py +4 -3
  8. mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
  9. mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
  10. mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
  11. mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
  12. mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
  13. mindspore/_akg/akg/tvm/build_module.py +16 -1
  14. mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
  15. mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
  16. mindspore/_akg/akg/tvm/ir_builder.py +1 -1
  17. mindspore/_akg/akg/tvm/module.py +1 -2
  18. mindspore/_akg/akg/tvm/stmt.py +2 -2
  19. mindspore/_akg/akg/utils/composite_op_helper.py +9 -10
  20. mindspore/_akg/akg/utils/kernel_exec.py +58 -260
  21. mindspore/_akg/akg/utils/result_analysis.py +4 -24
  22. mindspore/_akg/akg/utils/tbe_codegen_utils.py +198 -0
  23. mindspore/_c_dataengine.cpython-38-aarch64-linux-gnu.so +0 -0
  24. mindspore/_c_expression.cpython-38-aarch64-linux-gnu.so +0 -0
  25. mindspore/_c_mindrecord.cpython-38-aarch64-linux-gnu.so +0 -0
  26. mindspore/_check_jit_forbidden_api.py +3 -1
  27. mindspore/_checkparam.py +26 -32
  28. mindspore/_extends/graph_kernel/__init__.py +0 -1
  29. mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
  30. mindspore/_extends/graph_kernel/splitter.py +1 -9
  31. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +122 -15
  32. mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +2 -2
  33. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
  34. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +2 -2
  35. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +4 -4
  36. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
  37. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
  38. mindspore/_extends/parse/__init__.py +12 -15
  39. mindspore/_extends/parse/namespace.py +7 -33
  40. mindspore/_extends/parse/parser.py +61 -71
  41. mindspore/_extends/parse/resources.py +1 -1
  42. mindspore/_extends/parse/standard_method.py +72 -95
  43. mindspore/_extends/parse/trope.py +1 -1
  44. mindspore/_extends/remote/kernel_build_server.py +24 -7
  45. mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
  46. mindspore/_install_custom.py +43 -0
  47. mindspore/_mindspore_offline_debug.cpython-38-aarch64-linux-gnu.so +0 -0
  48. mindspore/amp.py +47 -11
  49. mindspore/bin/cache_admin +0 -0
  50. mindspore/bin/cache_server +0 -0
  51. mindspore/boost/boost.py +1 -8
  52. mindspore/boost/boost_cell_wrapper.py +3 -2
  53. mindspore/boost/grad_accumulation.py +1 -1
  54. mindspore/boost/group_loss_scale_manager.py +8 -7
  55. mindspore/common/__init__.py +5 -3
  56. mindspore/common/_jit_fallback_utils.py +6 -0
  57. mindspore/common/_register_for_adapter.py +2 -0
  58. mindspore/common/_register_for_tensor.py +2 -2
  59. mindspore/common/_stub_tensor.py +13 -0
  60. mindspore/common/_utils.py +13 -0
  61. mindspore/common/api.py +173 -258
  62. mindspore/common/auto_dynamic_shape.py +498 -0
  63. mindspore/common/dtype.py +18 -11
  64. mindspore/common/dump.py +6 -4
  65. mindspore/common/initializer.py +14 -14
  66. mindspore/common/jit_config.py +33 -15
  67. mindspore/common/lazy_inline.py +126 -7
  68. mindspore/common/mindir_util.py +101 -0
  69. mindspore/common/parameter.py +51 -41
  70. mindspore/common/seed.py +4 -4
  71. mindspore/common/sparse_tensor.py +13 -14
  72. mindspore/common/tensor.py +240 -145
  73. mindspore/communication/__init__.py +7 -4
  74. mindspore/communication/_comm_helper.py +83 -4
  75. mindspore/communication/management.py +152 -84
  76. mindspore/config/op_info.config +13 -2
  77. mindspore/config/super_bar_config.json +4 -2
  78. mindspore/context.py +143 -59
  79. mindspore/dataset/__init__.py +5 -5
  80. mindspore/dataset/audio/__init__.py +2 -2
  81. mindspore/dataset/audio/transforms.py +52 -52
  82. mindspore/dataset/callback/ds_callback.py +16 -2
  83. mindspore/dataset/core/config.py +68 -51
  84. mindspore/dataset/engine/cache_client.py +28 -5
  85. mindspore/dataset/engine/datasets.py +250 -112
  86. mindspore/dataset/engine/datasets_audio.py +43 -211
  87. mindspore/dataset/engine/datasets_standard_format.py +11 -35
  88. mindspore/dataset/engine/datasets_text.py +43 -67
  89. mindspore/dataset/engine/datasets_user_defined.py +86 -100
  90. mindspore/dataset/engine/datasets_vision.py +219 -1029
  91. mindspore/dataset/engine/iterators.py +11 -4
  92. mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +4 -0
  93. mindspore/dataset/engine/obs/util.py +3 -0
  94. mindspore/dataset/engine/samplers.py +1 -1
  95. mindspore/dataset/engine/validators.py +19 -5
  96. mindspore/dataset/text/__init__.py +3 -3
  97. mindspore/dataset/text/transforms.py +101 -127
  98. mindspore/dataset/text/utils.py +205 -138
  99. mindspore/dataset/transforms/__init__.py +1 -1
  100. mindspore/dataset/transforms/py_transforms_util.py +40 -12
  101. mindspore/dataset/transforms/transforms.py +95 -40
  102. mindspore/dataset/utils/browse_dataset.py +8 -2
  103. mindspore/dataset/utils/line_reader.py +17 -19
  104. mindspore/dataset/vision/__init__.py +3 -3
  105. mindspore/dataset/vision/c_transforms.py +6 -3
  106. mindspore/dataset/vision/transforms.py +409 -287
  107. mindspore/dataset/vision/utils.py +13 -14
  108. mindspore/dataset/vision/validators.py +11 -1
  109. mindspore/experimental/map_parameter.py +14 -0
  110. mindspore/{nn/optim_ex → experimental/optim}/__init__.py +30 -29
  111. mindspore/{nn/optim_ex → experimental/optim}/adam.py +59 -66
  112. mindspore/{nn/optim_ex → experimental/optim}/adamw.py +181 -203
  113. mindspore/experimental/optim/lr_scheduler.py +1427 -0
  114. mindspore/{nn/optim_ex → experimental/optim}/optimizer.py +252 -259
  115. mindspore/{nn/optim_ex → experimental/optim}/sgd.py +147 -152
  116. mindspore/gen_ops.py +273 -0
  117. mindspore/include/OWNERS +0 -1
  118. mindspore/include/api/data_type.h +2 -1
  119. mindspore/include/api/graph.h +0 -15
  120. mindspore/include/api/kernel.h +2 -0
  121. mindspore/include/api/kernel_api.h +37 -12
  122. mindspore/include/api/model.h +0 -14
  123. mindspore/include/api/types.h +37 -4
  124. mindspore/include/c_api/ms/abstract.h +67 -0
  125. mindspore/include/c_api/ms/attribute.h +197 -0
  126. mindspore/include/c_api/ms/base/handle_types.h +43 -0
  127. mindspore/include/c_api/ms/base/macros.h +32 -0
  128. mindspore/include/c_api/ms/base/status.h +33 -0
  129. mindspore/include/c_api/ms/base/types.h +282 -0
  130. mindspore/include/c_api/ms/context.h +102 -0
  131. mindspore/include/c_api/ms/graph.h +160 -0
  132. mindspore/include/c_api/ms/node.h +606 -0
  133. mindspore/include/c_api/ms/tensor.h +161 -0
  134. mindspore/include/c_api/ms/value.h +84 -0
  135. mindspore/include/dataset/constants.h +6 -5
  136. mindspore/include/dataset/execute.h +23 -13
  137. mindspore/include/dataset/text.h +26 -26
  138. mindspore/include/dataset/transforms.h +13 -13
  139. mindspore/include/dataset/vision.h +60 -60
  140. mindspore/include/dataset/vision_ascend.h +5 -6
  141. mindspore/include/dataset/vision_lite.h +17 -17
  142. mindspore/include/mindapi/base/type_id.h +1 -0
  143. mindspore/include/mindapi/base/types.h +1 -0
  144. mindspore/lib/libdnnl.so.2 +0 -0
  145. mindspore/lib/libjemalloc.so.2 +0 -0
  146. mindspore/lib/libmindspore.so +0 -0
  147. mindspore/lib/libmindspore_backend.so +0 -0
  148. mindspore/lib/libmindspore_common.so +0 -0
  149. mindspore/lib/libmindspore_core.so +0 -0
  150. mindspore/lib/libmindspore_glog.so.0 +0 -0
  151. mindspore/lib/libmindspore_gpr.so.15 +0 -0
  152. mindspore/lib/libmindspore_grpc++.so.1 +0 -0
  153. mindspore/lib/libmindspore_grpc.so.15 +0 -0
  154. mindspore/lib/libmindspore_shared_lib.so +0 -0
  155. mindspore/lib/libnnacl.so +0 -0
  156. mindspore/lib/libopencv_core.so.4.5 +0 -0
  157. mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
  158. mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
  159. mindspore/lib/libps_cache.so +0 -0
  160. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
  161. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
  162. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +9000 -0
  163. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
  164. mindspore/lib/plugin/ascend/libakg.so +0 -0
  165. mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
  166. mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
  167. mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
  168. mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
  169. mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
  170. mindspore/lib/plugin/cpu/libakg.so +0 -0
  171. mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
  172. mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
  173. mindspore/mindrecord/tools/imagenet_to_mr.py +1 -1
  174. mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
  175. mindspore/nn/__init__.py +0 -2
  176. mindspore/nn/cell.py +316 -74
  177. mindspore/nn/dynamic_lr.py +21 -21
  178. mindspore/nn/layer/activation.py +21 -28
  179. mindspore/nn/layer/basic.py +15 -13
  180. mindspore/nn/layer/channel_shuffle.py +1 -1
  181. mindspore/nn/layer/container.py +271 -9
  182. mindspore/nn/layer/conv.py +310 -207
  183. mindspore/nn/layer/dense.py +8 -5
  184. mindspore/nn/layer/embedding.py +33 -27
  185. mindspore/nn/layer/flash_attention.py +82 -41
  186. mindspore/nn/layer/image.py +8 -6
  187. mindspore/nn/layer/math.py +13 -18
  188. mindspore/nn/layer/normalization.py +107 -66
  189. mindspore/nn/layer/padding.py +1 -1
  190. mindspore/nn/layer/pooling.py +131 -109
  191. mindspore/nn/layer/rnn_cells.py +22 -17
  192. mindspore/nn/layer/rnns.py +13 -16
  193. mindspore/nn/layer/thor_layer.py +1 -1
  194. mindspore/nn/layer/transformer.py +221 -154
  195. mindspore/nn/learning_rate_schedule.py +9 -1
  196. mindspore/nn/loss/loss.py +235 -174
  197. mindspore/nn/optim/ada_grad.py +2 -1
  198. mindspore/nn/optim/adadelta.py +1 -0
  199. mindspore/nn/optim/adafactor.py +2 -1
  200. mindspore/nn/optim/adam.py +7 -4
  201. mindspore/nn/optim/adamax.py +3 -2
  202. mindspore/nn/optim/adasum.py +2 -2
  203. mindspore/nn/optim/asgd.py +2 -3
  204. mindspore/nn/optim/ftrl.py +6 -5
  205. mindspore/nn/optim/lamb.py +7 -4
  206. mindspore/nn/optim/lars.py +1 -1
  207. mindspore/nn/optim/lazyadam.py +5 -3
  208. mindspore/nn/optim/momentum.py +2 -1
  209. mindspore/nn/optim/optimizer.py +53 -4
  210. mindspore/nn/optim/proximal_ada_grad.py +3 -4
  211. mindspore/nn/optim/rmsprop.py +4 -3
  212. mindspore/nn/optim/rprop.py +23 -12
  213. mindspore/nn/optim/sgd.py +26 -11
  214. mindspore/nn/optim/thor.py +9 -7
  215. mindspore/nn/probability/bijector/bijector.py +5 -5
  216. mindspore/nn/probability/bijector/power_transform.py +27 -27
  217. mindspore/nn/probability/bijector/softplus.py +3 -3
  218. mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -3
  219. mindspore/nn/probability/distribution/bernoulli.py +5 -5
  220. mindspore/nn/probability/distribution/beta.py +3 -3
  221. mindspore/nn/probability/distribution/categorical.py +7 -7
  222. mindspore/nn/probability/distribution/cauchy.py +0 -1
  223. mindspore/nn/probability/distribution/distribution.py +3 -3
  224. mindspore/nn/probability/distribution/gamma.py +3 -3
  225. mindspore/nn/probability/distribution/geometric.py +4 -4
  226. mindspore/nn/probability/distribution/gumbel.py +4 -4
  227. mindspore/nn/probability/distribution/log_normal.py +2 -2
  228. mindspore/nn/probability/distribution/logistic.py +2 -2
  229. mindspore/nn/probability/distribution/poisson.py +4 -4
  230. mindspore/nn/probability/distribution/transformed_distribution.py +3 -3
  231. mindspore/nn/probability/distribution/uniform.py +6 -6
  232. mindspore/nn/wrap/cell_wrapper.py +78 -34
  233. mindspore/nn/wrap/grad_reducer.py +8 -5
  234. mindspore/nn/wrap/loss_scale.py +105 -42
  235. mindspore/numpy/array_creations.py +1 -2
  236. mindspore/numpy/array_ops.py +3 -2
  237. mindspore/offline_debug/convert_async.py +2 -2
  238. mindspore/ops/_grad_experimental/__init__.py +0 -5
  239. mindspore/ops/_grad_experimental/grad_array_ops.py +1 -2
  240. mindspore/ops/_grad_experimental/grad_comm_ops.py +15 -2
  241. mindspore/ops/_grad_experimental/grad_debug_ops.py +0 -37
  242. mindspore/ops/_grad_experimental/grad_implementations.py +10 -0
  243. mindspore/ops/_grad_experimental/grad_inner_ops.py +2 -216
  244. mindspore/ops/_grad_experimental/grad_math_ops.py +0 -181
  245. mindspore/ops/_grad_experimental/grad_sparse.py +15 -0
  246. mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
  247. mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +165 -109
  248. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +144 -86
  249. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +172 -187
  250. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +51 -57
  251. mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +6 -17
  252. mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +1 -1
  253. mindspore/ops/_op_impl/aicpu/__init__.py +14 -2
  254. mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
  255. mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
  256. mindspore/ops/_op_impl/aicpu/eps.py +32 -0
  257. mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
  258. mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
  259. mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
  260. mindspore/ops/_op_impl/aicpu/multinomial.py +3 -3
  261. mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
  262. mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
  263. mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
  264. mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
  265. mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
  266. mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
  267. mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
  268. mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -5
  269. mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -5
  270. mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
  271. mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
  272. mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
  273. mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
  274. mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
  275. mindspore/ops/_op_impl/tbe/__init__.py +4 -4
  276. mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
  277. mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
  278. mindspore/ops/_primitive_cache.py +1 -1
  279. mindspore/ops/_tracefunc.py +45 -13
  280. mindspore/ops/_utils/utils.py +4 -1
  281. mindspore/ops/_vmap/vmap_array_ops.py +3 -3
  282. mindspore/ops/_vmap/vmap_base.py +3 -3
  283. mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
  284. mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
  285. mindspore/ops/_vmap/vmap_math_ops.py +5 -2
  286. mindspore/ops/_vmap/vmap_nn_ops.py +61 -7
  287. mindspore/ops/arg_dtype_cast.py +54 -0
  288. mindspore/ops/composite/base.py +37 -10
  289. mindspore/ops/composite/math_ops.py +5 -4
  290. mindspore/ops/composite/multitype_ops/_compile_utils.py +273 -72
  291. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +16 -9
  292. mindspore/ops/composite/multitype_ops/add_impl.py +43 -4
  293. mindspore/ops/composite/multitype_ops/getitem_impl.py +40 -2
  294. mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
  295. mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
  296. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
  297. mindspore/ops/deprecated.py +304 -0
  298. mindspore/ops/function/__init__.py +4 -1
  299. mindspore/ops/function/array_func.py +167 -189
  300. mindspore/ops/function/clip_func.py +81 -13
  301. mindspore/ops/function/debug_func.py +1 -1
  302. mindspore/ops/function/grad/grad_func.py +18 -8
  303. mindspore/ops/function/image_func.py +10 -4
  304. mindspore/ops/function/linalg_func.py +5 -5
  305. mindspore/ops/function/math_func.py +575 -386
  306. mindspore/ops/function/nn_func.py +470 -251
  307. mindspore/ops/function/random_func.py +86 -56
  308. mindspore/ops/function/sparse_func.py +1 -1
  309. mindspore/ops/function/sparse_unary_func.py +14 -12
  310. mindspore/ops/function/vmap_func.py +6 -5
  311. mindspore/ops/functional.py +15 -10
  312. mindspore/ops/op_info_register.py +235 -19
  313. mindspore/ops/operations/__init__.py +25 -17
  314. mindspore/ops/operations/_grad_ops.py +52 -7
  315. mindspore/ops/operations/_inner_ops.py +213 -12
  316. mindspore/ops/operations/_quant_ops.py +4 -8
  317. mindspore/ops/operations/_sequence_ops.py +42 -0
  318. mindspore/ops/operations/array_ops.py +64 -280
  319. mindspore/ops/operations/comm_ops.py +105 -57
  320. mindspore/ops/operations/custom_ops.py +10 -3
  321. mindspore/ops/operations/debug_ops.py +8 -4
  322. mindspore/ops/operations/image_ops.py +18 -12
  323. mindspore/ops/operations/math_ops.py +185 -138
  324. mindspore/ops/operations/nn_ops.py +716 -492
  325. mindspore/ops/operations/other_ops.py +0 -22
  326. mindspore/ops/operations/random_ops.py +53 -111
  327. mindspore/ops/operations/sparse_ops.py +3 -1
  328. mindspore/ops/primitive.py +24 -18
  329. mindspore/parallel/_auto_parallel_context.py +68 -8
  330. mindspore/parallel/_cost_model_context.py +2 -2
  331. mindspore/parallel/_offload_context.py +17 -3
  332. mindspore/parallel/_parallel_serialization.py +2 -2
  333. mindspore/parallel/_ps_context.py +12 -0
  334. mindspore/parallel/_tensor.py +14 -12
  335. mindspore/parallel/_transformer/layers.py +5 -3
  336. mindspore/parallel/_transformer/loss.py +1 -0
  337. mindspore/parallel/_transformer/moe.py +2 -2
  338. mindspore/parallel/_transformer/op_parallel_config.py +12 -1
  339. mindspore/parallel/_transformer/transformer.py +23 -3
  340. mindspore/parallel/_utils.py +11 -7
  341. mindspore/parallel/algo_parameter_config.py +85 -5
  342. mindspore/parallel/checkpoint_transform.py +6 -10
  343. mindspore/parallel/shard.py +4 -4
  344. mindspore/profiler/common/struct_type.py +3 -3
  345. mindspore/profiler/common/util.py +3 -2
  346. mindspore/profiler/envprofiling.py +1 -1
  347. mindspore/profiler/parser/aicpu_data_parser.py +5 -3
  348. mindspore/profiler/parser/ascend_flops_generator.py +2 -2
  349. mindspore/profiler/parser/ascend_fpbp_generator.py +1 -1
  350. mindspore/profiler/parser/ascend_hccl_generator.py +17 -12
  351. mindspore/profiler/parser/ascend_msprof_exporter.py +104 -252
  352. mindspore/profiler/parser/ascend_msprof_generator.py +8 -8
  353. mindspore/profiler/parser/ascend_op_generator.py +5 -5
  354. mindspore/profiler/parser/ascend_steptrace_generator.py +6 -4
  355. mindspore/profiler/parser/ascend_timeline_generator.py +9 -6
  356. mindspore/profiler/parser/base_timeline_generator.py +9 -7
  357. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +14 -10
  358. mindspore/profiler/parser/flops_parser.py +15 -11
  359. mindspore/profiler/parser/framework_parser.py +37 -21
  360. mindspore/profiler/parser/hccl_parser.py +16 -12
  361. mindspore/profiler/parser/integrator.py +22 -11
  362. mindspore/profiler/parser/memory_usage_parser.py +2 -2
  363. mindspore/profiler/parser/minddata_analyzer.py +12 -14
  364. mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
  365. mindspore/profiler/parser/msadvisor_parser.py +8 -4
  366. mindspore/profiler/parser/op_intermediate_parser.py +5 -2
  367. mindspore/profiler/parser/optime_parser.py +1 -1
  368. mindspore/profiler/parser/profiler_info.py +2 -2
  369. mindspore/profiler/parser/step_trace_parser.py +11 -14
  370. mindspore/profiler/profiling.py +139 -71
  371. mindspore/rewrite/api/node.py +102 -19
  372. mindspore/rewrite/api/node_type.py +5 -1
  373. mindspore/rewrite/api/scoped_value.py +9 -17
  374. mindspore/rewrite/api/symbol_tree.py +131 -47
  375. mindspore/rewrite/ast_helpers/__init__.py +2 -1
  376. mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
  377. mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
  378. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +93 -46
  379. mindspore/rewrite/common/rewrite_elog.py +5 -1
  380. mindspore/rewrite/namer.py +33 -24
  381. mindspore/rewrite/namespace.py +14 -5
  382. mindspore/{_extends/graph_kernel/expanders/complex → rewrite/node}/__init__.py +9 -9
  383. mindspore/rewrite/node/call_function.py +79 -0
  384. mindspore/rewrite/node/cell_container.py +135 -0
  385. mindspore/rewrite/node/control_flow.py +88 -0
  386. mindspore/rewrite/{node.py → node/node.py} +273 -234
  387. mindspore/rewrite/node/node_manager.py +254 -0
  388. mindspore/rewrite/{topological_manager.py → node/node_topological_manager.py} +13 -46
  389. mindspore/rewrite/parsers/arguments_parser.py +22 -21
  390. mindspore/rewrite/parsers/assign_parser.py +216 -221
  391. mindspore/rewrite/parsers/attribute_parser.py +9 -7
  392. mindspore/rewrite/parsers/class_def_parser.py +174 -113
  393. mindspore/rewrite/parsers/constant_parser.py +9 -6
  394. mindspore/rewrite/parsers/container_parser.py +9 -7
  395. mindspore/rewrite/parsers/for_parser.py +36 -15
  396. mindspore/rewrite/parsers/function_def_parser.py +24 -16
  397. mindspore/rewrite/parsers/if_parser.py +28 -24
  398. mindspore/rewrite/parsers/module_parser.py +196 -25
  399. mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
  400. mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
  401. mindspore/rewrite/parsers/return_parser.py +6 -6
  402. mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
  403. mindspore/rewrite/sparsify/utils.py +1 -1
  404. mindspore/rewrite/symbol_tree.py +525 -577
  405. mindspore/rewrite/symbol_tree_builder.py +9 -193
  406. mindspore/rewrite/symbol_tree_dumper.py +2 -2
  407. mindspore/run_check/_check_version.py +2 -2
  408. mindspore/{ops/bprop_mindir → safeguard}/__init__.py +4 -3
  409. mindspore/safeguard/rewrite_obfuscation.py +517 -0
  410. mindspore/scipy/linalg.py +1 -1
  411. mindspore/scipy/optimize/minimize.py +7 -3
  412. mindspore/train/_utils.py +7 -3
  413. mindspore/train/amp.py +323 -123
  414. mindspore/train/anf_ir_pb2.py +14 -2
  415. mindspore/train/callback/_backup_and_restore.py +2 -12
  416. mindspore/train/callback/_callback.py +29 -4
  417. mindspore/train/callback/_checkpoint.py +23 -8
  418. mindspore/train/callback/_early_stop.py +2 -2
  419. mindspore/train/callback/_landscape.py +4 -4
  420. mindspore/train/callback/_loss_monitor.py +2 -2
  421. mindspore/train/callback/_on_request_exit.py +2 -2
  422. mindspore/train/callback/_reduce_lr_on_plateau.py +3 -4
  423. mindspore/train/callback/_summary_collector.py +14 -7
  424. mindspore/train/callback/_time_monitor.py +58 -5
  425. mindspore/train/data_sink.py +5 -11
  426. mindspore/train/dataset_helper.py +83 -57
  427. mindspore/train/loss_scale_manager.py +2 -2
  428. mindspore/train/metrics/__init__.py +3 -3
  429. mindspore/train/metrics/cosine_similarity.py +1 -1
  430. mindspore/train/metrics/hausdorff_distance.py +3 -2
  431. mindspore/train/metrics/mean_surface_distance.py +3 -2
  432. mindspore/train/metrics/metric.py +39 -19
  433. mindspore/train/metrics/roc.py +2 -2
  434. mindspore/train/metrics/root_mean_square_surface_distance.py +4 -3
  435. mindspore/train/mind_ir_pb2.py +85 -36
  436. mindspore/train/model.py +185 -45
  437. mindspore/train/serialization.py +390 -150
  438. mindspore/train/summary/_writer_pool.py +3 -2
  439. mindspore/train/summary/summary_record.py +14 -10
  440. mindspore/train/train_thor/convert_utils.py +3 -3
  441. mindspore/train/train_thor/dataset_helper.py +1 -1
  442. mindspore/version.py +1 -1
  443. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/METADATA +6 -7
  444. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/RECORD +447 -507
  445. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/entry_points.txt +0 -1
  446. mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
  447. mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
  448. mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
  449. mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
  450. mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
  451. mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
  452. mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
  453. mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
  454. mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
  455. mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
  456. mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
  457. mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
  458. mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
  459. mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
  460. mindspore/_akg/akg/tvm/rpc/base.py +0 -182
  461. mindspore/_akg/akg/tvm/rpc/client.py +0 -436
  462. mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
  463. mindspore/_akg/akg/tvm/rpc/server.py +0 -413
  464. mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
  465. mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
  466. mindspore/_extends/graph_kernel/expander.py +0 -80
  467. mindspore/_extends/graph_kernel/expanders/__init__.py +0 -54
  468. mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
  469. mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
  470. mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
  471. mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
  472. mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
  473. mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
  474. mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
  475. mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
  476. mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
  477. mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
  478. mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
  479. mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
  480. mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
  481. mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
  482. mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
  483. mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
  484. mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
  485. mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
  486. mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
  487. mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
  488. mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
  489. mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
  490. mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
  491. mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
  492. mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
  493. mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
  494. mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
  495. mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
  496. mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
  497. mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
  498. mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
  499. mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
  500. mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
  501. mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
  502. mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
  503. mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
  504. mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
  505. mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
  506. mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
  507. mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
  508. mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
  509. mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
  510. mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
  511. mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
  512. mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
  513. mindspore/dataset/datapreprocess/__init__.py +0 -20
  514. mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
  515. mindspore/include/api/net.h +0 -142
  516. mindspore/nn/lr_scheduler.py +0 -262
  517. mindspore/ops/_grad_experimental/grad_image_ops.py +0 -248
  518. mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -181
  519. mindspore/ops/_grad_experimental/grad_other_ops.py +0 -72
  520. mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
  521. mindspore/ops/_grad_experimental/grad_sequence_ops.py +0 -351
  522. mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -0
  523. mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -0
  524. mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -0
  525. mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
  526. mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
  527. mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -0
  528. mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -0
  529. mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
  530. mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  531. mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -0
  532. mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -0
  533. mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -0
  534. mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -0
  535. mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -0
  536. mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
  537. mindspore/rewrite/node_visitor.py +0 -44
  538. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/WHEEL +0 -0
  539. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/top_level.txt +0 -0
@@ -52,12 +52,15 @@ class ReduceOp:
52
52
  Before running the following examples, you need to configure the communication environment variables.
53
53
 
54
54
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
55
- Please see the `Ascend tutorial
56
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
55
+ Please see the `rank table Startup
56
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
57
57
  for more details.
58
58
 
59
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
60
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
59
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
60
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
61
+
62
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
63
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
61
64
 
62
65
  This example should be run with multiple devices.
63
66
 
@@ -140,14 +143,17 @@ class AllReduce(Primitive):
140
143
  Before running the following examples, you need to configure the communication environment variables.
141
144
 
142
145
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
143
- Please see the `Ascend tutorial
144
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
146
+ Please see the `rank table Startup
147
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
145
148
  for more details.
146
149
 
147
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
148
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
150
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
151
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
149
152
 
150
- This example should be run with multiple devices.
153
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
154
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
155
+
156
+ This example should be run with 2 devices.
151
157
 
152
158
  >>> import numpy as np
153
159
  >>> from mindspore.communication import init
@@ -174,7 +180,7 @@ class AllReduce(Primitive):
174
180
 
175
181
  Tutorial Examples:
176
182
  - `Distributed Set Communication Primitives - AllReduce
177
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#AllReduce>`_
183
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#allreduce>`_
178
184
 
179
185
  """
180
186
 
@@ -226,12 +232,15 @@ class AllGather(PrimitiveWithInfer):
226
232
  Before running the following examples, you need to configure the communication environment variables.
227
233
 
228
234
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
229
- Please see the `Ascend tutorial
230
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
235
+ Please see the `rank table Startup
236
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
231
237
  for more details.
232
238
 
233
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
234
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
239
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
240
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
241
+
242
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
243
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
235
244
 
236
245
  This example should be run with 2 devices.
237
246
 
@@ -263,7 +272,7 @@ class AllGather(PrimitiveWithInfer):
263
272
 
264
273
  Tutorial Examples:
265
274
  - `Distributed Set Communication Primitives - AllGather
266
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#AllGather>`_
275
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#allgather>`_
267
276
 
268
277
  """
269
278
 
@@ -448,12 +457,15 @@ class ReduceScatter(Primitive):
448
457
  Before running the following examples, you need to configure the communication environment variables.
449
458
 
450
459
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
451
- Please see the `Ascend tutorial
452
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
460
+ Please see the `rank table Startup
461
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
453
462
  for more details.
454
463
 
455
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
456
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
464
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
465
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
466
+
467
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
468
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
457
469
 
458
470
  This example should be run with 2 devices.
459
471
 
@@ -486,7 +498,7 @@ class ReduceScatter(Primitive):
486
498
 
487
499
  Tutorial Examples:
488
500
  - `Distributed Set Communication Primitives - ReduceScatter
489
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#ReduceScatter>`_
501
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#reducescatter>`_
490
502
 
491
503
  """
492
504
 
@@ -587,12 +599,15 @@ class Broadcast(PrimitiveWithInfer):
587
599
  Before running the following examples, you need to configure the communication environment variables.
588
600
 
589
601
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
590
- Please see the `Ascend tutorial
591
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
602
+ Please see the `rank table Startup
603
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
592
604
  for more details.
593
605
 
594
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
595
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
606
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
607
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
608
+
609
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
610
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
596
611
 
597
612
  This example should be run with multiple devices.
598
613
 
@@ -623,7 +638,7 @@ class Broadcast(PrimitiveWithInfer):
623
638
 
624
639
  Tutorial Examples:
625
640
  - `Distributed Set Communication Primitives - Broadcast
626
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#Broadcast>`_
641
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#broadcast>`_
627
642
 
628
643
  """
629
644
 
@@ -643,7 +658,7 @@ class Broadcast(PrimitiveWithInfer):
643
658
  if not isinstance(x_dtype, tuple):
644
659
  raise TypeError(f"For '{self.name}', the 'input_x' must be a tuple, but got {type(x_dtype).__name__}!")
645
660
  for _ele in x_dtype:
646
- check_collective_target_dtype('input_x', _ele, self.name)
661
+ check_collective_target_dtype('tuple input_x', _ele, self.name)
647
662
  return x_dtype
648
663
 
649
664
 
@@ -713,11 +728,11 @@ class NeighborExchange(Primitive):
713
728
  The user needs to preset
714
729
  communication environment variables before running the following example, please check the details on the
715
730
  official website of `MindSpore \
716
- <https://www.mindspore.cn/docs/en/r2.1/api_python/mindspore.ops.html#communication-operator>`_.
731
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/mindspore.ops.primitive.html#communication-operator>`_.
717
732
 
718
733
  This operator requires a full-mesh network topology, each device has the same vlan id, and the ip & mask are
719
734
  in the same subnet, please check the `details \
720
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#notes>`_.
735
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#notes>`_.
721
736
 
722
737
  Args:
723
738
  send_rank_ids (list(int)): Ranks which the data is sent to.
@@ -756,7 +771,7 @@ class NeighborExchange(Primitive):
756
771
  ... def construct(self, x):
757
772
  ... out = self.neighborexchange((x,))
758
773
  ...
759
- >>> ms.set_context(mode=ms.GRAPH_MODE, device_target='Ascend')
774
+ >>> ms.set_context(mode=ms.GRAPH_MODE)
760
775
  >>> init()
761
776
  >>> net = Net()
762
777
  >>> input_x = Tensor(np.ones([3, 3]), dtype = ms.float32)
@@ -766,7 +781,7 @@ class NeighborExchange(Primitive):
766
781
 
767
782
  Tutorial Examples:
768
783
  - `Distributed Set Communication Primitives - NeighborExchange
769
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#NeighborExchange>`_
784
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#neighborexchange>`_
770
785
 
771
786
  """
772
787
 
@@ -799,7 +814,7 @@ class AlltoAll(PrimitiveWithInfer):
799
814
  Note:
800
815
  This operator requires a full-mesh network topology, each device has the same vlan id, and the ip & mask are
801
816
  in the same subnet, please check the `details \
802
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#notes>`_.
817
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#notes>`_.
803
818
 
804
819
  Args:
805
820
  split_count (int): On each process, divide blocks into split_count number.
@@ -829,12 +844,15 @@ class AlltoAll(PrimitiveWithInfer):
829
844
  Before running the following examples, you need to configure the communication environment variables.
830
845
 
831
846
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
832
- Please see the `Ascend tutorial
833
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
847
+ Please see the `rank table Startup
848
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
834
849
  for more details.
835
850
 
836
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
837
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
851
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
852
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
853
+
854
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
855
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
838
856
 
839
857
  This example should be run with 8 devices.
840
858
 
@@ -854,7 +872,7 @@ class AlltoAll(PrimitiveWithInfer):
854
872
  ... out = self.alltoall(x)
855
873
  ... return out
856
874
  ...
857
- >>> ms.set_context(mode=ms.GRAPH_MODE, device_target='Ascend')
875
+ >>> ms.set_context(mode=ms.GRAPH_MODE)
858
876
  >>> init()
859
877
  >>> net = Net()
860
878
  >>> rank_id = int(os.getenv("RANK_ID"))
@@ -865,7 +883,7 @@ class AlltoAll(PrimitiveWithInfer):
865
883
 
866
884
  Tutorial Examples:
867
885
  - `Distributed Set Communication Primitives - AlltoAll
868
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#AlltoAll>`_
886
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#alltoall>`_
869
887
 
870
888
  """
871
889
 
@@ -913,7 +931,7 @@ class NeighborExchangeV2(Primitive):
913
931
  Note:
914
932
  This operator requires a full-mesh network topology, each device has the same vlan id, and the ip & mask are
915
933
  in the same subnet, please check the `details \
916
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#notes>`_.
934
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#notes>`_.
917
935
 
918
936
  Args:
919
937
  send_rank_ids (list(int)): Ranks which the data is sent to. 8 rank_ids represents 8 directions, if one
@@ -950,46 +968,67 @@ class NeighborExchangeV2(Primitive):
950
968
  Before running the following examples, you need to configure the communication environment variables.
951
969
 
952
970
  For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
953
- Please see the `Ascend tutorial
954
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_ascend.html#preparations>`_
971
+ Please see the `rank table Startup
972
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/rank_table.html>`_
955
973
  for more details.
956
974
 
957
- For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
958
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/parallel/train_gpu.html#preparation>`_ .
975
+ For the GPU devices, users need to prepare the host file and mpi, please see the `mpirun Startup
976
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/mpirun.html>`_ .
977
+
978
+ For the CPU device, users need to write a dynamic cluster startup script, please see the `Dynamic Cluster
979
+ Startup <https://www.mindspore.cn/tutorials/experts/en/r2.2/parallel/dynamic_cluster.html>`_ .
959
980
 
960
981
  This example should be run with 2 devices.
961
982
 
962
983
  >>> import os
963
984
  >>> import mindspore as ms
964
- >>> from mindspore import Tensor
965
985
  >>> from mindspore.communication import init
966
986
  >>> import mindspore.nn as nn
967
987
  >>> import mindspore.ops as ops
968
988
  >>> import numpy as np
969
- >>> class Net(nn.Cell):
989
+ >>>
990
+ >>> class Net0(nn.Cell):
970
991
  ... def __init__(self):
971
- ... super(Net, self).__init__()
972
- ... self.neighborexchangev2 = ops.NeighborExchangeV2(send_rank_ids=[-1, -1, -1, -1, 1, -1, -1, -1],
973
- ... send_lens=[0, 1, 0, 0],
974
- ... recv_rank_ids=[-1, -1, -1, -1, 1, -1, -1, -1],
975
- ... recv_lens=[0, 1, 0, 0],
976
- ... data_format="NCHW")
992
+ ... super(Net0, self).__init__()
993
+ ... self.neighbor_exchangev2 = ops.NeighborExchangeV2(send_rank_ids=[-1, -1, -1, -1, 1, -1, -1, -1],
994
+ ... send_lens=[0, 1, 0, 0],
995
+ ... recv_rank_ids=[-1, -1, -1, -1, 1, -1, -1, -1],
996
+ ... recv_lens=[0, 1, 0, 0], data_format="NCHW")
977
997
  ...
978
998
  ... def construct(self, x):
979
- ... out = self.neighborexchangev2(x)
999
+ ... out = self.neighbor_exchangev2(x)
980
1000
  ... return out
1001
+ >>>
1002
+ ... class Net1(nn.Cell):
1003
+ ... def __init__(self):
1004
+ ... super(Net1, self).__init__()
1005
+ ... self.neighbor_exchangev2 = ops.NeighborExchangeV2(send_rank_ids=[0, -1, -1, -1, -1, -1, -1, -1],
1006
+ ... send_lens=[1, 0, 0, 0],
1007
+ ... recv_rank_ids=[0, -1, -1, -1, -1, -1, -1, -1],
1008
+ ... recv_lens=[1, 0, 0, 0], data_format="NCHW")
981
1009
  ...
982
- >>> ms.set_context(mode=ms.GRAPH_MODE, device_target='Ascend')
1010
+ ... def construct(self, x):
1011
+ ... out = self.neighbor_exchangev2(x)
1012
+ ... return out
1013
+ >>>
1014
+ >>> ms.set_context(mode=ms.GRAPH_MODE)
983
1015
  >>> init()
984
- >>> input_x = Tensor(np.ones([1, 1, 2, 2]), dtype = ms.float32)
985
- >>> net = Net()
986
- >>> output = net(input_x)
987
- >>> print(output)
1016
+ >>> rank_id = int(os.getenv("RANK_ID"))
1017
+ >>> if (rank_id % 2 == 0):
1018
+ >>> input_x = ms.Tensor(np.ones([1, 1, 2, 2]), dtype = ms.float32)
1019
+ >>> net = Net0()
1020
+ >>> output = net(input_x)
1021
+ >>> print(output)
1022
+ >>> else:
1023
+ >>> input_x = ms.Tensor(np.ones([1, 1, 2, 2]) * 2, dtype = ms.float32)
1024
+ >>> net = Net1()
1025
+ >>> output = net(input_x)
1026
+ >>> print(output)
988
1027
  [[[[1. 1.], [1. 1.], [2. 2.]]]]
989
1028
 
990
1029
  Tutorial Examples:
991
1030
  - `Distributed Set Communication Primitives - NeighborExchangeV2
992
- <https://www.mindspore.cn/docs/en/r2.1/api_python/samples/ops/communicate_ops.html#NeighborExchangeV2>`_
1031
+ <https://www.mindspore.cn/docs/en/r2.2/api_python/samples/ops/communicate_ops.html#neighborexchangev2>`_
993
1032
 
994
1033
  """
995
1034
 
@@ -1004,6 +1043,15 @@ class NeighborExchangeV2(Primitive):
1004
1043
  self.format = data_format
1005
1044
  self.add_prim_attr('group', _get_group(group))
1006
1045
  self.add_prim_attr('no_eliminate', True)
1046
+ self.rank_size = get_group_size(_get_group(group))
1047
+ for rank_id in send_rank_ids:
1048
+ if rank_id != -1:
1049
+ validator.check_number_range(rank_id, 0, self.rank_size, validator.INC_LEFT, int,
1050
+ "rank_id in send_rank_ids")
1051
+ for rank_id in recv_rank_ids:
1052
+ if rank_id != -1:
1053
+ validator.check_number_range(rank_id, 0, self.rank_size, validator.INC_LEFT, int,
1054
+ "rank_id in recv_rank_ids")
1007
1055
 
1008
1056
  def __call__(self, tensor):
1009
1057
  raise NotImplementedError
@@ -146,10 +146,11 @@ class Custom(ops.PrimitiveWithInfer):
146
146
  function if needed. Then these `Custom` objects can be directly used in neural networks.
147
147
  Detailed description and introduction of user-defined operators, including correct writing of parameters,
148
148
  please refer to `Custom Operators Tutorial
149
- <https://www.mindspore.cn/tutorials/experts/en/r2.1/operation/op_custom.html>`_ .
149
+ <https://www.mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html>`_ .
150
150
 
151
151
  .. warning::
152
- This is an experimental API that is subject to change.
152
+ - This is an experimental API that is subject to change.
153
+ - Currently, the functionality of Custom does not support Ascend 910B.
153
154
 
154
155
  .. note::
155
156
  The supported platforms are determined by the input `func_type`. The supported platforms are as follows:
@@ -162,6 +163,12 @@ class Custom(ops.PrimitiveWithInfer):
162
163
  - "julia": supports ["CPU"].
163
164
  - "aicpu": supports ["Ascend"].
164
165
 
166
+ If run on ge backend, use `CustomRegOp` to generate the registration information of "aicpu" and "tbe" operator,
167
+ use `custom_info_register` to bind the registration information to the `func` of the "tbe" operator,
168
+ then save the registration information of "aicpu" operator and the `func` implementation of "tbe" operator to
169
+ a file or separate files, keep these files in a separate directory, and set the absolute path of this directory
170
+ to environment variable "MS_DEV_CUSTOM_OPP_PATH" before running the network.
171
+
165
172
  Args:
166
173
  func (Union[function, str]):
167
174
 
@@ -620,7 +627,7 @@ class Custom(ops.PrimitiveWithInfer):
620
627
  raise TypeError(
621
628
  "{}, the legal path for the file is {}, but the file is {}".format(
622
629
  self.log_prefix, legal_path, file_path))
623
- if not file_path.endswith("so"):
630
+ if file_path.endswith(("cu", "cpp", "cc")):
624
631
  file_path = _compile_aot(file_path)
625
632
  self.func = file_path + ":" + file_name_list[1]
626
633
 
@@ -58,7 +58,7 @@ class ScalarSummary(Primitive):
58
58
  This operator will put a scalar to a summary file with protocol buffer format. It must be used with SummaryRecord
59
59
  or SummaryCollector, which specify the directory of the summary file. The summary file can
60
60
  be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
61
- mindinsight/docs/en/r2.1/index.html>`_ for details.
61
+ mindinsight/docs/en/r2.2/index.html>`_ for details.
62
62
 
63
63
  Inputs:
64
64
  - **name** (str) - The name of the input variable, it must not be an empty string.
@@ -104,6 +104,7 @@ class ScalarSummary(Primitive):
104
104
  raise ValueError('The Summary is not supported, please without `-s on` and recompile source.')
105
105
 
106
106
  self.add_prim_attr("side_effect_io", True)
107
+ self.add_prim_attr("channel_name", "ms_scalar_summary")
107
108
 
108
109
  def __call__(self, *args):
109
110
  _cache_summary_data(self.name, args[0], args[1])
@@ -114,7 +115,7 @@ class ImageSummary(PrimitiveWithInfer):
114
115
  This operator will put an image tensor to a summary file with protocol buffer format. It must be used with
115
116
  SummaryRecord or SummaryCollector, which specify the directory of the summary file. The summary file can
116
117
  be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
117
- mindinsight/docs/en/r2.1/index.html>`_ for details.
118
+ mindinsight/docs/en/r2.2/index.html>`_ for details.
118
119
 
119
120
  Inputs:
120
121
  - **name** (str) - The name of the input variable, it must not be an empty string.
@@ -153,6 +154,7 @@ class ImageSummary(PrimitiveWithInfer):
153
154
  raise ValueError('The Summary is not supported, please without `-s on` and recompile source.')
154
155
 
155
156
  self.add_prim_attr("side_effect_io", True)
157
+ self.add_prim_attr("channel_name", "ms_image_summary")
156
158
 
157
159
  def __infer__(self, name, value):
158
160
  _check_summary_param(name, value, self.__class__.__name__)
@@ -175,7 +177,7 @@ class TensorSummary(Primitive):
175
177
  This operator will put a tensor to a summary file with protocol buffer format. It must be used with SummaryRecord
176
178
  or SummaryCollector, which specify the directory of the summary file. The summary file can
177
179
  be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
178
- mindinsight/docs/en/r2.1/index.html>`_ for details.
180
+ mindinsight/docs/en/r2.2/index.html>`_ for details.
179
181
 
180
182
  Inputs:
181
183
  - **name** (str) - The name of the input variable.
@@ -221,6 +223,7 @@ class TensorSummary(Primitive):
221
223
  raise ValueError('The Summary is not supported, please without `-s on` and recompile source.')
222
224
 
223
225
  self.add_prim_attr("side_effect_io", True)
226
+ self.add_prim_attr("channel_name", "ms_tensor_summary")
224
227
 
225
228
  def __call__(self, *args):
226
229
  _cache_summary_data(self.name, args[0], args[1])
@@ -231,7 +234,7 @@ class HistogramSummary(PrimitiveWithInfer):
231
234
  This operator will calculate the histogram of a tensor and put it to a summary file with protocol buffer format.
232
235
  It must be used with SummaryRecord or SummaryCollector, which specify the directory of the summary file.
233
236
  The summary file can be loaded and shown by MindInsight, see `MindInsight documents <https://www.mindspore.cn/
234
- mindinsight/docs/en/r2.1/index.html>`_ for details.
237
+ mindinsight/docs/en/r2.2/index.html>`_ for details.
235
238
 
236
239
  Inputs:
237
240
  - **name** (str) - The name of the input variable.
@@ -276,6 +279,7 @@ class HistogramSummary(PrimitiveWithInfer):
276
279
  raise ValueError('The Summary is not supported, please without `-s on` and recompile source.')
277
280
 
278
281
  self.add_prim_attr("side_effect_io", True)
282
+ self.add_prim_attr("channel_name", "ms_histogram_summary")
279
283
 
280
284
  def __infer__(self, name, value):
281
285
  _check_summary_param(name, value, self.__class__.__name__)
@@ -180,7 +180,7 @@ class AdjustHue(Primitive):
180
180
 
181
181
 
182
182
  class ExtractGlimpse(Primitive):
183
- """
183
+ r"""
184
184
  Extracts glimpses(usually subarea of rectangle) from the input image Tensor and return as windows.
185
185
 
186
186
  Note:
@@ -205,20 +205,20 @@ class ExtractGlimpse(Primitive):
205
205
  - When `noise` is ``'zero'`` , the value of `uniform_noise` must be ``'False'`` and the
206
206
  filling noise will be zero so that the result is fixed.
207
207
  - When `uniform_noise` is ``'True'`` , the value of `noise` only can be ``'uniform'`` .
208
- When `uniform_noise` is ``'False'`` , the value of `noise` can be ``'uniform'`` , ``'gaussian'`` and
208
+ When `uniform_noise` is ``'False'`` , the value of `noise` can be ``'uniform'`` , ``'gaussian'`` or
209
209
  ``'zero'`` .
210
210
 
211
211
  Inputs:
212
- - **x** (Tensor) - A 4-D float tensor of shape :math:`(batch_size, height, width, channels)`.
212
+ - **x** (Tensor) - A 4-D float tensor of shape :math:`(batch\_size, height, width, channels)`.
213
213
  Types allowed: float32.
214
214
  - **size** (Tensor) - A 1-D tensor of 2 elements containing the size of the glimpses to extract.
215
215
  The glimpse height must be specified first, following by the glimpse width. Types allowed: int32.
216
216
  The value of size must be greater than zero.
217
- - **offsets** (Tensor) - A 2-D integer tensor of shape :math:`(batch_size, 2)` containing the y, x locations
217
+ - **offsets** (Tensor) - A 2-D integer tensor of shape :math:`(batch\_size, 2)` containing the y, x locations
218
218
  of the center of each window. Types allowed: float32.
219
219
 
220
220
  Outputs:
221
- A 4-D tensor of shape :math:`(batch_size, glimpse_height, glimpse_width, channels)` with type: float32.
221
+ A 4-D tensor of shape :math:`(batch\_size, glimpse\_height, glimpse\_width, channels)` with type: float32.
222
222
 
223
223
  Raises:
224
224
  TypeError: If `centered` is not a bool.
@@ -277,9 +277,16 @@ class CropAndResize(Primitive):
277
277
 
278
278
  Args:
279
279
  method (str, optional): An optional string that specifies the sampling method for resizing.
280
- It can be ``"bilinear"`` , ``"nearest"`` or ``"bilinear_v2"`` . The option "bilinear" stands for standard
281
- ``"bilinear"`` interpolation algorithm, while ``"bilinear_v2"`` may result in better result in some cases.
282
- Default: ``"bilinear"`` .
280
+ It can be ``"bilinear"`` , ``"nearest"`` or ``"bilinear_v2"`` . Default: ``"bilinear"`` .
281
+
282
+ - ``"nearest"``: Nearest neighbor interpolation. Each output pixel is assigned the value of the
283
+ nearest input pixel. This method is simple and fast but can result in blocky or pixelated outputs.
284
+ - ``"bilinear"``: Bilinear interpolation. Each output pixel is a weighted average of the four nearest input
285
+ pixels, computed using bilinear interpolation. This method produces smoother results compared
286
+ to nearest neighbor interpolation.
287
+ - ``"bilinear_v2"``: The optimized variant of
288
+ ``"bilinear"``, it may achieve better result(higher precision and speed) in some cases.
289
+
283
290
  extrapolation_value (float, optional): An optional float value used extrapolation, if applicable.
284
291
  Default: ``0.0`` .
285
292
 
@@ -358,7 +365,6 @@ class CropAndResize(Primitive):
358
365
  self.method = method
359
366
  validator.check_value_type("extrapolation_value", extrapolation_value, [float], self.name)
360
367
  self.extrapolation_value = extrapolation_value
361
- self.is_ge = context.get_context("enable_ge")
362
368
 
363
369
 
364
370
  class NonMaxSuppressionV3(Primitive):
@@ -470,7 +476,7 @@ class NonMaxSuppressionWithOverlaps(Primitive):
470
476
  Raises:
471
477
  TypeError: If the dtype of `overlaps` , `scores` `overlap_threshold` and `score_threshold`
472
478
  is not float16, float32 or float64.
473
- TypeError: If `overlaps` or `scores` is not Tensor
479
+ TypeError: If `overlaps` or `scores` is not Tensor.
474
480
  TypeError: If `max_output_size` is not Tensor or Scalar.If `max_output_size` is not int32.
475
481
  TypeError: If `overlap_threshold` is not Tensor or scalar. If its type is not float16, float32 or float64.
476
482
  TypeError: If `score_threshold` is not Tensor or scalar. If its type is not float16, float32 or float64.
@@ -1115,13 +1121,13 @@ class CombinedNonMaxSuppression(Primitive):
1115
1121
  it exceeds `max_total_size`.
1116
1122
 
1117
1123
  Inputs:
1118
- - **boxes** (Tensor) - A float32 Tensor with shape :math:`(batch_size, num_boxes, q, 4)`
1124
+ - **boxes** (Tensor) - A float32 Tensor with shape :math:`(batch\_size, num\_boxes, q, 4)`
1119
1125
  representing the bounding box coordinates.
1120
1126
  `q` indicates mapping relationship between boxes and classes.
1121
1127
  If `q` is 1, all classes use the same bounding box. If `q` is equal to the number of classes,
1122
1128
  class-specific boxes are applied.
1123
1129
  - **scores** (Tensor) - A 3-D Tensor of float32 type with the shape
1124
- :math:`(batch_size, num_boxes, num_classes)`. It contains a score value for each box,
1130
+ :math:`(batch\_size, num\_boxes, num\_classes)`. It contains a score value for each box,
1125
1131
  with each row of `boxes` represented by a single score.
1126
1132
  - **max_output_size_per_class** (Tensor) - The maximum number of boxes that can be selected for each class
1127
1133
  by the non-maximum suppression algorithm, represented by a scalar Tensor of type int32.