mindspore 2.6.0rc1__cp311-cp311-win_amd64.whl → 2.7.0__cp311-cp311-win_amd64.whl

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

Potentially problematic release.


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

Files changed (458) 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 +2 -2
  5. mindspore/_c_dataengine.cp311-win_amd64.pyd +0 -0
  6. mindspore/_c_expression.cp311-win_amd64.pyd +0 -0
  7. mindspore/_c_mindrecord.cp311-win_amd64.pyd +0 -0
  8. mindspore/_checkparam.py +42 -11
  9. mindspore/_extends/builtin_operations.py +3 -3
  10. mindspore/{_deprecated → _extends/optimize}/__init__.py +9 -3
  11. mindspore/_extends/optimize/cell_utils.py +96 -0
  12. mindspore/_extends/parallel_compile/akg_compiler/custom.py +1109 -0
  13. mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
  14. mindspore/_extends/parse/__init__.py +3 -3
  15. mindspore/_extends/parse/compile_config.py +44 -22
  16. mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +1 -2
  17. mindspore/_extends/parse/parser.py +65 -84
  18. mindspore/_extends/parse/resources.py +39 -0
  19. mindspore/_extends/parse/standard_method.py +58 -14
  20. mindspore/_extends/parse/trope.py +8 -1
  21. mindspore/_extends/pijit/__init__.py +1 -2
  22. mindspore/_extends/pijit/pijit_func_white_list.py +2 -5
  23. mindspore/amp.py +4 -22
  24. mindspore/atlprov.dll +0 -0
  25. mindspore/avcodec-59.dll +0 -0
  26. mindspore/avdevice-59.dll +0 -0
  27. mindspore/avfilter-8.dll +0 -0
  28. mindspore/avformat-59.dll +0 -0
  29. mindspore/avutil-57.dll +0 -0
  30. mindspore/boost/adasum.py +1 -1
  31. mindspore/boost/boost_cell_wrapper.py +4 -4
  32. mindspore/c1.dll +0 -0
  33. mindspore/c1xx.dll +0 -0
  34. mindspore/c2.dll +0 -0
  35. mindspore/common/__init__.py +43 -12
  36. mindspore/common/_grad_function.py +2 -1
  37. mindspore/common/_pijit_context.py +28 -7
  38. mindspore/common/_stub_tensor.py +1 -209
  39. mindspore/common/_tensor_cpp_method.py +1 -1
  40. mindspore/common/_tensor_docs.py +178 -53
  41. mindspore/common/_utils.py +9 -1
  42. mindspore/common/api.py +377 -203
  43. mindspore/common/dtype.py +108 -57
  44. mindspore/common/dump.py +11 -16
  45. mindspore/common/dynamic_shape/__init__.py +0 -0
  46. mindspore/common/{auto_dynamic_shape.py → dynamic_shape/auto_dynamic_shape.py} +17 -23
  47. mindspore/common/dynamic_shape/enable_dynamic.py +197 -0
  48. mindspore/common/file_system.py +59 -9
  49. mindspore/common/generator.py +5 -3
  50. mindspore/common/hook_handle.py +33 -5
  51. mindspore/common/jit_config.py +1 -1
  52. mindspore/common/jit_trace.py +84 -105
  53. mindspore/common/np_dtype.py +3 -3
  54. mindspore/common/parameter.py +27 -29
  55. mindspore/common/recompute.py +5 -7
  56. mindspore/common/sparse_tensor.py +0 -3
  57. mindspore/common/symbol.py +0 -1
  58. mindspore/common/tensor.py +117 -131
  59. mindspore/communication/_comm_helper.py +46 -4
  60. mindspore/communication/management.py +79 -7
  61. mindspore/context.py +67 -55
  62. mindspore/dataset/__init__.py +1 -1
  63. mindspore/dataset/audio/transforms.py +1 -1
  64. mindspore/dataset/core/config.py +38 -4
  65. mindspore/dataset/engine/datasets.py +350 -322
  66. mindspore/dataset/engine/datasets_user_defined.py +70 -24
  67. mindspore/dataset/engine/iterators.py +2 -2
  68. mindspore/dataset/engine/obs/config_loader.py +2 -2
  69. mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +8 -0
  70. mindspore/dataset/transforms/c_transforms.py +2 -2
  71. mindspore/dataset/transforms/py_transforms.py +7 -3
  72. mindspore/dataset/transforms/transforms.py +10 -6
  73. mindspore/dataset/vision/__init__.py +1 -1
  74. mindspore/dataset/vision/py_transforms.py +8 -8
  75. mindspore/dataset/vision/transforms.py +17 -5
  76. mindspore/dataset/vision/utils.py +632 -21
  77. mindspore/dataset/vision/validators.py +1 -0
  78. mindspore/device_context/ascend/device.py +1 -1
  79. mindspore/device_context/ascend/op_tuning.py +35 -1
  80. mindspore/device_context/gpu/__init__.py +2 -2
  81. mindspore/device_context/gpu/device.py +1 -1
  82. mindspore/device_context/gpu/op_precision.py +4 -2
  83. mindspore/device_context/gpu/op_tuning.py +6 -3
  84. mindspore/device_manager.py +16 -9
  85. mindspore/dnnl.dll +0 -0
  86. mindspore/dpcmi.dll +0 -0
  87. mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +3 -4
  88. mindspore/experimental/llm_boost/atb/boost_base.py +2 -3
  89. mindspore/experimental/optim/adadelta.py +13 -20
  90. mindspore/experimental/optim/adagrad.py +15 -22
  91. mindspore/experimental/optim/adam.py +17 -24
  92. mindspore/experimental/optim/adamax.py +14 -22
  93. mindspore/experimental/optim/adamw.py +28 -34
  94. mindspore/experimental/optim/asgd.py +15 -25
  95. mindspore/experimental/optim/lr_scheduler.py +27 -45
  96. mindspore/experimental/optim/nadam.py +14 -24
  97. mindspore/experimental/optim/optimizer.py +13 -23
  98. mindspore/experimental/optim/radam.py +18 -24
  99. mindspore/experimental/optim/rmsprop.py +14 -25
  100. mindspore/experimental/optim/rprop.py +15 -26
  101. mindspore/experimental/optim/sgd.py +9 -19
  102. mindspore/hal/__init__.py +4 -4
  103. mindspore/hal/contiguous_tensors_handle.py +2 -2
  104. mindspore/hal/memory.py +27 -7
  105. mindspore/include/api/cell.h +65 -5
  106. mindspore/include/api/cfg.h +24 -7
  107. mindspore/include/api/context.h +1 -0
  108. mindspore/include/api/delegate.h +10 -2
  109. mindspore/include/api/dual_abi_helper.h +100 -19
  110. mindspore/include/api/graph.h +14 -1
  111. mindspore/include/api/kernel.h +16 -3
  112. mindspore/include/api/kernel_api.h +9 -1
  113. mindspore/include/api/metrics/accuracy.h +9 -0
  114. mindspore/include/api/model.h +8 -1
  115. mindspore/include/api/model_group.h +4 -0
  116. mindspore/include/api/model_parallel_runner.h +2 -0
  117. mindspore/include/api/status.h +48 -10
  118. mindspore/include/api/types.h +8 -3
  119. mindspore/include/c_api/model_c.h +0 -58
  120. mindspore/include/c_api/tensor_c.h +0 -26
  121. mindspore/include/dataset/constants.h +9 -0
  122. mindspore/include/dataset/vision_ascend.h +1 -1
  123. mindspore/jpeg62.dll +0 -0
  124. mindspore/mindrecord/tools/cifar10.py +61 -11
  125. mindspore/mindrecord/tools/cifar10_to_mr.py +5 -0
  126. mindspore/mindspore_backend_common.dll +0 -0
  127. mindspore/mindspore_backend_manager.dll +0 -0
  128. mindspore/mindspore_common.dll +0 -0
  129. mindspore/mindspore_core.dll +0 -0
  130. mindspore/mindspore_cpu_res_manager.dll +0 -0
  131. mindspore/mindspore_dump.dll +0 -0
  132. mindspore/mindspore_frontend.dll +0 -0
  133. mindspore/mindspore_glog.dll +0 -0
  134. mindspore/mindspore_memory_pool.dll +0 -0
  135. mindspore/mindspore_ms_backend.dll +0 -0
  136. mindspore/mindspore_ops.dll +0 -0
  137. mindspore/mindspore_ops_host.dll +0 -0
  138. mindspore/mindspore_ops_kernel_common.dll +0 -0
  139. mindspore/mindspore_profiler.dll +0 -0
  140. mindspore/mindspore_pyboost.dll +0 -0
  141. mindspore/mindspore_pynative.dll +0 -0
  142. mindspore/mindspore_res_manager.dll +0 -0
  143. mindspore/mindspore_runtime_pipeline.dll +0 -0
  144. mindspore/mint/__init__.py +6 -46
  145. mindspore/mint/distributed/__init__.py +5 -0
  146. mindspore/mint/distributed/distributed.py +429 -23
  147. mindspore/mint/nn/__init__.py +1 -1
  148. mindspore/mint/nn/functional.py +53 -6
  149. mindspore/mint/nn/layer/_functions.py +163 -294
  150. mindspore/mint/nn/layer/activation.py +8 -6
  151. mindspore/mint/nn/layer/conv.py +140 -104
  152. mindspore/mint/nn/layer/normalization.py +11 -25
  153. mindspore/mint/optim/adam.py +19 -18
  154. mindspore/mint/optim/adamw.py +14 -8
  155. mindspore/mint/optim/sgd.py +5 -5
  156. mindspore/msobj140.dll +0 -0
  157. mindspore/mspdb140.dll +0 -0
  158. mindspore/mspdbcore.dll +0 -0
  159. mindspore/mspdbst.dll +0 -0
  160. mindspore/mspft140.dll +0 -0
  161. mindspore/msvcdis140.dll +0 -0
  162. mindspore/msvcp140_1.dll +0 -0
  163. mindspore/msvcp140_2.dll +0 -0
  164. mindspore/msvcp140_atomic_wait.dll +0 -0
  165. mindspore/msvcp140_codecvt_ids.dll +0 -0
  166. mindspore/nn/cell.py +491 -623
  167. mindspore/nn/grad/cell_grad.py +11 -12
  168. mindspore/nn/layer/activation.py +36 -36
  169. mindspore/nn/layer/basic.py +74 -77
  170. mindspore/nn/layer/channel_shuffle.py +4 -4
  171. mindspore/nn/layer/combined.py +4 -2
  172. mindspore/nn/layer/conv.py +117 -110
  173. mindspore/nn/layer/dense.py +9 -7
  174. mindspore/nn/layer/embedding.py +50 -52
  175. mindspore/nn/layer/image.py +38 -40
  176. mindspore/nn/layer/math.py +111 -112
  177. mindspore/nn/layer/normalization.py +56 -44
  178. mindspore/nn/layer/pooling.py +58 -63
  179. mindspore/nn/layer/rnn_cells.py +33 -33
  180. mindspore/nn/layer/rnns.py +56 -56
  181. mindspore/nn/layer/thor_layer.py +74 -73
  182. mindspore/nn/layer/transformer.py +11 -1
  183. mindspore/nn/learning_rate_schedule.py +20 -20
  184. mindspore/nn/loss/loss.py +79 -81
  185. mindspore/nn/optim/adam.py +4 -6
  186. mindspore/nn/optim/adasum.py +2 -2
  187. mindspore/nn/optim/asgd.py +2 -0
  188. mindspore/nn/optim/lamb.py +1 -3
  189. mindspore/nn/optim/optimizer.py +1 -1
  190. mindspore/nn/optim/tft_wrapper.py +2 -3
  191. mindspore/nn/optim/thor.py +2 -2
  192. mindspore/nn/probability/distribution/_utils/utils.py +2 -2
  193. mindspore/nn/probability/distribution/exponential.py +2 -1
  194. mindspore/nn/probability/distribution/poisson.py +2 -1
  195. mindspore/nn/sparse/sparse.py +3 -3
  196. mindspore/nn/wrap/cell_wrapper.py +73 -42
  197. mindspore/nn/wrap/grad_reducer.py +37 -52
  198. mindspore/nn/wrap/loss_scale.py +72 -74
  199. mindspore/numpy/array_creations.py +7 -7
  200. mindspore/numpy/fft.py +1 -1
  201. mindspore/numpy/math_ops.py +5 -5
  202. mindspore/numpy/utils_const.py +1 -1
  203. mindspore/opencv_core452.dll +0 -0
  204. mindspore/opencv_imgcodecs452.dll +0 -0
  205. mindspore/opencv_imgproc452.dll +0 -0
  206. mindspore/ops/_grad_experimental/grad_comm_ops.py +51 -13
  207. mindspore/ops/_grad_experimental/grad_debug_ops.py +14 -0
  208. mindspore/ops/_grad_experimental/grad_inner_ops.py +0 -9
  209. mindspore/ops/_op_impl/cpu/__init__.py +1 -0
  210. mindspore/{experimental/es/__init__.py → ops/_op_impl/cpu/joinedstr_op.py} +12 -6
  211. mindspore/ops/_vmap/vmap_array_ops.py +31 -13
  212. mindspore/ops/_vmap/vmap_nn_ops.py +8 -16
  213. mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +54 -13
  214. mindspore/ops/auto_generate/gen_extend_func.py +27 -145
  215. mindspore/ops/auto_generate/gen_ops_def.py +1027 -347
  216. mindspore/ops/auto_generate/gen_ops_prim.py +2341 -1117
  217. mindspore/ops/auto_generate/pyboost_inner_prim.py +31 -1
  218. mindspore/ops/composite/__init__.py +10 -0
  219. mindspore/ops/composite/base.py +9 -5
  220. mindspore/ops/composite/multitype_ops/__init__.py +12 -1
  221. mindspore/ops/composite/multitype_ops/_compile_utils.py +133 -109
  222. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -1
  223. mindspore/ops/composite/multitype_ops/add_impl.py +70 -2
  224. mindspore/ops/composite/multitype_ops/div_impl.py +49 -0
  225. mindspore/ops/composite/multitype_ops/floordiv_impl.py +29 -0
  226. mindspore/ops/composite/multitype_ops/getitem_impl.py +11 -0
  227. mindspore/ops/composite/multitype_ops/mod_impl.py +5 -3
  228. mindspore/ops/composite/multitype_ops/mul_impl.py +49 -0
  229. mindspore/ops/composite/multitype_ops/setitem_impl.py +57 -0
  230. mindspore/ops/composite/multitype_ops/sub_impl.py +34 -0
  231. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +14 -0
  232. mindspore/ops/function/__init__.py +4 -1
  233. mindspore/ops/function/_add_attr_func.py +11 -6
  234. mindspore/ops/function/array_func.py +19 -102
  235. mindspore/ops/function/debug_func.py +8 -5
  236. mindspore/ops/function/grad/grad_func.py +5 -13
  237. mindspore/ops/function/math_func.py +77 -572
  238. mindspore/ops/function/nn_func.py +46 -94
  239. mindspore/ops/function/other_func.py +4 -1
  240. mindspore/ops/function/random_func.py +44 -5
  241. mindspore/ops/function/vmap_func.py +2 -1
  242. mindspore/ops/functional.py +4 -4
  243. mindspore/ops/functional_overload.py +594 -18
  244. mindspore/ops/op_info_register.py +21 -0
  245. mindspore/ops/operations/__init__.py +16 -11
  246. mindspore/ops/operations/_custom_ops_utils.py +689 -34
  247. mindspore/ops/operations/_inner_ops.py +14 -18
  248. mindspore/ops/operations/_sequence_ops.py +1 -1
  249. mindspore/ops/operations/array_ops.py +5 -51
  250. mindspore/ops/operations/comm_ops.py +186 -41
  251. mindspore/ops/operations/custom_ops.py +303 -177
  252. mindspore/ops/operations/debug_ops.py +59 -4
  253. mindspore/ops/operations/image_ops.py +13 -13
  254. mindspore/ops/operations/manually_defined/ops_def.py +27 -28
  255. mindspore/ops/operations/math_ops.py +8 -9
  256. mindspore/ops/operations/nn_ops.py +8 -40
  257. mindspore/ops/primitive.py +9 -20
  258. mindspore/ops/tensor_method.py +63 -15
  259. mindspore/ops_generate/api/cpp_create_prim_instance_helper_generator.py +1 -1
  260. mindspore/ops_generate/api/functional_map_cpp_generator.py +10 -9
  261. mindspore/ops_generate/api/functions_cc_generator.py +58 -10
  262. mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +1 -1
  263. mindspore/ops_generate/common/base_generator.py +14 -0
  264. mindspore/ops_generate/common/gen_constants.py +8 -3
  265. mindspore/ops_generate/common/gen_utils.py +0 -19
  266. mindspore/ops_generate/common/op_proto.py +11 -4
  267. mindspore/ops_generate/common/template.py +88 -11
  268. mindspore/ops_generate/gen_ops.py +1 -1
  269. mindspore/ops_generate/op_def/lite_ops_cpp_generator.py +4 -4
  270. mindspore/ops_generate/op_def/ops_def_cc_generator.py +0 -3
  271. mindspore/ops_generate/op_def/ops_name_h_generator.py +0 -3
  272. mindspore/ops_generate/op_def/ops_primitive_h_generator.py +0 -4
  273. mindspore/ops_generate/op_def_py/op_prim_py_generator.py +5 -2
  274. mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +49 -8
  275. mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +2 -2
  276. mindspore/ops_generate/pyboost/gen_pyboost_func.py +31 -16
  277. mindspore/ops_generate/pyboost/op_template_parser.py +98 -72
  278. mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +70 -273
  279. mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +14 -6
  280. mindspore/ops_generate/pyboost/pyboost_functions_impl_cpp_generator.py +316 -0
  281. mindspore/ops_generate/pyboost/pyboost_functions_py_generator.py +1 -1
  282. mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +5 -3
  283. mindspore/ops_generate/pyboost/pyboost_inner_prim_generator.py +1 -1
  284. mindspore/ops_generate/pyboost/pyboost_internal_functions_cpp_generator.py +76 -0
  285. mindspore/ops_generate/pyboost/pyboost_internal_functions_h_generator.py +76 -0
  286. mindspore/ops_generate/pyboost/pyboost_internal_kernel_info_adapter_generator.py +125 -0
  287. mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +4 -3
  288. mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +348 -61
  289. mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +1 -1
  290. mindspore/ops_generate/pyboost/pyboost_utils.py +118 -9
  291. mindspore/ops_generate/tensor_py_cc_generator.py +1 -24
  292. mindspore/parallel/_auto_parallel_context.py +16 -23
  293. mindspore/parallel/_cell_wrapper.py +113 -45
  294. mindspore/parallel/_parallel_serialization.py +4 -3
  295. mindspore/parallel/_ps_context.py +4 -6
  296. mindspore/parallel/_tensor.py +167 -12
  297. mindspore/parallel/_transformer/moe.py +1 -1
  298. mindspore/parallel/_transformer/transformer.py +17 -12
  299. mindspore/parallel/_utils.py +5 -11
  300. mindspore/parallel/auto_parallel.py +35 -14
  301. mindspore/parallel/checkpoint_convert.py +3 -3
  302. mindspore/parallel/checkpoint_transform.py +13 -7
  303. mindspore/parallel/cluster/process_entity/_api.py +88 -49
  304. mindspore/parallel/cluster/process_entity/_utils.py +95 -7
  305. mindspore/parallel/cluster/run.py +48 -7
  306. mindspore/parallel/function/__init__.py +8 -1
  307. mindspore/parallel/function/reshard_func.py +12 -12
  308. mindspore/parallel/nn/__init__.py +15 -2
  309. mindspore/parallel/nn/parallel_cell_wrapper.py +50 -14
  310. mindspore/parallel/nn/parallel_grad_reducer.py +7 -14
  311. mindspore/parallel/shard.py +10 -25
  312. mindspore/parallel/transform_safetensors.py +469 -174
  313. mindspore/pgodb140.dll +0 -0
  314. mindspore/pgort140.dll +0 -0
  315. mindspore/profiler/__init__.py +2 -1
  316. mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +7 -7
  317. mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +3 -0
  318. mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +12 -6
  319. mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +3 -3
  320. mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +3 -3
  321. mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +4 -4
  322. mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +3 -3
  323. mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +4 -1
  324. mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +2 -1
  325. mindspore/profiler/analysis/task_manager.py +1 -1
  326. mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +5 -1
  327. mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +2 -1
  328. mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +10 -9
  329. mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +43 -23
  330. mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +3 -2
  331. mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +9 -5
  332. mindspore/profiler/analysis/viewer/ms_operator_details_viewer.py +132 -0
  333. mindspore/profiler/common/constant.py +16 -0
  334. mindspore/profiler/common/msprof_cmd_tool.py +2 -2
  335. mindspore/profiler/common/path_manager.py +9 -0
  336. mindspore/profiler/common/profiler_context.py +50 -29
  337. mindspore/profiler/common/profiler_info.py +0 -16
  338. mindspore/profiler/common/profiler_meta_data.py +1 -0
  339. mindspore/profiler/common/profiler_op_analyse.py +239 -0
  340. mindspore/profiler/common/profiler_output_path.py +23 -8
  341. mindspore/profiler/common/profiler_parameters.py +128 -35
  342. mindspore/profiler/dynamic_profile/__init__.py +0 -0
  343. mindspore/profiler/dynamic_profile/dynamic_monitor_proxy.py +39 -0
  344. mindspore/profiler/dynamic_profile/dynamic_profiler_config_context.py +666 -0
  345. mindspore/profiler/dynamic_profile/dynamic_profiler_utils.py +62 -0
  346. mindspore/profiler/dynamic_profiler.py +374 -338
  347. mindspore/profiler/envprofiler.py +42 -12
  348. mindspore/profiler/experimental_config.py +112 -7
  349. mindspore/profiler/mstx.py +33 -12
  350. mindspore/profiler/platform/__init__.py +2 -3
  351. mindspore/profiler/platform/cpu_profiler.py +10 -4
  352. mindspore/profiler/platform/npu_profiler.py +30 -20
  353. mindspore/profiler/profiler.py +218 -154
  354. mindspore/profiler/profiler_action_controller.py +65 -77
  355. mindspore/profiler/profiler_interface.py +2 -2
  356. mindspore/profiler/schedule.py +10 -4
  357. mindspore/rewrite/common/config.py +1 -0
  358. mindspore/rewrite/common/namer.py +1 -0
  359. mindspore/rewrite/common/namespace.py +1 -0
  360. mindspore/rewrite/node/node.py +31 -11
  361. mindspore/rewrite/parsers/assign_parser.py +1 -1
  362. mindspore/rewrite/symbol_tree/symbol_tree.py +2 -2
  363. mindspore/run_check/_check_version.py +7 -10
  364. mindspore/runtime/__init__.py +8 -6
  365. mindspore/runtime/event.py +10 -4
  366. mindspore/runtime/executor.py +87 -45
  367. mindspore/runtime/memory.py +31 -32
  368. mindspore/runtime/thread_bind_core.py +299 -165
  369. mindspore/safeguard/rewrite_obfuscation.py +12 -13
  370. mindspore/swresample-4.dll +0 -0
  371. mindspore/swscale-6.dll +0 -0
  372. mindspore/tbbmalloc.dll +0 -0
  373. mindspore/tinyxml2.dll +0 -0
  374. mindspore/train/_utils.py +17 -7
  375. mindspore/train/amp.py +43 -23
  376. mindspore/train/callback/__init__.py +5 -5
  377. mindspore/train/callback/_callback.py +2 -1
  378. mindspore/train/callback/_checkpoint.py +4 -14
  379. mindspore/train/callback/_flops_collector.py +11 -7
  380. mindspore/train/callback/_landscape.py +0 -1
  381. mindspore/train/callback/_train_fault_tolerance.py +98 -21
  382. mindspore/train/data_sink.py +15 -6
  383. mindspore/train/dataset_helper.py +14 -5
  384. mindspore/train/model.py +133 -69
  385. mindspore/train/serialization.py +168 -126
  386. mindspore/train/summary/summary_record.py +13 -2
  387. mindspore/train/train_thor/model_thor.py +2 -2
  388. mindspore/turbojpeg.dll +0 -0
  389. mindspore/utils/__init__.py +3 -2
  390. mindspore/utils/dryrun.py +0 -6
  391. mindspore/utils/runtime_execution_order_check.py +163 -77
  392. mindspore/utils/sdc_detect.py +68 -0
  393. mindspore/utils/utils.py +14 -17
  394. mindspore/vcmeta.dll +0 -0
  395. mindspore/vcruntime140.dll +0 -0
  396. mindspore/vcruntime140_1.dll +0 -0
  397. mindspore/version.py +1 -1
  398. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/METADATA +5 -4
  399. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/RECORD +403 -442
  400. mindspore/_deprecated/jit.py +0 -198
  401. mindspore/_extends/remote/kernel_build_server_ascend.py +0 -75
  402. mindspore/communication/_hccl_management.py +0 -297
  403. mindspore/experimental/es/embedding_service.py +0 -891
  404. mindspore/experimental/es/embedding_service_layer.py +0 -581
  405. mindspore/profiler/common/validator/__init__.py +0 -14
  406. mindspore/profiler/common/validator/validate_path.py +0 -84
  407. mindspore/profiler/parser/__init__.py +0 -14
  408. mindspore/profiler/parser/aicpu_data_parser.py +0 -272
  409. mindspore/profiler/parser/ascend_analysis/__init__.py +0 -14
  410. mindspore/profiler/parser/ascend_analysis/constant.py +0 -71
  411. mindspore/profiler/parser/ascend_analysis/file_manager.py +0 -180
  412. mindspore/profiler/parser/ascend_analysis/function_event.py +0 -185
  413. mindspore/profiler/parser/ascend_analysis/fwk_cann_parser.py +0 -136
  414. mindspore/profiler/parser/ascend_analysis/fwk_file_parser.py +0 -131
  415. mindspore/profiler/parser/ascend_analysis/msprof_timeline_parser.py +0 -104
  416. mindspore/profiler/parser/ascend_analysis/path_manager.py +0 -313
  417. mindspore/profiler/parser/ascend_analysis/profiler_info_parser.py +0 -123
  418. mindspore/profiler/parser/ascend_analysis/tlv_decoder.py +0 -86
  419. mindspore/profiler/parser/ascend_analysis/trace_event_manager.py +0 -75
  420. mindspore/profiler/parser/ascend_cluster_generator.py +0 -116
  421. mindspore/profiler/parser/ascend_communicate_generator.py +0 -314
  422. mindspore/profiler/parser/ascend_flops_generator.py +0 -116
  423. mindspore/profiler/parser/ascend_fpbp_generator.py +0 -82
  424. mindspore/profiler/parser/ascend_hccl_generator.py +0 -271
  425. mindspore/profiler/parser/ascend_integrate_generator.py +0 -42
  426. mindspore/profiler/parser/ascend_memory_generator.py +0 -185
  427. mindspore/profiler/parser/ascend_msprof_exporter.py +0 -282
  428. mindspore/profiler/parser/ascend_msprof_generator.py +0 -187
  429. mindspore/profiler/parser/ascend_op_generator.py +0 -334
  430. mindspore/profiler/parser/ascend_steptrace_generator.py +0 -94
  431. mindspore/profiler/parser/ascend_timeline_generator.py +0 -545
  432. mindspore/profiler/parser/base_timeline_generator.py +0 -483
  433. mindspore/profiler/parser/container.py +0 -229
  434. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +0 -697
  435. mindspore/profiler/parser/flops_parser.py +0 -531
  436. mindspore/profiler/parser/framework_enum.py +0 -111
  437. mindspore/profiler/parser/framework_parser.py +0 -464
  438. mindspore/profiler/parser/framework_struct.py +0 -61
  439. mindspore/profiler/parser/gpu_analysis/__init__.py +0 -14
  440. mindspore/profiler/parser/gpu_analysis/function_event.py +0 -44
  441. mindspore/profiler/parser/gpu_analysis/fwk_file_parser.py +0 -89
  442. mindspore/profiler/parser/gpu_analysis/profiler_info_parser.py +0 -72
  443. mindspore/profiler/parser/hccl_parser.py +0 -573
  444. mindspore/profiler/parser/hwts_log_parser.py +0 -122
  445. mindspore/profiler/parser/integrator.py +0 -526
  446. mindspore/profiler/parser/memory_usage_parser.py +0 -277
  447. mindspore/profiler/parser/minddata_analyzer.py +0 -800
  448. mindspore/profiler/parser/minddata_parser.py +0 -186
  449. mindspore/profiler/parser/minddata_pipeline_parser.py +0 -299
  450. mindspore/profiler/parser/op_intermediate_parser.py +0 -149
  451. mindspore/profiler/parser/optime_parser.py +0 -250
  452. mindspore/profiler/parser/profiler_info.py +0 -213
  453. mindspore/profiler/parser/step_trace_parser.py +0 -666
  454. mindspore/utils/hooks.py +0 -81
  455. /mindspore/common/{_auto_dynamic.py → dynamic_shape/_auto_dynamic.py} +0 -0
  456. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/WHEEL +0 -0
  457. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/entry_points.txt +0 -0
  458. {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/top_level.txt +0 -0
@@ -16,6 +16,7 @@
16
16
  """Implementation for internal polymorphism `setitem` operations."""
17
17
 
18
18
  from __future__ import absolute_import
19
+ import os
19
20
  from mindspore.ops.composite.multitype_ops import _compile_utils as compile_utils
20
21
  from mindspore.ops import functional as F
21
22
  from mindspore.ops.operations._inner_ops import SliceGetItem
@@ -293,6 +294,8 @@ def _tensor_setitem_by_tensor_with_tensor(data, index, value_tensor):
293
294
  Outputs:
294
295
  Tensor, element type and shape is same as data.
295
296
  """
297
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
298
+ return compile_utils._tensor_setitem(data, index, value_tensor)
296
299
  return compile_utils.tensor_setitem_by_tensor_with_tensor(data, index, value_tensor)
297
300
 
298
301
 
@@ -316,6 +319,8 @@ def _tensor_setitem_by_tensor_with_number(data, index, value):
316
319
  Outputs:
317
320
  Tensor, element type and shape is same as data.
318
321
  """
322
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
323
+ return compile_utils._tensor_setitem(data, index, value)
319
324
  return compile_utils.tensor_setitem_by_tensor_with_number(data, index, value)
320
325
 
321
326
 
@@ -337,6 +342,8 @@ def _tensor_setitem_by_tuple_with_number(data, tuple_index, value):
337
342
  Outputs:
338
343
  Tensor, element type and shape is same as data.
339
344
  """
345
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
346
+ return compile_utils._tensor_setitem(data, tuple_index, value)
340
347
  return compile_utils.tensor_setitem_by_tuple_with_number(data, tuple_index, value)
341
348
 
342
349
 
@@ -358,6 +365,8 @@ def _tensor_setitem_by_tuple_with_tensor(data, tuple_index, value):
358
365
  Outputs:
359
366
  Tensor, element type and shape is same as data.
360
367
  """
368
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
369
+ return compile_utils._tensor_setitem(data, tuple_index, value)
361
370
  return compile_utils.tensor_setitem_by_tuple_with_tensor(data, tuple_index, value)
362
371
 
363
372
 
@@ -380,6 +389,8 @@ def _tensor_setitem_by_tuple_with_tuple(data, tuple_index, value):
380
389
  Outputs:
381
390
  Tensor, element type and shape is same as data.
382
391
  """
392
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
393
+ return compile_utils._tensor_setitem(data, tuple_index, value)
383
394
  return compile_utils.tensor_setitem_by_tuple_with_sequence(data, tuple_index, value)
384
395
 
385
396
 
@@ -402,6 +413,8 @@ def _tensor_setitem_by_tuple_with_list(data, tuple_index, value):
402
413
  Outputs:
403
414
  Tensor, element type and shape is same as data.
404
415
  """
416
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
417
+ return compile_utils._tensor_setitem(data, tuple_index, value)
405
418
  return compile_utils.tensor_setitem_by_tuple_with_sequence(data, tuple_index, value)
406
419
 
407
420
 
@@ -418,6 +431,8 @@ def _tensor_setitem_by_tensor_with_tuple(data, index, value):
418
431
  Outputs:
419
432
  Tensor, element type and shape is same as data.
420
433
  """
434
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
435
+ return compile_utils._tensor_setitem(data, index, value)
421
436
  return compile_utils.tensor_setitem_by_tensor_with_sequence(data, index, value)
422
437
 
423
438
 
@@ -434,6 +449,8 @@ def _tensor_setitem_by_tensor_with_list(data, index, value):
434
449
  Outputs:
435
450
  Tensor, element type and shape is same as data.
436
451
  """
452
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
453
+ return compile_utils._tensor_setitem(data, index, value)
437
454
  return compile_utils.tensor_setitem_by_tensor_with_sequence(data, index, value)
438
455
 
439
456
 
@@ -456,6 +473,8 @@ def _tensor_setitem_by_slice_with_tensor(data, input_slice, value):
456
473
  Outputs:
457
474
  Tensor, element type and shape is same as data.
458
475
  """
476
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
477
+ return compile_utils._tensor_setitem(data, input_slice, value)
459
478
  return compile_utils.tensor_setitem_by_slice(data, input_slice, value)
460
479
 
461
480
 
@@ -478,6 +497,8 @@ def _tensor_setitem_by_slice_with_number(data, input_slice, value):
478
497
  Outputs:
479
498
  Tensor, element type and shape is same as data.
480
499
  """
500
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
501
+ return compile_utils._tensor_setitem(data, input_slice, value)
481
502
  return compile_utils.tensor_setitem_by_slice(data, input_slice, value)
482
503
 
483
504
 
@@ -500,6 +521,8 @@ def _tensor_setitem_by_slice_with_list(data, input_slice, value):
500
521
  Outputs:
501
522
  Tensor, element type and shape is same as data.
502
523
  """
524
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
525
+ return compile_utils._tensor_setitem(data, input_slice, value)
503
526
  return compile_utils.tensor_setitem_by_slice(data, input_slice, value)
504
527
 
505
528
 
@@ -522,6 +545,8 @@ def _tensor_setitem_by_slice_with_tuple(data, input_slice, value):
522
545
  Outputs:
523
546
  Tensor, element type and shape is same as data.
524
547
  """
548
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
549
+ return compile_utils._tensor_setitem(data, input_slice, value)
525
550
  return compile_utils.tensor_setitem_by_slice(data, input_slice, value)
526
551
 
527
552
 
@@ -543,6 +568,8 @@ def _tensor_setitem_by_number_with_number(data, index, value):
543
568
  Outputs:
544
569
  Tensor, element type and shape is same as data.
545
570
  """
571
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
572
+ return compile_utils._tensor_setitem(data, index, value)
546
573
  if isinstance(index, bool):
547
574
  return compile_utils.tensor_setitem_by_bool(data, index, value)
548
575
  return compile_utils.tensor_setitem_by_number_with_number(data, index, value)
@@ -566,6 +593,8 @@ def _tensor_setitem_by_number_with_tensor(data, index, value):
566
593
  Outputs:
567
594
  Tensor, element type and shape is same as data.
568
595
  """
596
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
597
+ return compile_utils._tensor_setitem(data, index, value)
569
598
  if isinstance(index, bool):
570
599
  return compile_utils.tensor_setitem_by_bool(data, index, value)
571
600
  return compile_utils.tensor_setitem_by_number_with_tensor(data, index, value)
@@ -589,6 +618,8 @@ def _tensor_setitem_by_number_with_tuple(data, index, value):
589
618
  Outputs:
590
619
  Tensor, element type and shape is same as data.
591
620
  """
621
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
622
+ return compile_utils._tensor_setitem(data, index, value)
592
623
  if isinstance(index, bool):
593
624
  return compile_utils.tensor_setitem_by_bool(data, index, value)
594
625
  return compile_utils.tensor_setitem_by_number_with_sequence(data, index, value)
@@ -612,6 +643,8 @@ def _tensor_setitem_by_number_with_list(data, index, value):
612
643
  Outputs:
613
644
  Tensor, element type and shape is same as data.
614
645
  """
646
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
647
+ return compile_utils._tensor_setitem(data, index, value)
615
648
  if isinstance(index, bool):
616
649
  return compile_utils.tensor_setitem_by_bool(data, index, value)
617
650
  return compile_utils.tensor_setitem_by_number_with_sequence(data, index, value)
@@ -634,6 +667,8 @@ def _tensor_setitem_by_ellipsis_with_number(data, index, value):
634
667
  Outputs:
635
668
  Tensor, element type and shape is same as data.
636
669
  """
670
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
671
+ return compile_utils._tensor_setitem(data, index, value)
637
672
  return compile_utils.tensor_setitem_by_ellipsis_with_number(data, value)
638
673
 
639
674
 
@@ -654,6 +689,8 @@ def _tensor_setitem_by_ellipsis_with_tensor(data, index, value):
654
689
  Outputs:
655
690
  Tensor, element type and shape is same as data.
656
691
  """
692
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
693
+ return compile_utils._tensor_setitem(data, index, value)
657
694
  return compile_utils.tensor_setitem_by_ellipsis_with_tensor(data, value)
658
695
 
659
696
 
@@ -674,6 +711,8 @@ def _tensor_setitem_by_ellipsis_with_list(data, index, value):
674
711
  Outputs:
675
712
  Tensor, element type and shape is same as data.
676
713
  """
714
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
715
+ return compile_utils._tensor_setitem(data, index, value)
677
716
  return compile_utils.tensor_setitem_by_ellipsis_with_sequence(data, value)
678
717
 
679
718
 
@@ -694,6 +733,8 @@ def _tensor_setitem_by_ellipsis_with_tuple(data, index, value):
694
733
  Outputs:
695
734
  Tensor, element type and shape is same as data.
696
735
  """
736
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
737
+ return compile_utils._tensor_setitem(data, index, value)
697
738
  return compile_utils.tensor_setitem_by_ellipsis_with_sequence(data, value)
698
739
 
699
740
 
@@ -714,6 +755,8 @@ def _tensor_setitem_by_none_with_number(data, index, value):
714
755
  Outputs:
715
756
  Tensor, element type and shape is same as data.
716
757
  """
758
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
759
+ return compile_utils._tensor_setitem(data, index, value)
717
760
  return compile_utils.tensor_setitem_by_ellipsis_with_number(data, value)
718
761
 
719
762
 
@@ -734,6 +777,8 @@ def _tensor_setitem_by_none_with_tensor(data, index, value):
734
777
  Outputs:
735
778
  Tensor, element type and shape is same as data.
736
779
  """
780
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
781
+ return compile_utils._tensor_setitem(data, index, value)
737
782
  return compile_utils.tensor_setitem_by_ellipsis_with_tensor(data, value)
738
783
 
739
784
 
@@ -754,6 +799,8 @@ def _tensor_setitem_by_none_with_list(data, index, value):
754
799
  Outputs:
755
800
  Tensor, element type and shape is same as data.
756
801
  """
802
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
803
+ return compile_utils._tensor_setitem(data, index, value)
757
804
  return compile_utils.tensor_setitem_by_ellipsis_with_sequence(data, value)
758
805
 
759
806
 
@@ -774,6 +821,8 @@ def _tensor_setitem_by_none_with_tuple(data, index, value):
774
821
  Outputs:
775
822
  Tensor, element type and shape is same as data.
776
823
  """
824
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
825
+ return compile_utils._tensor_setitem(data, index, value)
777
826
  return compile_utils.tensor_setitem_by_ellipsis_with_sequence(data, value)
778
827
 
779
828
 
@@ -794,6 +843,8 @@ def _tensor_setitem_by_list_with_number(data, index, value):
794
843
  Outputs:
795
844
  Tensor, element type and shape is same as data.
796
845
  """
846
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
847
+ return compile_utils._tensor_setitem(data, index, value)
797
848
  value = F.cast(value, F.dtype(data))
798
849
  return compile_utils.tensor_setitem_by_list(data, index, value)
799
850
 
@@ -815,6 +866,8 @@ def _tensor_setitem_by_list_with_tensor(data, index, value):
815
866
  Outputs:
816
867
  Tensor, element type and shape is same as data.
817
868
  """
869
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
870
+ return compile_utils._tensor_setitem(data, index, value)
818
871
  return compile_utils.tensor_setitem_by_list(data, index, value)
819
872
 
820
873
 
@@ -835,6 +888,8 @@ def _tensor_setitem_by_list_with_tuple(data, index, value):
835
888
  Outputs:
836
889
  Tensor, element type and shape is same as data.
837
890
  """
891
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
892
+ return compile_utils._tensor_setitem(data, index, value)
838
893
  value = compile_utils.sequence_to_tensor(value, F.dtype(data))
839
894
  return compile_utils.tensor_setitem_by_list(data, index, value)
840
895
 
@@ -856,6 +911,8 @@ def _tensor_setitem_by_list_with_list(data, index, value):
856
911
  Outputs:
857
912
  Tensor, element type and shape is same as data.
858
913
  """
914
+ if os.environ.get("MS_DEV_TENSOR_INDEX_BOOST") == "1":
915
+ return compile_utils._tensor_setitem(data, index, value)
859
916
  value = compile_utils.sequence_to_tensor(value, F.dtype(data))
860
917
  return compile_utils.tensor_setitem_by_list(data, index, value)
861
918
 
@@ -16,12 +16,23 @@
16
16
  """Implementation for internal polymorphism `sub` operations."""
17
17
 
18
18
  from __future__ import absolute_import
19
+ from mindspore.ops.auto_generate.gen_ops_prim import InplaceSubExt, InplaceSubScalar
19
20
  from mindspore.ops.composite.multitype_ops import _compile_utils as utils
20
21
  from mindspore.ops.composite.multitype_ops._constexpr_utils import check_equal, make_tensor
21
22
  from mindspore.ops.composite import base
22
23
  from mindspore.ops import functional as F
23
24
 
24
25
 
26
+ # x -= y
27
+ augassign_sub = base.MultitypeFuncGraph('augassign_sub', True)
28
+ """
29
+ `augassign_sub` is a metafuncgraph object which will compute the subtraction of two objects
30
+ using ".register" decorator.
31
+ """
32
+
33
+ augassign_sub.set_need_raise()
34
+
35
+
25
36
  sub = base.MultitypeFuncGraph("sub", True)
26
37
  """
27
38
  `sub` is a metafuncgraph object which will compute the subtraction of two objects
@@ -30,30 +41,45 @@ using ".register" decorator.
30
41
  sub.set_need_raise()
31
42
 
32
43
 
44
+ @augassign_sub.register("Number", "Number")
33
45
  @sub.register("Number", "Number")
34
46
  def _sub_scalar(x, y):
35
47
  """Returns x - y where x and y are all scalars."""
36
48
  return F.scalar_sub(x, y)
37
49
 
38
50
 
51
+ @augassign_sub.register("Tensor", "Tensor")
52
+ def _sub_tensor_augassign(x, y):
53
+ """Returns x - y where x and y are all tensors."""
54
+ return InplaceSubExt()(x, y)
55
+
56
+
39
57
  @sub.register("Tensor", "Tensor")
40
58
  def _sub_tensor(x, y):
41
59
  """Returns x - y where x and y are all tensors."""
42
60
  return F.tensor_sub(x, y)
43
61
 
44
62
 
63
+ @augassign_sub.register("Number", "Tensor")
45
64
  @sub.register("Number", "Tensor")
46
65
  def _scalar_sub_tensor(x, y):
47
66
  """Returns x - y where x is a scalar and y is a tensor. x and y should have same dtype."""
48
67
  return F.tensor_sub(x, y)
49
68
 
50
69
 
70
+ @augassign_sub.register("Tensor", "Number")
71
+ def _tensor_sub_scalar_augassign(x, y):
72
+ """Returns x - y where x is a tensor and y is a scalar. x and y should have same dtype."""
73
+ return InplaceSubScalar()(x, y)
74
+
75
+
51
76
  @sub.register("Tensor", "Number")
52
77
  def _tensor_sub_scalar(x, y):
53
78
  """Returns x - y where x is a tensor and y is a scalar. x and y should have same dtype."""
54
79
  return F.tensor_sub(x, y)
55
80
 
56
81
 
82
+ @augassign_sub.register("Tuple", "Tensor")
57
83
  @sub.register("Tuple", "Tensor")
58
84
  def _tuple_sub_tensor(x, y):
59
85
  """Returns x - y where x is a tuple and y is a tensor. """
@@ -61,6 +87,7 @@ def _tuple_sub_tensor(x, y):
61
87
  return F.tensor_sub(x, y)
62
88
 
63
89
 
90
+ @augassign_sub.register("Tensor", "Tuple")
64
91
  @sub.register("Tensor", "Tuple")
65
92
  def _tensor_sub_tuple(x, y):
66
93
  """Returns x - y where x is a tensor and y is a tuple. """
@@ -68,6 +95,7 @@ def _tensor_sub_tuple(x, y):
68
95
  return F.tensor_sub(x, y)
69
96
 
70
97
 
98
+ @augassign_sub.register("List", "Tensor")
71
99
  @sub.register("List", "Tensor")
72
100
  def _list_sub_tensor(x, y):
73
101
  """Returns x - y where x is a list and y is a tensor. """
@@ -75,6 +103,7 @@ def _list_sub_tensor(x, y):
75
103
  return F.tensor_sub(x, y)
76
104
 
77
105
 
106
+ @augassign_sub.register("Tensor", "List")
78
107
  @sub.register("Tensor", "List")
79
108
  def _tensor_sub_list(x, y):
80
109
  """Returns x - y where x is a tensor and y is a list. """
@@ -82,6 +111,7 @@ def _tensor_sub_list(x, y):
82
111
  return F.tensor_sub(x, y)
83
112
 
84
113
 
114
+ @augassign_sub.register("CSRTensor", "CSRTensor")
85
115
  @sub.register("CSRTensor", "CSRTensor")
86
116
  def _sub_csrtensor(x, y):
87
117
  """Returns x - y where x and y are all CSR tensors."""
@@ -89,6 +119,7 @@ def _sub_csrtensor(x, y):
89
119
  return F.csr_add(x, y, make_tensor(1, x.values.dtype), make_tensor(-1, x.values.dtype))
90
120
 
91
121
 
122
+ @augassign_sub.register("COOTensor", "COOTensor")
92
123
  @sub.register("COOTensor", "COOTensor")
93
124
  def _sub_cootensor(x, y):
94
125
  """Returns x - y where x and y are all COO tensors."""
@@ -96,6 +127,7 @@ def _sub_cootensor(x, y):
96
127
  return F.coo_add(x, -y, make_tensor(0, x.values.dtype))
97
128
 
98
129
 
130
+ @augassign_sub.register("Tensor", "COOTensor")
99
131
  @sub.register("Tensor", "COOTensor")
100
132
  def _tensor_sub_cootensor(x, y):
101
133
  """Returns x - y where x is a tensor and y is a COO tensor."""
@@ -103,6 +135,7 @@ def _tensor_sub_cootensor(x, y):
103
135
  return F.tensor_scatter_sub(x, y.indices, y.values)
104
136
 
105
137
 
138
+ @augassign_sub.register("COOTensor", "Tensor")
106
139
  @sub.register("COOTensor", "Tensor")
107
140
  def _cootensor_sub_tensor(x, y):
108
141
  """Returns x - y where x is a COO tensor and y is a tensor."""
@@ -111,6 +144,7 @@ def _cootensor_sub_tensor(x, y):
111
144
 
112
145
 
113
146
  # pylint: disable=protected-access
147
+ @augassign_sub._register_default()
114
148
  @sub._register_default()
115
149
  def default_sub(x, y):
116
150
  """Default function for sub."""
@@ -213,6 +213,20 @@ def _zeros_like_env_type(x):
213
213
  return F.environ_create()
214
214
 
215
215
 
216
+ @zeros_like_leaf.register("Slice")
217
+ def _zeros_like_slice(x):
218
+ """
219
+ Slice.
220
+
221
+ Args:
222
+ x (Slice): the input
223
+
224
+ Returns:
225
+ x.
226
+ """
227
+ return x
228
+
229
+
216
230
  class _ZerosLike(base.ZerosLike_):
217
231
  def __init__(self, name, fn_leaf):
218
232
  """Initialize _ZerosLike."""
@@ -481,6 +481,7 @@ from .nn_func import (
481
481
  max_pool3d,
482
482
  moe_token_permute,
483
483
  moe_token_unpermute,
484
+ ring_attention_update,
484
485
  batch_norm,
485
486
  add_rms_norm,
486
487
  rms_norm,
@@ -785,7 +786,9 @@ from .other_func import (
785
786
  partial,
786
787
  rotary_position_embedding,
787
788
  move_to,
788
- moe_init_routing_v2
789
+ moe_init_routing_v2,
790
+ moe_distribute_dispatch,
791
+ moe_distribute_combine
789
792
  )
790
793
 
791
794
  from ._add_attr_func import (
@@ -14,6 +14,8 @@
14
14
  # ============================================================================
15
15
  """_add_attr"""
16
16
 
17
+ __all__ = ["_add_attr"]
18
+
17
19
  from typing import Callable
18
20
  import mindspore as ms
19
21
  from mindspore._c_expression import AddAttr_
@@ -36,13 +38,12 @@ class AddAttr(AddAttr_):
36
38
  if (not isinstance(fn, Callable)) or isinstance(fn, Primitive):
37
39
  raise TypeError(f"the parameter 'fn' must be callable type except Primitive, but got:{type(fn)}")
38
40
 
39
- if self.addattr_fn is not None and self.addattr_fn == fn and \
40
- self.fn is not None and self.fn == fn and \
41
- self.attrs_dict is not None and self.attrs_dict == kwargs:
41
+ if self._is_attr_set(fn, kwargs):
42
42
  return self.addattr_fn
43
43
 
44
44
  add_attr_ = AddAttr()
45
45
  attr_kv_pair = tuple(kwargs.items())
46
+
46
47
  @ms.common.jit
47
48
  def add_attr_fn(*args):
48
49
  return add_attr_(fn, attr_kv_pair)(*args)
@@ -52,7 +53,11 @@ class AddAttr(AddAttr_):
52
53
  self.attrs_dict = kwargs
53
54
  return self.addattr_fn
54
55
 
55
- def _add_attr(fn, **kwargs):
56
- return AddAttr()(fn, **kwargs)
56
+ def _is_attr_set(self, fn, kwargs):
57
+ return self.addattr_fn is not None and self.addattr_fn == fn and \
58
+ self.fn is not None and self.fn == fn and \
59
+ self.attrs_dict is not None and self.attrs_dict == kwargs
57
60
 
58
- __all__ = ["_add_attr"]
61
+
62
+ def _add_attr(fn, **kwargs):
63
+ return AddAttr()(fn, **kwargs)
@@ -104,15 +104,13 @@ from mindspore.ops._utils.utils import ms_arrange
104
104
  from mindspore.ops.auto_generate import cat, range, scatter_nd, deepcopy, masked_fill, diagonal, expand_dims, \
105
105
  flip, transpose, triu, unsorted_segment_sum, diag, gather, gather_d, gather_nd, reshape, masked_select, \
106
106
  broadcast_to, strided_slice, ones, zeros, max_, min_, select, zero_, view_as, \
107
- expand_as, unstack_ext_op, full_like_op, \
107
+ expand_as, unstack_ext_view_op, full_like_op, \
108
108
  index_fill_scalar, index_fill_tensor
109
109
  from mindspore.ops.auto_generate import take, tensor_scatter_elements as tensor_scatter_elements_ext
110
- from mindspore.ops.auto_generate.gen_ops_prim import scatter_add_ext_op, gather_d_op, slice_op, tril_ext_op
110
+ from mindspore.ops.auto_generate.gen_ops_prim import scatter_add_ext_op, gather_d_op, slice_op, tril_ext_op, \
111
+ split_tensor_op, split_with_size_op
111
112
  from mindspore.ops.operations.manually_defined import tile, rank, scalar_cast
112
113
  from mindspore.ops.auto_generate.pyboost_inner_prim import _PyboostOneHotExtPrim
113
- from mindspore._c_expression import pyboost_empty
114
- from mindspore._c_expression import pyboost_empty_like
115
- from mindspore._c_expression import pyboost_new_empty
116
114
 
117
115
  arg_max_with_value_ = ArgMaxWithValue()
118
116
  arg_min_with_value_ = ArgMinWithValue()
@@ -517,92 +515,6 @@ def reverse(x, axis):
517
515
  return flip(x, axis)
518
516
 
519
517
 
520
- def empty(*size, dtype=None, device=None):
521
- r"""
522
- Creates a tensor with uninitialized data, whose shape, dtype and device are described by the argument `size`,
523
- `dtype` and `device` respectively.
524
-
525
- .. warning::
526
- This is an experimental API that is subject to change or deletion.
527
-
528
- Args:
529
- size (Union[tuple[int], list[int], int]): The specified shape of output tensor. Only positive integer or
530
- tuple or list containing positive integers are allowed.
531
-
532
- Keyword Args:
533
- dtype (:class:`mindspore.dtype`, optional): The specified type of output tensor. If `dtype` is ``None`` ,
534
- `mindspore.float32` will be used. Default: ``None`` .
535
- device (string, optional): The specified device of the output tensor. Support ``CPU`` and ``Ascend``. If
536
- `device = None`, the value set by :func:`mindspore.set_device` will be used. Default ``None``.
537
-
538
- Returns:
539
- Tensor, whose dtype and size are defined by input.
540
-
541
- Raises:
542
- TypeError: If `size` is neither an int nor a tuple or list of int.
543
-
544
- Supported Platforms:
545
- ``Ascend``
546
-
547
- Examples:
548
- >>> import mindspore
549
- >>> from mindspore import ops
550
- >>> output = ops.empty((2, 3), dtype=mindspore.float32)
551
- >>> print(output)
552
- [[0. 0. 0.]
553
- [0. 0. 0.]]
554
- """
555
-
556
- return pyboost_empty([size, dtype, device])
557
-
558
- def empty_like(input, *, dtype=None, device=None):
559
- r"""
560
- Returns an uninitialized Tensor with the same shape as the `input`. Its dtype is specified by `dtype` and its
561
- device is specified by `device`.
562
-
563
- .. warning::
564
- This is an experimental API that is subject to change or deletion.
565
-
566
- Args:
567
- input (Tensor): Tensor of any dimension.
568
-
569
- Keyword Args:
570
- dtype (:class:`mindspore.dtype`, optional): The specified dtype of the output tensor. If `dtype = None`, the
571
- tensor will have the same dtype as input `input`. Default ``None``.
572
- device (string, optional): The specified device of the output tensor. Support ``CPU`` and ``Ascend``. If
573
- `device = None`, the tensor will have the same device as input `input` and if the device of the input
574
- tensor is not defined, the value set by :func:`mindspore.set_device` will be used. Default ``None``.
575
-
576
- Returns:
577
- Tensor, has the same shape, type and device as `input` but with uninitialized data (May be a random value).
578
-
579
- Raises:
580
- TypeError: If `input` is not a Tensor.
581
-
582
- Supported Platforms:
583
- ``Ascend``
584
-
585
- Examples:
586
- >>> import mindspore
587
- >>> from mindspore import ops, Tensor
588
- >>> x = Tensor([[1, 2, 3], [4, 5, 6]])
589
- >>> output1 = ops.empty_like(x)
590
- >>> print(output1)
591
- [[0 0 0]
592
- [0 0 0]]
593
- >>> output2 = ops.empty_like(x, dtype=mindspore.float64)
594
- >>> print(output2)
595
- [[0. 0. 0.]
596
- [0. 0. 0.]]
597
- """
598
-
599
- return pyboost_empty_like([input, dtype, device])
600
-
601
-
602
- def new_empty(input, size, dtype, device):
603
- return pyboost_new_empty([input, size, dtype, device])
604
-
605
-
606
518
  def ravel(input):
607
519
  """
608
520
  Expand the multidimensional Tensor into 1D along the 0 axis direction.
@@ -872,7 +784,7 @@ def full_ext(size, fill_value, *, dtype=None): # pylint: disable=redefined-oute
872
784
 
873
785
  Keyword Args:
874
786
  dtype (mindspore.dtype, optional): The specified type of output tensor.
875
- `bool_` and `number` are supported, for details,
787
+ `bool` and `number` are supported, for details,
876
788
  please refer to :class:`mindspore.dtype` . Default: ``None`` .
877
789
 
878
790
  Returns:
@@ -945,7 +857,7 @@ def full_like_ext(input, fill_value, *, dtype=None):
945
857
  fill_value (Number): Value to fill the returned tensor. Complex numbers are not supported for now.
946
858
 
947
859
  Keyword Args:
948
- dtype (mindspore.dtype, optional): The specified type of output tensor. `bool_` and `number` are supported,
860
+ dtype (mindspore.dtype, optional): The specified type of output tensor. `bool` and `number` are supported,
949
861
  for details, please refer to :class:`mindspore.dtype` . Default: ``None`` .
950
862
 
951
863
  Returns:
@@ -1981,7 +1893,7 @@ def unbind_ext(input, dim=0):
1981
1893
  (Tensor(shape=[3], dtype=Int64, value=[1, 2, 3]), Tensor(shape=[3], dtype=Int64, value=[4, 5, 6]),
1982
1894
  Tensor(shape=[3], dtype=Int64, value=[7, 8, 9]))
1983
1895
  """
1984
- return unstack_ext_op(input, dim)
1896
+ return unstack_ext_view_op(input, dim)
1985
1897
 
1986
1898
 
1987
1899
  def unsqueeze(input, dim):
@@ -3267,7 +3179,7 @@ def _get_slice_scatter_const(x_shape, axis, start, end, step):
3267
3179
  x_rank = len(x_shape)
3268
3180
  axis = axis if axis >= 0 else axis + x_rank
3269
3181
  start = start if start is not None else 0
3270
- start = start if start >= 0 else start + x_rank
3182
+ start = start if start >= 0 else start + x_shape[axis]
3271
3183
  end = end if end is not None else x_shape[axis]
3272
3184
  end = end if end >= 0 else end + x_shape[axis]
3273
3185
  end = end if end < x_shape[axis] else x_shape[axis]
@@ -4607,9 +4519,9 @@ def split_ext(tensor, split_size, dim=0):
4607
4519
  Tensor(shape=[3], dtype=Float32, value= [ 6.00000000e+00, 7.00000000e+00, 8.00000000e+00]))
4608
4520
  """
4609
4521
  if isinstance(split_size, int):
4610
- res = split_tensor(tensor, split_size, dim)
4522
+ res = split_tensor_op(tensor, split_size, dim)
4611
4523
  elif isinstance(split_size, (list, tuple)):
4612
- res = split_with_size(tensor, split_size, dim)
4524
+ res = split_with_size_op(tensor, split_size, dim)
4613
4525
  else:
4614
4526
  raise TypeError(f"Type of Argument `split_size` should be integer, tuple(int) or list(int), "
4615
4527
  f"but got {type(split_size)}")
@@ -4816,7 +4728,11 @@ def _tensor_split_sub_tensors(x, indices_or_sections, axis):
4816
4728
  idx = indices_or_sections[i]
4817
4729
  begin[axis] = 0 if i == 0 else indices_or_sections[i - 1]
4818
4730
  end[axis] = idx
4819
- sliced_tensor = strided_slice(x, tuple(begin), tuple(end), strides)
4731
+ if begin[axis] == end[axis]:
4732
+ empty_shape = x.shape[0:axis] + (0,) + x.shape[axis + 1:]
4733
+ sliced_tensor = ms.Tensor(shape=empty_shape, dtype=x.dtype)
4734
+ else:
4735
+ sliced_tensor = strided_slice(x, tuple(begin), tuple(end), strides)
4820
4736
  sub_tensors.append(sliced_tensor)
4821
4737
  return tuple(sub_tensors)
4822
4738
 
@@ -4832,7 +4748,7 @@ def _tensor_split_sub_int(x, indices_or_sections, axis):
4832
4748
  res = _get_cache_prim(P.Split)(axis)(x)
4833
4749
  elif indices_or_sections > length_along_dim:
4834
4750
  res = _get_cache_prim(P.Split)(axis, length_along_dim)(x)
4835
- indices_or_sections_n = [length_along_dim, length_along_dim + 1]
4751
+ indices_or_sections_n = [length_along_dim]
4836
4752
  res2 = _tensor_split_sub_tensors(x, indices_or_sections_n, axis)
4837
4753
  for _ in np.arange(length_along_dim, indices_or_sections):
4838
4754
  res += tuple(res2)[1:]
@@ -5155,7 +5071,7 @@ def max(input, axis=None, keepdims=False, *, initial=None, where=None): # pylin
5155
5071
  >>> # case 4: Use "where" to include only specific elements in computing the maximum.
5156
5072
  >>> where = mindspore.tensor([[0, 0, 1, 0],
5157
5073
  ... [0, 0, 1, 1],
5158
- ... [1, 1, 1, 0]], dtype=mindspore.bool_)
5074
+ ... [1, 1, 1, 0]], dtype=mindspore.bool)
5159
5075
  >>> mindspore.ops.max(input, axis=1, keepdims=True, initial=0, where=where)
5160
5076
  (Tensor(shape=[3, 1], dtype=Int64, value=
5161
5077
  [[4],
@@ -5295,7 +5211,7 @@ def min(input, axis=None, keepdims=False, *, initial=None, where=None): # pylin
5295
5211
  >>> # case 4: Use "where" to include only specific elements in computing the minimum.
5296
5212
  >>> where = mindspore.tensor([[1, 0, 1, 0],
5297
5213
  ... [0, 0, 1, 1],
5298
- ... [1, 1, 1, 0]], dtype=mindspore.bool_)
5214
+ ... [1, 1, 1, 0]], dtype=mindspore.bool)
5299
5215
  >>> mindspore.ops.min(input, axis=1, keepdims=True, initial=0, where=where)
5300
5216
  (Tensor(shape=[3, 1], dtype=Int64, value=
5301
5217
  [[ 0],
@@ -5430,6 +5346,7 @@ def narrow(input, axis, start, length):
5430
5346
  sizes[axis] = length
5431
5347
  return tensor_slice(input, begins, sizes)
5432
5348
 
5349
+
5433
5350
  def topk(input, k, dim=None, largest=True, sorted=True):
5434
5351
  r"""
5435
5352
  Return the top `k` largest or smallest elements of the input tensor along a specified dimension.
@@ -5897,7 +5814,7 @@ def nonzero(input, *, as_tuple=False):
5897
5814
  input (Tensor): The input tensor.
5898
5815
 
5899
5816
  .. note::
5900
- - Ascend: Rank of Input tensor can be equal to 0 except jit level O2 mode.
5817
+ - Ascend: Rank of Input tensor can be equal to 0 except GE backend.
5901
5818
  - CPU/GPU: Rank of Input tensor should be greater than or eaqual to 1.
5902
5819
 
5903
5820
  Keyword Args: