mindspore 2.2.11__cp37-cp37m-manylinux1_x86_64.whl → 2.3.0rc1__cp37-cp37m-manylinux1_x86_64.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 (1171) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +5 -4
  3. mindspore/_akg/akg/composite/build_module.py +155 -11
  4. mindspore/_akg/akg/config/repository.json +38 -0
  5. mindspore/_akg/akg/ms/info_version_adapt.py +29 -0
  6. mindspore/_akg/akg/topi/cpp/impl.py +1 -1
  7. mindspore/_akg/akg/tvm/_ffi/base.py +1 -1
  8. mindspore/_akg/akg/tvm/contrib/nvcc.py +4 -1
  9. mindspore/_akg/akg/utils/ascend_profilier/path_manager.py +2 -1
  10. mindspore/_akg/akg/utils/composite_op_helper.py +4 -2
  11. mindspore/_akg/akg/utils/dump_ascend_meta.py +2 -2
  12. mindspore/_akg/akg/utils/gen_random.py +14 -8
  13. mindspore/_akg/akg/utils/op_dsl.py +11 -0
  14. mindspore/_akg/akg/utils/tbe_codegen_utils.py +5 -5
  15. mindspore/_c_dataengine.cpython-37m-x86_64-linux-gnu.so +0 -0
  16. mindspore/_c_expression.cpython-37m-x86_64-linux-gnu.so +0 -0
  17. mindspore/_c_mindrecord.cpython-37m-x86_64-linux-gnu.so +0 -0
  18. mindspore/_checkparam.py +58 -0
  19. mindspore/_extends/builtin_operations.py +2 -1
  20. mindspore/_extends/graph_kernel/model/graph_parallel.py +16 -6
  21. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +3 -16
  22. mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +16 -4
  23. mindspore/_extends/parallel_compile/akg_compiler/compiler.py +1 -0
  24. mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +96 -0
  25. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +2 -1
  26. mindspore/_extends/parallel_compile/akg_compiler/util.py +5 -2
  27. mindspore/_extends/parse/__init__.py +18 -14
  28. mindspore/_extends/parse/compile_config.py +229 -0
  29. mindspore/_extends/parse/parser.py +155 -59
  30. mindspore/_extends/parse/resources.py +40 -7
  31. mindspore/_extends/parse/standard_method.py +124 -204
  32. mindspore/_extends/remote/kernel_build_server.py +2 -0
  33. mindspore/_mindspore_offline_debug.cpython-37m-x86_64-linux-gnu.so +0 -0
  34. mindspore/_profiler.py +30 -0
  35. mindspore/amp.py +24 -18
  36. mindspore/bin/cache_admin +0 -0
  37. mindspore/bin/cache_server +0 -0
  38. mindspore/boost/boost_cell_wrapper.py +1 -1
  39. mindspore/boost/group_loss_scale_manager.py +1 -1
  40. mindspore/common/__init__.py +3 -1
  41. mindspore/common/_jit_fallback_utils.py +2 -3
  42. mindspore/common/_register_for_adapter.py +7 -0
  43. mindspore/common/_stub_tensor.py +6 -1
  44. mindspore/common/_utils.py +5 -17
  45. mindspore/common/api.py +91 -48
  46. mindspore/common/auto_dynamic_shape.py +27 -14
  47. mindspore/common/dtype.py +5 -4
  48. mindspore/common/dump.py +5 -4
  49. mindspore/common/initializer.py +1 -1
  50. mindspore/common/jit_config.py +20 -11
  51. mindspore/common/lazy_inline.py +58 -17
  52. mindspore/common/mindir_util.py +12 -2
  53. mindspore/common/mutable.py +79 -14
  54. mindspore/common/parameter.py +19 -4
  55. mindspore/common/seed.py +9 -9
  56. mindspore/common/sparse_tensor.py +251 -18
  57. mindspore/common/symbol.py +122 -0
  58. mindspore/common/tensor.py +321 -435
  59. mindspore/communication/__init__.py +3 -3
  60. mindspore/communication/_comm_helper.py +5 -0
  61. mindspore/communication/management.py +56 -38
  62. mindspore/config/op_info.config +22 -54
  63. mindspore/context.py +192 -54
  64. mindspore/dataset/__init__.py +5 -5
  65. mindspore/dataset/audio/__init__.py +6 -6
  66. mindspore/dataset/audio/transforms.py +711 -158
  67. mindspore/dataset/callback/ds_callback.py +2 -2
  68. mindspore/dataset/engine/cache_client.py +2 -2
  69. mindspore/dataset/engine/datasets.py +95 -38
  70. mindspore/dataset/engine/datasets_audio.py +14 -14
  71. mindspore/dataset/engine/datasets_standard_format.py +33 -3
  72. mindspore/dataset/engine/datasets_text.py +38 -38
  73. mindspore/dataset/engine/datasets_user_defined.py +7 -7
  74. mindspore/dataset/engine/datasets_vision.py +75 -71
  75. mindspore/dataset/engine/offload.py +5 -7
  76. mindspore/dataset/engine/validators.py +1 -1
  77. mindspore/dataset/text/__init__.py +3 -3
  78. mindspore/dataset/text/transforms.py +408 -121
  79. mindspore/dataset/text/utils.py +9 -9
  80. mindspore/dataset/transforms/__init__.py +1 -1
  81. mindspore/dataset/transforms/transforms.py +261 -76
  82. mindspore/dataset/utils/browse_dataset.py +9 -9
  83. mindspore/dataset/vision/__init__.py +3 -3
  84. mindspore/dataset/vision/c_transforms.py +5 -5
  85. mindspore/dataset/vision/py_transforms_util.py +2 -2
  86. mindspore/dataset/vision/transforms.py +2264 -514
  87. mindspore/dataset/vision/utils.py +40 -9
  88. mindspore/dataset/vision/validators.py +7 -1
  89. mindspore/experimental/optim/__init__.py +12 -2
  90. mindspore/experimental/optim/adadelta.py +161 -0
  91. mindspore/experimental/optim/adagrad.py +168 -0
  92. mindspore/experimental/optim/adam.py +35 -34
  93. mindspore/experimental/optim/adamax.py +170 -0
  94. mindspore/experimental/optim/adamw.py +40 -16
  95. mindspore/experimental/optim/asgd.py +153 -0
  96. mindspore/experimental/optim/lr_scheduler.py +65 -125
  97. mindspore/experimental/optim/nadam.py +157 -0
  98. mindspore/experimental/optim/optimizer.py +15 -8
  99. mindspore/experimental/optim/radam.py +194 -0
  100. mindspore/experimental/optim/rmsprop.py +154 -0
  101. mindspore/experimental/optim/rprop.py +164 -0
  102. mindspore/experimental/optim/sgd.py +28 -19
  103. mindspore/hal/__init__.py +34 -0
  104. mindspore/hal/_ascend.py +57 -0
  105. mindspore/hal/_base.py +57 -0
  106. mindspore/hal/_cpu.py +56 -0
  107. mindspore/hal/_gpu.py +57 -0
  108. mindspore/hal/device.py +356 -0
  109. mindspore/hal/event.py +179 -0
  110. mindspore/hal/stream.py +337 -0
  111. mindspore/include/api/data_type.h +2 -2
  112. mindspore/include/api/dual_abi_helper.h +16 -3
  113. mindspore/include/api/model.h +1 -3
  114. mindspore/include/api/status.h +14 -0
  115. mindspore/include/c_api/model_c.h +173 -0
  116. mindspore/include/c_api/ms/base/types.h +1 -0
  117. mindspore/include/c_api/types_c.h +19 -0
  118. mindspore/include/dataset/execute.h +1 -3
  119. mindspore/include/mindapi/base/format.h +125 -23
  120. mindspore/include/mindapi/base/types.h +7 -0
  121. mindspore/lib/libdnnl.so.2 +0 -0
  122. mindspore/lib/libmindspore.so +0 -0
  123. mindspore/lib/libmindspore_backend.so +0 -0
  124. mindspore/lib/libmindspore_common.so +0 -0
  125. mindspore/lib/libmindspore_core.so +0 -0
  126. mindspore/lib/libmindspore_glog.so.0 +0 -0
  127. mindspore/lib/libmindspore_gpr.so.15 +0 -0
  128. mindspore/lib/libmindspore_grpc++.so.1 +0 -0
  129. mindspore/lib/libmindspore_grpc.so.15 +0 -0
  130. mindspore/lib/libmindspore_shared_lib.so +0 -0
  131. mindspore/lib/libmpi_adapter.so +0 -0
  132. mindspore/lib/libmpi_collective.so +0 -0
  133. mindspore/lib/libnnacl.so +0 -0
  134. mindspore/lib/libopencv_core.so.4.5 +0 -0
  135. mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
  136. mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
  137. mindspore/lib/libps_cache.so +0 -0
  138. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json +2044 -154
  139. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json +2044 -33
  140. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/build_tbe_kernel.py +529 -0
  141. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/compiler.py +56 -0
  142. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/custom.py +1109 -0
  143. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/get_file_path.py +36 -0
  144. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/kv_cache_mgr.py +0 -2
  145. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/tbe_topi.py +556 -0
  146. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/kv_cache_mgr.py +0 -2
  147. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
  148. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +6365 -1759
  149. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
  150. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_api/include/aclnn_add_custom.h +49 -0
  151. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_api/include/aclnn_decoder_kv_cache.h +59 -0
  152. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_api/include/aclnn_prompt_kv_cache.h +59 -0
  153. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_api/lib/libcust_opapi.so +0 -0
  154. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json +52 -0
  155. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json +232 -0
  156. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json +232 -0
  157. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/custom_ascendc_ops_impl/dynamic/add_custom.cpp +81 -0
  158. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/custom_ascendc_ops_impl/dynamic/add_custom.py +134 -0
  159. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/custom_ascendc_ops_impl/dynamic/decoder_kv_cache.cpp +192 -0
  160. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/custom_ascendc_ops_impl/dynamic/decoder_kv_cache.py +134 -0
  161. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/custom_ascendc_ops_impl/dynamic/prompt_kv_cache.cpp +274 -0
  162. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/custom_ascendc_ops_impl/dynamic/prompt_kv_cache.py +134 -0
  163. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/op_tiling/lib/linux/x86_64/libcust_opmaster_rt2.0.so +0 -0
  164. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_impl/ai_core/tbe/op_tiling/liboptiling.so +0 -0
  165. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_proto/inc/op_proto.h +39 -0
  166. mindspore/lib/plugin/ascend/custom_ascendc_ops/op_proto/lib/linux/x86_64/libcust_opsproto_rt2.0.so +0 -0
  167. mindspore/lib/plugin/ascend/libakg.so +0 -0
  168. mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
  169. mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
  170. mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
  171. mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
  172. mindspore/lib/plugin/cpu/libakg.so +0 -0
  173. mindspore/lib/plugin/gpu/libcuda_ops.so.10 +0 -0
  174. mindspore/lib/plugin/gpu/libcuda_ops.so.11 +0 -0
  175. mindspore/lib/plugin/gpu10.1/libakg.so +0 -0
  176. mindspore/lib/plugin/gpu10.1/libnccl.so.2 +0 -0
  177. mindspore/lib/plugin/gpu10.1/libnvidia_collective.so +0 -0
  178. mindspore/lib/plugin/gpu11.1/libakg.so +0 -0
  179. mindspore/lib/plugin/gpu11.1/libnccl.so.2 +0 -0
  180. mindspore/lib/plugin/gpu11.1/libnvidia_collective.so +0 -0
  181. mindspore/lib/plugin/gpu11.6/libakg.so +0 -0
  182. mindspore/lib/plugin/gpu11.6/libnccl.so.2 +0 -0
  183. mindspore/lib/plugin/gpu11.6/libnvidia_collective.so +0 -0
  184. mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
  185. mindspore/lib/plugin/libmindspore_gpu.so.10.1 +0 -0
  186. mindspore/lib/plugin/libmindspore_gpu.so.11.1 +0 -0
  187. mindspore/lib/plugin/libmindspore_gpu.so.11.6 +0 -0
  188. mindspore/mindrecord/__init__.py +5 -1
  189. mindspore/mindrecord/config.py +809 -0
  190. mindspore/mindrecord/filereader.py +25 -0
  191. mindspore/mindrecord/filewriter.py +74 -56
  192. mindspore/mindrecord/mindpage.py +40 -6
  193. mindspore/mindrecord/shardutils.py +3 -2
  194. mindspore/mindrecord/shardwriter.py +7 -0
  195. mindspore/mindrecord/tools/cifar100_to_mr.py +53 -66
  196. mindspore/mindrecord/tools/cifar10_to_mr.py +48 -63
  197. mindspore/mindrecord/tools/csv_to_mr.py +7 -17
  198. mindspore/mindrecord/tools/imagenet_to_mr.py +3 -8
  199. mindspore/mindrecord/tools/mnist_to_mr.py +11 -21
  200. mindspore/mindrecord/tools/tfrecord_to_mr.py +2 -10
  201. mindspore/multiprocessing/__init__.py +68 -0
  202. mindspore/nn/cell.py +86 -133
  203. mindspore/nn/dynamic_lr.py +2 -2
  204. mindspore/nn/layer/activation.py +80 -91
  205. mindspore/nn/layer/basic.py +4 -80
  206. mindspore/nn/layer/channel_shuffle.py +3 -16
  207. mindspore/nn/layer/container.py +3 -3
  208. mindspore/nn/layer/conv.py +71 -71
  209. mindspore/nn/layer/embedding.py +107 -46
  210. mindspore/nn/layer/image.py +4 -7
  211. mindspore/nn/layer/normalization.py +46 -38
  212. mindspore/nn/layer/padding.py +26 -39
  213. mindspore/nn/layer/pooling.py +13 -9
  214. mindspore/nn/layer/rnn_cells.py +5 -15
  215. mindspore/nn/layer/rnns.py +6 -5
  216. mindspore/nn/layer/thor_layer.py +1 -2
  217. mindspore/nn/layer/timedistributed.py +1 -1
  218. mindspore/nn/layer/transformer.py +52 -50
  219. mindspore/nn/learning_rate_schedule.py +6 -5
  220. mindspore/nn/loss/loss.py +44 -65
  221. mindspore/nn/optim/ada_grad.py +6 -4
  222. mindspore/nn/optim/adadelta.py +3 -1
  223. mindspore/nn/optim/adafactor.py +1 -1
  224. mindspore/nn/optim/adam.py +102 -181
  225. mindspore/nn/optim/adamax.py +4 -2
  226. mindspore/nn/optim/adasum.py +2 -2
  227. mindspore/nn/optim/asgd.py +4 -2
  228. mindspore/nn/optim/ftrl.py +31 -61
  229. mindspore/nn/optim/lamb.py +5 -3
  230. mindspore/nn/optim/lars.py +2 -2
  231. mindspore/nn/optim/lazyadam.py +6 -4
  232. mindspore/nn/optim/momentum.py +13 -25
  233. mindspore/nn/optim/optimizer.py +6 -3
  234. mindspore/nn/optim/proximal_ada_grad.py +4 -2
  235. mindspore/nn/optim/rmsprop.py +9 -3
  236. mindspore/nn/optim/rprop.py +4 -2
  237. mindspore/nn/optim/sgd.py +4 -2
  238. mindspore/nn/optim/thor.py +2 -2
  239. mindspore/nn/probability/distribution/_utils/custom_ops.py +2 -2
  240. mindspore/nn/probability/distribution/beta.py +2 -2
  241. mindspore/nn/probability/distribution/categorical.py +4 -6
  242. mindspore/nn/probability/distribution/cauchy.py +2 -2
  243. mindspore/nn/probability/distribution/exponential.py +1 -1
  244. mindspore/nn/probability/distribution/gumbel.py +2 -2
  245. mindspore/nn/probability/distribution/poisson.py +2 -2
  246. mindspore/nn/probability/distribution/uniform.py +2 -2
  247. mindspore/nn/reinforcement/_tensors_queue.py +13 -1
  248. mindspore/nn/wrap/__init__.py +2 -1
  249. mindspore/nn/wrap/cell_wrapper.py +33 -12
  250. mindspore/nn/wrap/grad_reducer.py +148 -8
  251. mindspore/nn/wrap/loss_scale.py +7 -7
  252. mindspore/numpy/__init__.py +2 -0
  253. mindspore/numpy/array_creations.py +2 -0
  254. mindspore/numpy/array_ops.py +1 -5
  255. mindspore/numpy/fft.py +431 -0
  256. mindspore/numpy/math_ops.py +53 -59
  257. mindspore/numpy/utils.py +3 -0
  258. mindspore/ops/__init__.py +7 -3
  259. mindspore/ops/_grad_experimental/grad_array_ops.py +4 -160
  260. mindspore/ops/_grad_experimental/grad_comm_ops.py +14 -18
  261. mindspore/ops/_grad_experimental/grad_inner_ops.py +8 -0
  262. mindspore/ops/_grad_experimental/grad_math_ops.py +92 -287
  263. mindspore/ops/_grad_experimental/grad_nn_ops.py +0 -53
  264. mindspore/ops/_grad_experimental/grad_quant_ops.py +3 -3
  265. mindspore/ops/_grad_experimental/grad_sparse.py +1 -1
  266. mindspore/ops/_grad_experimental/grad_sparse_ops.py +3 -3
  267. mindspore/ops/_op_impl/__init__.py +0 -1
  268. mindspore/ops/_op_impl/aicpu/__init__.py +1 -0
  269. mindspore/ops/_op_impl/aicpu/gamma.py +2 -0
  270. mindspore/ops/_op_impl/{cpu/concat.py → aicpu/generate_eod_mask.py} +16 -17
  271. mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +1 -3
  272. mindspore/ops/_op_impl/aicpu/poisson.py +2 -0
  273. mindspore/ops/_op_impl/cpu/__init__.py +1 -3
  274. mindspore/ops/_op_impl/cpu/adam.py +2 -2
  275. mindspore/ops/_op_impl/cpu/adam_weight_decay.py +3 -2
  276. mindspore/ops/_op_impl/cpu/maximum_grad.py +16 -14
  277. mindspore/ops/_op_impl/cpu/minimum_grad.py +8 -0
  278. mindspore/ops/_vmap/vmap_array_ops.py +137 -101
  279. mindspore/ops/_vmap/vmap_base.py +8 -1
  280. mindspore/ops/_vmap/vmap_grad_math_ops.py +95 -9
  281. mindspore/ops/_vmap/vmap_grad_nn_ops.py +102 -56
  282. mindspore/ops/_vmap/vmap_image_ops.py +70 -13
  283. mindspore/ops/_vmap/vmap_math_ops.py +74 -49
  284. mindspore/ops/_vmap/vmap_nn_ops.py +164 -89
  285. mindspore/ops/_vmap/vmap_other_ops.py +1 -1
  286. mindspore/ops/auto_generate/__init__.py +31 -0
  287. mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +133 -0
  288. mindspore/ops/auto_generate/gen_arg_dtype_cast.py +248 -0
  289. mindspore/ops/auto_generate/gen_arg_handler.py +147 -0
  290. mindspore/ops/auto_generate/gen_extend_func.py +130 -0
  291. mindspore/ops/auto_generate/gen_ops_def.py +4786 -0
  292. mindspore/ops/auto_generate/gen_ops_prim.py +8335 -0
  293. mindspore/ops/auto_generate/pyboost_inner_prim.py +77 -0
  294. mindspore/ops/composite/__init__.py +5 -2
  295. mindspore/ops/composite/base.py +118 -17
  296. mindspore/ops/composite/math_ops.py +9 -48
  297. mindspore/ops/composite/multitype_ops/_compile_utils.py +166 -601
  298. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +15 -133
  299. mindspore/ops/composite/multitype_ops/add_impl.py +6 -0
  300. mindspore/ops/composite/multitype_ops/bitwise_and_impl.py +6 -0
  301. mindspore/ops/composite/multitype_ops/bitwise_or_impl.py +6 -0
  302. mindspore/ops/composite/multitype_ops/bitwise_xor_impl.py +6 -0
  303. mindspore/ops/composite/multitype_ops/div_impl.py +8 -0
  304. mindspore/ops/composite/multitype_ops/equal_impl.py +6 -0
  305. mindspore/ops/composite/multitype_ops/floordiv_impl.py +8 -0
  306. mindspore/ops/composite/multitype_ops/getitem_impl.py +6 -0
  307. mindspore/ops/composite/multitype_ops/greater_equal_impl.py +6 -0
  308. mindspore/ops/composite/multitype_ops/greater_impl.py +6 -0
  309. mindspore/ops/composite/multitype_ops/in_impl.py +8 -2
  310. mindspore/ops/composite/multitype_ops/left_shift_impl.py +6 -0
  311. mindspore/ops/composite/multitype_ops/less_equal_impl.py +6 -0
  312. mindspore/ops/composite/multitype_ops/less_impl.py +6 -0
  313. mindspore/ops/composite/multitype_ops/logic_not_impl.py +6 -0
  314. mindspore/ops/composite/multitype_ops/logical_and_impl.py +6 -0
  315. mindspore/ops/composite/multitype_ops/logical_or_impl.py +6 -0
  316. mindspore/ops/composite/multitype_ops/mod_impl.py +6 -0
  317. mindspore/ops/composite/multitype_ops/mul_impl.py +6 -0
  318. mindspore/ops/composite/multitype_ops/negative_impl.py +9 -3
  319. mindspore/ops/composite/multitype_ops/not_equal_impl.py +6 -0
  320. mindspore/ops/composite/multitype_ops/not_in_impl.py +6 -1
  321. mindspore/ops/composite/multitype_ops/ones_like_impl.py +2 -2
  322. mindspore/ops/composite/multitype_ops/pow_impl.py +6 -0
  323. mindspore/ops/composite/multitype_ops/right_shift_impl.py +6 -0
  324. mindspore/ops/composite/multitype_ops/setitem_impl.py +32 -21
  325. mindspore/ops/composite/multitype_ops/sub_impl.py +6 -0
  326. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +6 -3
  327. mindspore/ops/deprecated.py +14 -3
  328. mindspore/ops/extend/__init__.py +46 -0
  329. mindspore/ops/extend/array_func.py +152 -0
  330. mindspore/ops/extend/math_func.py +76 -0
  331. mindspore/ops/{_op_impl/tbe/atomic_addr_clean.py → extend/nn_func.py} +5 -15
  332. mindspore/ops/function/__init__.py +19 -11
  333. mindspore/ops/function/array_func.py +248 -1436
  334. mindspore/ops/function/clip_func.py +12 -13
  335. mindspore/ops/function/debug_func.py +2 -5
  336. mindspore/ops/function/fft_func.py +31 -0
  337. mindspore/ops/function/grad/grad_func.py +24 -17
  338. mindspore/ops/function/image_func.py +27 -21
  339. mindspore/ops/function/linalg_func.py +30 -53
  340. mindspore/ops/function/math_func.py +450 -2356
  341. mindspore/ops/function/nn_func.py +470 -789
  342. mindspore/ops/function/other_func.py +4 -5
  343. mindspore/ops/function/parameter_func.py +6 -92
  344. mindspore/ops/function/random_func.py +24 -80
  345. mindspore/ops/function/sparse_unary_func.py +11 -18
  346. mindspore/ops/function/spectral_func.py +1 -1
  347. mindspore/ops/function/vmap_func.py +15 -14
  348. mindspore/ops/functional.py +56 -62
  349. mindspore/ops/op_info_register.py +22 -19
  350. mindspore/ops/operations/__init__.py +19 -19
  351. mindspore/ops/operations/_embedding_cache_ops.py +1 -1
  352. mindspore/ops/operations/_grad_ops.py +20 -723
  353. mindspore/ops/operations/_inner_ops.py +233 -286
  354. mindspore/ops/operations/_quant_ops.py +4 -4
  355. mindspore/ops/operations/_rl_inner_ops.py +1 -1
  356. mindspore/ops/operations/_scalar_ops.py +5 -480
  357. mindspore/ops/operations/_sequence_ops.py +4 -34
  358. mindspore/ops/operations/array_ops.py +100 -2481
  359. mindspore/ops/operations/comm_ops.py +38 -46
  360. mindspore/ops/operations/custom_ops.py +9 -9
  361. mindspore/ops/operations/debug_ops.py +101 -32
  362. mindspore/ops/operations/image_ops.py +3 -219
  363. mindspore/ops/operations/inner_ops.py +52 -38
  364. mindspore/ops/operations/linalg_ops.py +1 -49
  365. mindspore/{rewrite/ast_transformers → ops/operations/manually_defined}/__init__.py +11 -4
  366. mindspore/ops/operations/manually_defined/_inner.py +61 -0
  367. mindspore/ops/operations/manually_defined/ops_def.py +1391 -0
  368. mindspore/ops/operations/math_ops.py +752 -4588
  369. mindspore/ops/operations/nn_ops.py +380 -1750
  370. mindspore/ops/operations/other_ops.py +50 -42
  371. mindspore/ops/operations/random_ops.py +3 -50
  372. mindspore/ops/operations/sparse_ops.py +4 -4
  373. mindspore/ops/primitive.py +196 -96
  374. mindspore/ops/silent_check.py +162 -0
  375. mindspore/ops_generate/__init__.py +27 -0
  376. mindspore/ops_generate/arg_dtype_cast.py +248 -0
  377. mindspore/ops_generate/arg_handler.py +147 -0
  378. mindspore/ops_generate/gen_aclnn_implement.py +266 -0
  379. mindspore/ops_generate/gen_ops.py +1062 -0
  380. mindspore/ops_generate/gen_ops_inner_prim.py +129 -0
  381. mindspore/ops_generate/gen_pyboost_func.py +932 -0
  382. mindspore/ops_generate/gen_utils.py +188 -0
  383. mindspore/ops_generate/op_proto.py +138 -0
  384. mindspore/ops_generate/pyboost_utils.py +364 -0
  385. mindspore/ops_generate/template.py +238 -0
  386. mindspore/parallel/__init__.py +6 -4
  387. mindspore/parallel/_auto_parallel_context.py +28 -4
  388. mindspore/parallel/_cell_wrapper.py +16 -9
  389. mindspore/parallel/_cost_model_context.py +1 -1
  390. mindspore/parallel/_dp_allreduce_fusion.py +159 -159
  391. mindspore/parallel/_parallel_serialization.py +28 -12
  392. mindspore/parallel/_ps_context.py +1 -1
  393. mindspore/parallel/_recovery_context.py +1 -1
  394. mindspore/parallel/_tensor.py +22 -8
  395. mindspore/parallel/_transformer/__init__.py +1 -1
  396. mindspore/parallel/_transformer/layers.py +1 -1
  397. mindspore/parallel/_transformer/loss.py +1 -1
  398. mindspore/parallel/_transformer/moe.py +1 -1
  399. mindspore/parallel/_transformer/op_parallel_config.py +1 -1
  400. mindspore/parallel/_transformer/transformer.py +9 -9
  401. mindspore/parallel/_utils.py +131 -6
  402. mindspore/parallel/algo_parameter_config.py +6 -6
  403. mindspore/parallel/checkpoint_transform.py +156 -26
  404. mindspore/parallel/cluster/__init__.py +15 -0
  405. mindspore/parallel/cluster/process_entity/__init__.py +18 -0
  406. mindspore/parallel/cluster/process_entity/_api.py +345 -0
  407. mindspore/parallel/cluster/process_entity/_utils.py +116 -0
  408. mindspore/parallel/cluster/run.py +139 -0
  409. mindspore/parallel/mpi/__init__.py +1 -1
  410. mindspore/parallel/mpi/_mpi_config.py +1 -1
  411. mindspore/parallel/parameter_broadcast.py +152 -0
  412. mindspore/parallel/shard.py +99 -2
  413. mindspore/profiler/common/util.py +20 -0
  414. mindspore/profiler/envprofiling.py +1 -1
  415. mindspore/{_extends/parallel_compile/tbe_compiler → profiler/parser/ascend_analysis}/__init__.py +1 -1
  416. mindspore/profiler/parser/ascend_analysis/constant.py +66 -0
  417. mindspore/profiler/parser/ascend_analysis/file_manager.py +77 -0
  418. mindspore/profiler/parser/ascend_analysis/function_event.py +146 -0
  419. mindspore/profiler/parser/ascend_analysis/fwk_cann_parser.py +108 -0
  420. mindspore/profiler/parser/ascend_analysis/fwk_file_parser.py +80 -0
  421. mindspore/profiler/parser/ascend_analysis/msprof_timeline_parser.py +52 -0
  422. mindspore/profiler/parser/ascend_analysis/profiler_info_parser.py +104 -0
  423. mindspore/profiler/parser/ascend_analysis/tlv_decoder.py +86 -0
  424. mindspore/profiler/parser/ascend_analysis/trace_event_manager.py +59 -0
  425. mindspore/profiler/parser/ascend_cluster_generator.py +116 -0
  426. mindspore/profiler/parser/ascend_communicate_generator.py +314 -0
  427. mindspore/profiler/parser/ascend_flops_generator.py +27 -5
  428. mindspore/profiler/parser/ascend_fpbp_generator.py +8 -2
  429. mindspore/profiler/parser/ascend_hccl_generator.py +27 -279
  430. mindspore/profiler/parser/ascend_msprof_exporter.py +122 -118
  431. mindspore/profiler/parser/ascend_msprof_generator.py +67 -273
  432. mindspore/profiler/parser/ascend_op_generator.py +68 -27
  433. mindspore/profiler/parser/ascend_timeline_generator.py +292 -131
  434. mindspore/profiler/parser/base_timeline_generator.py +17 -3
  435. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +2 -1
  436. mindspore/profiler/parser/framework_parser.py +11 -4
  437. mindspore/profiler/parser/integrator.py +3 -1
  438. mindspore/profiler/parser/memory_usage_parser.py +8 -2
  439. mindspore/profiler/parser/minddata_analyzer.py +8 -2
  440. mindspore/profiler/parser/minddata_parser.py +1 -1
  441. mindspore/profiler/parser/msadvisor_analyzer.py +5 -3
  442. mindspore/profiler/parser/msadvisor_parser.py +10 -4
  443. mindspore/profiler/parser/profiler_info.py +5 -0
  444. mindspore/profiler/profiling.py +373 -171
  445. mindspore/rewrite/__init__.py +2 -13
  446. mindspore/rewrite/api/node.py +122 -36
  447. mindspore/rewrite/api/pattern_engine.py +2 -3
  448. mindspore/rewrite/api/scoped_value.py +16 -15
  449. mindspore/rewrite/api/symbol_tree.py +46 -30
  450. mindspore/rewrite/ast_helpers/__init__.py +3 -6
  451. mindspore/rewrite/ast_helpers/ast_converter.py +143 -0
  452. mindspore/rewrite/ast_helpers/ast_finder.py +48 -0
  453. mindspore/rewrite/ast_helpers/ast_flattener.py +268 -0
  454. mindspore/rewrite/ast_helpers/ast_modifier.py +160 -92
  455. mindspore/rewrite/common/__init__.py +1 -2
  456. mindspore/rewrite/common/config.py +24 -0
  457. mindspore/rewrite/common/{rewrite_elog.py → error_log.py} +39 -39
  458. mindspore/rewrite/{namer.py → common/namer.py} +63 -18
  459. mindspore/rewrite/common/namespace.py +118 -0
  460. mindspore/rewrite/node/__init__.py +5 -5
  461. mindspore/rewrite/node/call_function.py +23 -7
  462. mindspore/rewrite/node/cell_container.py +7 -3
  463. mindspore/rewrite/node/control_flow.py +53 -28
  464. mindspore/rewrite/node/node.py +212 -196
  465. mindspore/rewrite/node/node_manager.py +51 -22
  466. mindspore/rewrite/node/node_topological_manager.py +3 -23
  467. mindspore/rewrite/parsers/__init__.py +12 -0
  468. mindspore/rewrite/parsers/arguments_parser.py +8 -9
  469. mindspore/rewrite/parsers/assign_parser.py +635 -413
  470. mindspore/rewrite/parsers/attribute_parser.py +3 -4
  471. mindspore/rewrite/parsers/class_def_parser.py +107 -144
  472. mindspore/rewrite/parsers/constant_parser.py +5 -5
  473. mindspore/rewrite/parsers/container_parser.py +4 -6
  474. mindspore/rewrite/parsers/expr_parser.py +55 -0
  475. mindspore/rewrite/parsers/for_parser.py +31 -98
  476. mindspore/rewrite/parsers/function_def_parser.py +13 -5
  477. mindspore/rewrite/parsers/if_parser.py +28 -10
  478. mindspore/rewrite/parsers/module_parser.py +8 -182
  479. mindspore/rewrite/parsers/parser.py +1 -5
  480. mindspore/rewrite/parsers/parser_register.py +1 -1
  481. mindspore/rewrite/parsers/return_parser.py +5 -10
  482. mindspore/rewrite/parsers/while_parser.py +59 -0
  483. mindspore/rewrite/sparsify/utils.py +1 -1
  484. mindspore/rewrite/symbol_tree/__init__.py +20 -0
  485. mindspore/rewrite/{symbol_tree.py → symbol_tree/symbol_tree.py} +704 -185
  486. mindspore/rewrite/{symbol_tree_builder.py → symbol_tree/symbol_tree_builder.py} +8 -8
  487. mindspore/rewrite/{symbol_tree_dumper.py → symbol_tree/symbol_tree_dumper.py} +4 -4
  488. mindspore/run_check/_check_version.py +6 -14
  489. mindspore/run_check/run_check.py +1 -1
  490. mindspore/safeguard/rewrite_obfuscation.py +9 -19
  491. mindspore/scipy/__init__.py +2 -1
  492. mindspore/scipy/fft.py +133 -0
  493. mindspore/scipy/linalg.py +140 -55
  494. mindspore/scipy/ops.py +15 -71
  495. mindspore/scipy/ops_grad.py +5 -34
  496. mindspore/scipy/optimize/line_search.py +2 -2
  497. mindspore/scipy/optimize/minimize.py +1 -1
  498. mindspore/train/__init__.py +3 -2
  499. mindspore/train/_utils.py +178 -4
  500. mindspore/train/amp.py +167 -245
  501. mindspore/train/callback/_backup_and_restore.py +4 -4
  502. mindspore/train/callback/_callback.py +4 -4
  503. mindspore/train/callback/_checkpoint.py +47 -21
  504. mindspore/train/callback/_early_stop.py +2 -2
  505. mindspore/train/callback/_landscape.py +15 -10
  506. mindspore/train/callback/_loss_monitor.py +2 -2
  507. mindspore/train/callback/_on_request_exit.py +2 -2
  508. mindspore/train/callback/_reduce_lr_on_plateau.py +2 -2
  509. mindspore/train/callback/_summary_collector.py +13 -14
  510. mindspore/train/callback/_time_monitor.py +2 -2
  511. mindspore/train/data_sink.py +1 -1
  512. mindspore/train/dataset_helper.py +19 -4
  513. mindspore/train/loss_scale_manager.py +2 -2
  514. mindspore/train/metrics/accuracy.py +7 -7
  515. mindspore/train/metrics/confusion_matrix.py +8 -6
  516. mindspore/train/metrics/cosine_similarity.py +6 -4
  517. mindspore/train/metrics/error.py +2 -2
  518. mindspore/train/metrics/metric.py +3 -3
  519. mindspore/train/metrics/perplexity.py +2 -1
  520. mindspore/train/metrics/topk.py +2 -2
  521. mindspore/train/mind_ir_pb2.py +75 -6
  522. mindspore/train/model.py +41 -27
  523. mindspore/train/serialization.py +262 -133
  524. mindspore/train/summary/_writer_pool.py +1 -1
  525. mindspore/train/summary/summary_record.py +56 -34
  526. mindspore/train/train_thor/convert_utils.py +3 -3
  527. mindspore/version.py +1 -1
  528. {mindspore-2.2.11.dist-info → mindspore-2.3.0rc1.dist-info}/METADATA +2 -2
  529. {mindspore-2.2.11.dist-info → mindspore-2.3.0rc1.dist-info}/RECORD +532 -1075
  530. {mindspore-2.2.11.dist-info → mindspore-2.3.0rc1.dist-info}/entry_points.txt +1 -0
  531. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +0 -662
  532. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +0 -377
  533. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +0 -201
  534. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +0 -515
  535. mindspore/config/super_bar_config.json +0 -544
  536. mindspore/gen_ops.py +0 -273
  537. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
  538. mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
  539. mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
  540. mindspore/nn/layer/flash_attention.py +0 -189
  541. mindspore/ops/_op_impl/cpu/tensor_shape.py +0 -42
  542. mindspore/ops/_op_impl/tbe/__init__.py +0 -47
  543. mindspore/ops/_op_impl/tbe/abs.py +0 -38
  544. mindspore/ops/_op_impl/tbe/abs_ds.py +0 -39
  545. mindspore/ops/_op_impl/tbe/abs_grad.py +0 -43
  546. mindspore/ops/_op_impl/tbe/abs_grad_ds.py +0 -44
  547. mindspore/ops/_op_impl/tbe/accumulate_n_v2.py +0 -41
  548. mindspore/ops/_op_impl/tbe/accumulate_n_v2_ds.py +0 -42
  549. mindspore/ops/_op_impl/tbe/acos.py +0 -37
  550. mindspore/ops/_op_impl/tbe/acos_ds.py +0 -38
  551. mindspore/ops/_op_impl/tbe/acos_grad.py +0 -43
  552. mindspore/ops/_op_impl/tbe/acos_grad_ds.py +0 -44
  553. mindspore/ops/_op_impl/tbe/acosh.py +0 -37
  554. mindspore/ops/_op_impl/tbe/acosh_ds.py +0 -38
  555. mindspore/ops/_op_impl/tbe/acosh_grad.py +0 -43
  556. mindspore/ops/_op_impl/tbe/acosh_grad_ds.py +0 -44
  557. mindspore/ops/_op_impl/tbe/act_ulq_clamp_max_grad.py +0 -38
  558. mindspore/ops/_op_impl/tbe/act_ulq_clamp_min_grad.py +0 -38
  559. mindspore/ops/_op_impl/tbe/acts_ulq.py +0 -45
  560. mindspore/ops/_op_impl/tbe/acts_ulq_input_grad.py +0 -38
  561. mindspore/ops/_op_impl/tbe/adam_apply_one.py +0 -50
  562. mindspore/ops/_op_impl/tbe/adam_apply_one_assign.py +0 -53
  563. mindspore/ops/_op_impl/tbe/adam_apply_one_ds.py +0 -51
  564. mindspore/ops/_op_impl/tbe/adam_apply_one_with_decay.py +0 -54
  565. mindspore/ops/_op_impl/tbe/adam_apply_one_with_decay_assign.py +0 -54
  566. mindspore/ops/_op_impl/tbe/adam_apply_one_with_decay_ds.py +0 -55
  567. mindspore/ops/_op_impl/tbe/adaptive_max_pool2d.py +0 -37
  568. mindspore/ops/_op_impl/tbe/add.py +0 -42
  569. mindspore/ops/_op_impl/tbe/add_ds.py +0 -43
  570. mindspore/ops/_op_impl/tbe/add_n.py +0 -39
  571. mindspore/ops/_op_impl/tbe/add_n_ds.py +0 -40
  572. mindspore/ops/_op_impl/tbe/addcdiv.py +0 -41
  573. mindspore/ops/_op_impl/tbe/addcdiv_ds.py +0 -42
  574. mindspore/ops/_op_impl/tbe/addcmul.py +0 -43
  575. mindspore/ops/_op_impl/tbe/addcmul_ds.py +0 -44
  576. mindspore/ops/_op_impl/tbe/apply_ada_max.py +0 -68
  577. mindspore/ops/_op_impl/tbe/apply_ada_max_ds.py +0 -69
  578. mindspore/ops/_op_impl/tbe/apply_adadelta.py +0 -66
  579. mindspore/ops/_op_impl/tbe/apply_adadelta_ds.py +0 -67
  580. mindspore/ops/_op_impl/tbe/apply_adagrad.py +0 -55
  581. mindspore/ops/_op_impl/tbe/apply_adagrad_d_a.py +0 -67
  582. mindspore/ops/_op_impl/tbe/apply_adagrad_ds.py +0 -56
  583. mindspore/ops/_op_impl/tbe/apply_adagrad_v2.py +0 -48
  584. mindspore/ops/_op_impl/tbe/apply_adagrad_v2_ds.py +0 -49
  585. mindspore/ops/_op_impl/tbe/apply_adam.py +0 -79
  586. mindspore/ops/_op_impl/tbe/apply_adam_ds.py +0 -80
  587. mindspore/ops/_op_impl/tbe/apply_adam_with_amsgrad.py +0 -60
  588. mindspore/ops/_op_impl/tbe/apply_adam_with_amsgrad_ds.py +0 -61
  589. mindspore/ops/_op_impl/tbe/apply_add_sign.py +0 -65
  590. mindspore/ops/_op_impl/tbe/apply_add_sign_ds.py +0 -66
  591. mindspore/ops/_op_impl/tbe/apply_centered_rms_prop.py +0 -77
  592. mindspore/ops/_op_impl/tbe/apply_centered_rms_prop_ds.py +0 -78
  593. mindspore/ops/_op_impl/tbe/apply_ftrl.py +0 -67
  594. mindspore/ops/_op_impl/tbe/apply_ftrl_ds.py +0 -68
  595. mindspore/ops/_op_impl/tbe/apply_gradient_descent.py +0 -44
  596. mindspore/ops/_op_impl/tbe/apply_gradient_descent_ds.py +0 -45
  597. mindspore/ops/_op_impl/tbe/apply_keras_momentum.py +0 -49
  598. mindspore/ops/_op_impl/tbe/apply_momentum.py +0 -64
  599. mindspore/ops/_op_impl/tbe/apply_momentum_ds.py +0 -65
  600. mindspore/ops/_op_impl/tbe/apply_power_sign.py +0 -65
  601. mindspore/ops/_op_impl/tbe/apply_power_sign_ds.py +0 -66
  602. mindspore/ops/_op_impl/tbe/apply_proximal_adagrad.py +0 -57
  603. mindspore/ops/_op_impl/tbe/apply_proximal_adagrad_ds.py +0 -58
  604. mindspore/ops/_op_impl/tbe/apply_proximal_gradient_descent.py +0 -54
  605. mindspore/ops/_op_impl/tbe/apply_proximal_gradient_descent_ds.py +0 -55
  606. mindspore/ops/_op_impl/tbe/apply_rms_prop.py +0 -52
  607. mindspore/ops/_op_impl/tbe/approximate_equal.py +0 -39
  608. mindspore/ops/_op_impl/tbe/approximate_equal_ds.py +0 -40
  609. mindspore/ops/_op_impl/tbe/arg_max.py +0 -38
  610. mindspore/ops/_op_impl/tbe/arg_max_with_value.py +0 -38
  611. mindspore/ops/_op_impl/tbe/arg_max_with_value_ds.py +0 -39
  612. mindspore/ops/_op_impl/tbe/arg_min.py +0 -38
  613. mindspore/ops/_op_impl/tbe/arg_min_v2_ds.py +0 -40
  614. mindspore/ops/_op_impl/tbe/arg_min_with_value.py +0 -38
  615. mindspore/ops/_op_impl/tbe/arg_min_with_value_ds.py +0 -39
  616. mindspore/ops/_op_impl/tbe/asin.py +0 -37
  617. mindspore/ops/_op_impl/tbe/asin_ds.py +0 -38
  618. mindspore/ops/_op_impl/tbe/asin_grad.py +0 -43
  619. mindspore/ops/_op_impl/tbe/asin_grad_ds.py +0 -44
  620. mindspore/ops/_op_impl/tbe/asinh.py +0 -37
  621. mindspore/ops/_op_impl/tbe/asinh_ds.py +0 -38
  622. mindspore/ops/_op_impl/tbe/asinh_grad.py +0 -43
  623. mindspore/ops/_op_impl/tbe/asinh_grad_ds.py +0 -44
  624. mindspore/ops/_op_impl/tbe/assign.py +0 -79
  625. mindspore/ops/_op_impl/tbe/assign_add.py +0 -59
  626. mindspore/ops/_op_impl/tbe/assign_add_ds.py +0 -60
  627. mindspore/ops/_op_impl/tbe/assign_ds.py +0 -80
  628. mindspore/ops/_op_impl/tbe/assign_sub.py +0 -55
  629. mindspore/ops/_op_impl/tbe/assign_sub_ds.py +0 -56
  630. mindspore/ops/_op_impl/tbe/atan.py +0 -37
  631. mindspore/ops/_op_impl/tbe/atan2.py +0 -38
  632. mindspore/ops/_op_impl/tbe/atan2_ds.py +0 -39
  633. mindspore/ops/_op_impl/tbe/atan_ds.py +0 -38
  634. mindspore/ops/_op_impl/tbe/atan_grad.py +0 -43
  635. mindspore/ops/_op_impl/tbe/atan_grad_ds.py +0 -44
  636. mindspore/ops/_op_impl/tbe/atanh.py +0 -37
  637. mindspore/ops/_op_impl/tbe/atanh_ds.py +0 -38
  638. mindspore/ops/_op_impl/tbe/avg_pool.py +0 -43
  639. mindspore/ops/_op_impl/tbe/avg_pool_3d.py +0 -44
  640. mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +0 -45
  641. mindspore/ops/_op_impl/tbe/avg_pool_ds.py +0 -44
  642. mindspore/ops/_op_impl/tbe/avg_pool_grad.py +0 -42
  643. mindspore/ops/_op_impl/tbe/avg_pool_grad_vm.py +0 -42
  644. mindspore/ops/_op_impl/tbe/basic_lstm_cell.py +0 -57
  645. mindspore/ops/_op_impl/tbe/basic_lstm_cell_c_state_grad.py +0 -50
  646. mindspore/ops/_op_impl/tbe/basic_lstm_cell_c_state_grad_v2.py +0 -51
  647. mindspore/ops/_op_impl/tbe/basic_lstm_cell_input_grad.py +0 -42
  648. mindspore/ops/_op_impl/tbe/basic_lstm_cell_weight_grad.py +0 -41
  649. mindspore/ops/_op_impl/tbe/batch_matmul.py +0 -42
  650. mindspore/ops/_op_impl/tbe/batch_matmul_ds.py +0 -41
  651. mindspore/ops/_op_impl/tbe/batch_matmul_v2.py +0 -47
  652. mindspore/ops/_op_impl/tbe/batch_to_space.py +0 -38
  653. mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +0 -38
  654. mindspore/ops/_op_impl/tbe/batch_to_space_nd_ds.py +0 -39
  655. mindspore/ops/_op_impl/tbe/batch_to_space_nd_v2.py +0 -41
  656. mindspore/ops/_op_impl/tbe/batchnorm.py +0 -58
  657. mindspore/ops/_op_impl/tbe/batchnorm_grad.py +0 -58
  658. mindspore/ops/_op_impl/tbe/bce_with_logits_loss.py +0 -42
  659. mindspore/ops/_op_impl/tbe/bessel_i0e.py +0 -37
  660. mindspore/ops/_op_impl/tbe/bessel_i0e_ds.py +0 -38
  661. mindspore/ops/_op_impl/tbe/bessel_i1e.py +0 -37
  662. mindspore/ops/_op_impl/tbe/bessel_i1e_ds.py +0 -38
  663. mindspore/ops/_op_impl/tbe/bias_add.py +0 -38
  664. mindspore/ops/_op_impl/tbe/bias_add_ds.py +0 -39
  665. mindspore/ops/_op_impl/tbe/bias_add_grad.py +0 -53
  666. mindspore/ops/_op_impl/tbe/binary_cross_entropy.py +0 -39
  667. mindspore/ops/_op_impl/tbe/binary_cross_entropy_ds.py +0 -40
  668. mindspore/ops/_op_impl/tbe/binary_cross_entropy_grad.py +0 -44
  669. mindspore/ops/_op_impl/tbe/binary_cross_entropy_grad_ds.py +0 -45
  670. mindspore/ops/_op_impl/tbe/bitwise_and.py +0 -39
  671. mindspore/ops/_op_impl/tbe/bitwise_and_ds.py +0 -40
  672. mindspore/ops/_op_impl/tbe/bitwise_or.py +0 -39
  673. mindspore/ops/_op_impl/tbe/bitwise_or_ds.py +0 -40
  674. mindspore/ops/_op_impl/tbe/bitwise_xor.py +0 -39
  675. mindspore/ops/_op_impl/tbe/bitwise_xor_ds.py +0 -40
  676. mindspore/ops/_op_impl/tbe/bn_infer.py +0 -43
  677. mindspore/ops/_op_impl/tbe/bn_infer_ds.py +0 -45
  678. mindspore/ops/_op_impl/tbe/bn_infer_grad.py +0 -41
  679. mindspore/ops/_op_impl/tbe/bn_infer_grad_ds.py +0 -40
  680. mindspore/ops/_op_impl/tbe/bn_inference.py +0 -50
  681. mindspore/ops/_op_impl/tbe/bn_training_reduce.py +0 -38
  682. mindspore/ops/_op_impl/tbe/bn_training_reduce_ds.py +0 -39
  683. mindspore/ops/_op_impl/tbe/bn_training_reduce_grad.py +0 -46
  684. mindspore/ops/_op_impl/tbe/bn_training_reduce_grad_ds.py +0 -47
  685. mindspore/ops/_op_impl/tbe/bn_training_update.py +0 -52
  686. mindspore/ops/_op_impl/tbe/bn_training_update_ds.py +0 -53
  687. mindspore/ops/_op_impl/tbe/bn_training_update_grad.py +0 -44
  688. mindspore/ops/_op_impl/tbe/bn_training_update_grad_ds.py +0 -45
  689. mindspore/ops/_op_impl/tbe/bn_training_update_v2.py +0 -48
  690. mindspore/ops/_op_impl/tbe/bn_training_update_v3.py +0 -51
  691. mindspore/ops/_op_impl/tbe/bounding_box_decode.py +0 -41
  692. mindspore/ops/_op_impl/tbe/bounding_box_decode_ds.py +0 -42
  693. mindspore/ops/_op_impl/tbe/bounding_box_encode.py +0 -38
  694. mindspore/ops/_op_impl/tbe/broadcast_to.py +0 -40
  695. mindspore/ops/_op_impl/tbe/broadcast_to_ds.py +0 -44
  696. mindspore/ops/_op_impl/tbe/cast.py +0 -55
  697. mindspore/ops/_op_impl/tbe/cast_ds.py +0 -58
  698. mindspore/ops/_op_impl/tbe/cdist.py +0 -38
  699. mindspore/ops/_op_impl/tbe/cdist_grad.py +0 -42
  700. mindspore/ops/_op_impl/tbe/ceil.py +0 -37
  701. mindspore/ops/_op_impl/tbe/ceil_ds.py +0 -38
  702. mindspore/ops/_op_impl/tbe/celu.py +0 -39
  703. mindspore/ops/_op_impl/tbe/centralization.py +0 -39
  704. mindspore/ops/_op_impl/tbe/check_valid.py +0 -38
  705. mindspore/ops/_op_impl/tbe/check_valid_ds.py +0 -39
  706. mindspore/ops/_op_impl/tbe/clip_by_norm_no_div_sum.py +0 -41
  707. mindspore/ops/_op_impl/tbe/clip_by_norm_no_div_sum_ds.py +0 -42
  708. mindspore/ops/_op_impl/tbe/clip_by_value.py +0 -41
  709. mindspore/ops/_op_impl/tbe/clip_by_value_ds.py +0 -42
  710. mindspore/ops/_op_impl/tbe/concat.py +0 -40
  711. mindspore/ops/_op_impl/tbe/concat_ds.py +0 -38
  712. mindspore/ops/_op_impl/tbe/confusion_matrix.py +0 -63
  713. mindspore/ops/_op_impl/tbe/confusion_mul_grad.py +0 -40
  714. mindspore/ops/_op_impl/tbe/confusion_softmax_grad.py +0 -41
  715. mindspore/ops/_op_impl/tbe/confusion_transpose_d.py +0 -39
  716. mindspore/ops/_op_impl/tbe/conv2d.py +0 -47
  717. mindspore/ops/_op_impl/tbe/conv2d_backprop_filter.py +0 -42
  718. mindspore/ops/_op_impl/tbe/conv2d_backprop_filter_ds.py +0 -43
  719. mindspore/ops/_op_impl/tbe/conv2d_backprop_input.py +0 -42
  720. mindspore/ops/_op_impl/tbe/conv2d_backprop_input_ds.py +0 -44
  721. mindspore/ops/_op_impl/tbe/conv2d_ds.py +0 -47
  722. mindspore/ops/_op_impl/tbe/conv2d_transpose.py +0 -48
  723. mindspore/ops/_op_impl/tbe/conv3d.py +0 -45
  724. mindspore/ops/_op_impl/tbe/conv3d_backprop_filter.py +0 -42
  725. mindspore/ops/_op_impl/tbe/conv3d_backprop_input.py +0 -42
  726. mindspore/ops/_op_impl/tbe/conv3d_transpose.py +0 -47
  727. mindspore/ops/_op_impl/tbe/conv3d_transpose_ds.py +0 -48
  728. mindspore/ops/_op_impl/tbe/cos.py +0 -37
  729. mindspore/ops/_op_impl/tbe/cos_ds.py +0 -38
  730. mindspore/ops/_op_impl/tbe/cosh.py +0 -37
  731. mindspore/ops/_op_impl/tbe/cosh_ds.py +0 -38
  732. mindspore/ops/_op_impl/tbe/ctc_loss_v2.py +0 -42
  733. mindspore/ops/_op_impl/tbe/ctc_loss_v2_grad.py +0 -44
  734. mindspore/ops/_op_impl/tbe/cum_sum.py +0 -42
  735. mindspore/ops/_op_impl/tbe/cum_sum_ds.py +0 -44
  736. mindspore/ops/_op_impl/tbe/cummin.py +0 -41
  737. mindspore/ops/_op_impl/tbe/cumprod.py +0 -42
  738. mindspore/ops/_op_impl/tbe/data_format_dim_map.py +0 -38
  739. mindspore/ops/_op_impl/tbe/data_format_dim_map_ds.py +0 -40
  740. mindspore/ops/_op_impl/tbe/deformable_offsets.py +0 -45
  741. mindspore/ops/_op_impl/tbe/deformable_offsets_grad.py +0 -48
  742. mindspore/ops/_op_impl/tbe/depth_to_space_ds.py +0 -49
  743. mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +0 -44
  744. mindspore/ops/_op_impl/tbe/depthwise_conv2d_backprop_filter.py +0 -41
  745. mindspore/ops/_op_impl/tbe/depthwise_conv2d_backprop_input.py +0 -41
  746. mindspore/ops/_op_impl/tbe/diag.py +0 -38
  747. mindspore/ops/_op_impl/tbe/diag_part.py +0 -38
  748. mindspore/ops/_op_impl/tbe/dilation.py +0 -40
  749. mindspore/ops/_op_impl/tbe/div.py +0 -41
  750. mindspore/ops/_op_impl/tbe/div_ds.py +0 -42
  751. mindspore/ops/_op_impl/tbe/div_no_nan.py +0 -41
  752. mindspore/ops/_op_impl/tbe/div_no_nan_ds.py +0 -42
  753. mindspore/ops/_op_impl/tbe/dropout_do_mask.py +0 -38
  754. mindspore/ops/_op_impl/tbe/dropout_do_mask_ds.py +0 -39
  755. mindspore/ops/_op_impl/tbe/dropout_do_mask_v3.py +0 -39
  756. mindspore/ops/_op_impl/tbe/dynamic_atomic_addr_clean.py +0 -34
  757. mindspore/ops/_op_impl/tbe/dynamic_gru_v2.py +0 -95
  758. mindspore/ops/_op_impl/tbe/dynamic_rnn.py +0 -82
  759. mindspore/ops/_op_impl/tbe/elu.py +0 -38
  760. mindspore/ops/_op_impl/tbe/elu_ds.py +0 -39
  761. mindspore/ops/_op_impl/tbe/elu_grad.py +0 -43
  762. mindspore/ops/_op_impl/tbe/elu_grad_ds.py +0 -44
  763. mindspore/ops/_op_impl/tbe/equal.py +0 -42
  764. mindspore/ops/_op_impl/tbe/equal_ds.py +0 -42
  765. mindspore/ops/_op_impl/tbe/erf.py +0 -37
  766. mindspore/ops/_op_impl/tbe/erf_ds.py +0 -38
  767. mindspore/ops/_op_impl/tbe/erfc.py +0 -37
  768. mindspore/ops/_op_impl/tbe/erfc_ds.py +0 -38
  769. mindspore/ops/_op_impl/tbe/erfinv.py +0 -36
  770. mindspore/ops/_op_impl/tbe/exp.py +0 -40
  771. mindspore/ops/_op_impl/tbe/exp_ds.py +0 -41
  772. mindspore/ops/_op_impl/tbe/expand_dims.py +0 -38
  773. mindspore/ops/_op_impl/tbe/expm1.py +0 -37
  774. mindspore/ops/_op_impl/tbe/expm1_ds.py +0 -38
  775. mindspore/ops/_op_impl/tbe/extract_image_patches.py +0 -41
  776. mindspore/ops/_op_impl/tbe/extract_volume_patches.py +0 -39
  777. mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars.py +0 -39
  778. mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars_gradient.py +0 -43
  779. mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars_per_channel.py +0 -39
  780. mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars_per_channel_gradient.py +0 -43
  781. mindspore/ops/_op_impl/tbe/fast_gelu.py +0 -37
  782. mindspore/ops/_op_impl/tbe/fast_gelu_ds.py +0 -38
  783. mindspore/ops/_op_impl/tbe/fast_gelu_grad.py +0 -41
  784. mindspore/ops/_op_impl/tbe/fast_gelu_grad_ds.py +0 -42
  785. mindspore/ops/_op_impl/tbe/fill.py +0 -56
  786. mindspore/ops/_op_impl/tbe/fill_ds.py +0 -42
  787. mindspore/ops/_op_impl/tbe/flatten.py +0 -48
  788. mindspore/ops/_op_impl/tbe/floor.py +0 -37
  789. mindspore/ops/_op_impl/tbe/floor_div.py +0 -41
  790. mindspore/ops/_op_impl/tbe/floor_div_ds.py +0 -42
  791. mindspore/ops/_op_impl/tbe/floor_ds.py +0 -38
  792. mindspore/ops/_op_impl/tbe/floor_mod.py +0 -39
  793. mindspore/ops/_op_impl/tbe/floor_mod_ds.py +0 -40
  794. mindspore/ops/_op_impl/tbe/fused_dbn_dw.py +0 -52
  795. mindspore/ops/_op_impl/tbe/fused_mul_add.py +0 -38
  796. mindspore/ops/_op_impl/tbe/fused_mul_add_n.py +0 -48
  797. mindspore/ops/_op_impl/tbe/fused_mul_add_n_l2loss.py +0 -53
  798. mindspore/ops/_op_impl/tbe/fused_mul_apply_momentum.py +0 -57
  799. mindspore/ops/_op_impl/tbe/fused_mul_apply_momentum_extern.py +0 -67
  800. mindspore/ops/_op_impl/tbe/gather_nd.py +0 -52
  801. mindspore/ops/_op_impl/tbe/gather_nd_ds.py +0 -48
  802. mindspore/ops/_op_impl/tbe/gather_v2.py +0 -56
  803. mindspore/ops/_op_impl/tbe/gather_v2_ds.py +0 -68
  804. mindspore/ops/_op_impl/tbe/gelu.py +0 -37
  805. mindspore/ops/_op_impl/tbe/gelu_ds.py +0 -38
  806. mindspore/ops/_op_impl/tbe/gelu_grad.py +0 -42
  807. mindspore/ops/_op_impl/tbe/gelu_grad_ds.py +0 -43
  808. mindspore/ops/_op_impl/tbe/ger.py +0 -43
  809. mindspore/ops/_op_impl/tbe/ger_ds.py +0 -44
  810. mindspore/ops/_op_impl/tbe/greater.py +0 -43
  811. mindspore/ops/_op_impl/tbe/greater_equal.py +0 -41
  812. mindspore/ops/_op_impl/tbe/greater_equal_ds.py +0 -42
  813. mindspore/ops/_op_impl/tbe/gru_v2_hidden_grad.py +0 -51
  814. mindspore/ops/_op_impl/tbe/gru_v2_hidden_grad_cell.py +0 -52
  815. mindspore/ops/_op_impl/tbe/hard_swish.py +0 -37
  816. mindspore/ops/_op_impl/tbe/hard_swish_ds.py +0 -38
  817. mindspore/ops/_op_impl/tbe/hard_swish_grad.py +0 -41
  818. mindspore/ops/_op_impl/tbe/hard_swish_grad_ds.py +0 -42
  819. mindspore/ops/_op_impl/tbe/histogram_fixed_width.py +0 -40
  820. mindspore/ops/_op_impl/tbe/hshrink.py +0 -33
  821. mindspore/ops/_op_impl/tbe/hshrink_grad.py +0 -37
  822. mindspore/ops/_op_impl/tbe/hsigmoid.py +0 -45
  823. mindspore/ops/_op_impl/tbe/hsigmoid_grad.py +0 -39
  824. mindspore/ops/_op_impl/tbe/ifmr.py +0 -47
  825. mindspore/ops/_op_impl/tbe/ifmr_ds.py +0 -48
  826. mindspore/ops/_op_impl/tbe/im2col.py +0 -42
  827. mindspore/ops/_op_impl/tbe/in_top_k.py +0 -37
  828. mindspore/ops/_op_impl/tbe/inplace_add.py +0 -39
  829. mindspore/ops/_op_impl/tbe/inplace_index_add.py +0 -46
  830. mindspore/ops/_op_impl/tbe/inplace_sub.py +0 -39
  831. mindspore/ops/_op_impl/tbe/inplace_update.py +0 -39
  832. mindspore/ops/_op_impl/tbe/inplace_update_ds.py +0 -40
  833. mindspore/ops/_op_impl/tbe/inv.py +0 -38
  834. mindspore/ops/_op_impl/tbe/inv_ds.py +0 -39
  835. mindspore/ops/_op_impl/tbe/inv_grad.py +0 -40
  836. mindspore/ops/_op_impl/tbe/inv_grad_ds.py +0 -41
  837. mindspore/ops/_op_impl/tbe/invert.py +0 -37
  838. mindspore/ops/_op_impl/tbe/invert_ds.py +0 -38
  839. mindspore/ops/_op_impl/tbe/iou.py +0 -38
  840. mindspore/ops/_op_impl/tbe/iou_ds.py +0 -39
  841. mindspore/ops/_op_impl/tbe/is_close.py +0 -40
  842. mindspore/ops/_op_impl/tbe/kl_div_loss.py +0 -38
  843. mindspore/ops/_op_impl/tbe/kl_div_loss_ds.py +0 -39
  844. mindspore/ops/_op_impl/tbe/kl_div_loss_grad.py +0 -40
  845. mindspore/ops/_op_impl/tbe/l2_loss.py +0 -36
  846. mindspore/ops/_op_impl/tbe/l2_loss_ds.py +0 -37
  847. mindspore/ops/_op_impl/tbe/l2_normalize.py +0 -38
  848. mindspore/ops/_op_impl/tbe/l2_normalize_grad.py +0 -40
  849. mindspore/ops/_op_impl/tbe/lamb_apply_optimizer_assign.py +0 -55
  850. mindspore/ops/_op_impl/tbe/lamb_apply_weight_assign.py +0 -42
  851. mindspore/ops/_op_impl/tbe/lamb_next_mv.py +0 -59
  852. mindspore/ops/_op_impl/tbe/lamb_next_mv_with_decay.py +0 -59
  853. mindspore/ops/_op_impl/tbe/lamb_next_right.py +0 -44
  854. mindspore/ops/_op_impl/tbe/lamb_update_with_lr.py +0 -48
  855. mindspore/ops/_op_impl/tbe/lamb_update_with_lr_v2.py +0 -44
  856. mindspore/ops/_op_impl/tbe/lars_update.py +0 -50
  857. mindspore/ops/_op_impl/tbe/lars_update_ds.py +0 -51
  858. mindspore/ops/_op_impl/tbe/layer_norm.py +0 -46
  859. mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop.py +0 -44
  860. mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_ds.py +0 -45
  861. mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_v2.py +0 -40
  862. mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_v2_ds.py +0 -41
  863. mindspore/ops/_op_impl/tbe/layer_norm_ds.py +0 -47
  864. mindspore/ops/_op_impl/tbe/layer_norm_grad.py +0 -48
  865. mindspore/ops/_op_impl/tbe/layer_norm_x_backprop.py +0 -43
  866. mindspore/ops/_op_impl/tbe/layer_norm_x_backprop_ds.py +0 -44
  867. mindspore/ops/_op_impl/tbe/layer_norm_x_backprop_v2.py +0 -45
  868. mindspore/ops/_op_impl/tbe/layer_norm_x_backprop_v2_ds.py +0 -45
  869. mindspore/ops/_op_impl/tbe/lerp.py +0 -38
  870. mindspore/ops/_op_impl/tbe/less.py +0 -41
  871. mindspore/ops/_op_impl/tbe/less_ds.py +0 -42
  872. mindspore/ops/_op_impl/tbe/less_equal.py +0 -41
  873. mindspore/ops/_op_impl/tbe/less_equal_ds.py +0 -42
  874. mindspore/ops/_op_impl/tbe/log.py +0 -40
  875. mindspore/ops/_op_impl/tbe/log1p.py +0 -37
  876. mindspore/ops/_op_impl/tbe/log1p_ds.py +0 -38
  877. mindspore/ops/_op_impl/tbe/log_ds.py +0 -41
  878. mindspore/ops/_op_impl/tbe/logical_and.py +0 -37
  879. mindspore/ops/_op_impl/tbe/logical_and_ds.py +0 -38
  880. mindspore/ops/_op_impl/tbe/logical_not.py +0 -36
  881. mindspore/ops/_op_impl/tbe/logical_not_ds.py +0 -37
  882. mindspore/ops/_op_impl/tbe/logical_or.py +0 -37
  883. mindspore/ops/_op_impl/tbe/logical_or_ds.py +0 -38
  884. mindspore/ops/_op_impl/tbe/logsoftmax.py +0 -37
  885. mindspore/ops/_op_impl/tbe/logsoftmax_ds.py +0 -38
  886. mindspore/ops/_op_impl/tbe/logsoftmax_grad.py +0 -38
  887. mindspore/ops/_op_impl/tbe/logsoftmax_grad_ds.py +0 -39
  888. mindspore/ops/_op_impl/tbe/lp_norm.py +0 -40
  889. mindspore/ops/_op_impl/tbe/lp_norm_ds.py +0 -41
  890. mindspore/ops/_op_impl/tbe/lrn.py +0 -41
  891. mindspore/ops/_op_impl/tbe/lrn_grad.py +0 -42
  892. mindspore/ops/_op_impl/tbe/lstm_input_grad.py +0 -51
  893. mindspore/ops/_op_impl/tbe/masked_fill.py +0 -40
  894. mindspore/ops/_op_impl/tbe/masked_fill_ds.py +0 -41
  895. mindspore/ops/_op_impl/tbe/matmul.py +0 -53
  896. mindspore/ops/_op_impl/tbe/matmul_ds.py +0 -47
  897. mindspore/ops/_op_impl/tbe/matmul_v2.py +0 -50
  898. mindspore/ops/_op_impl/tbe/matrix_diag.py +0 -45
  899. mindspore/ops/_op_impl/tbe/matrix_diag_part.py +0 -45
  900. mindspore/ops/_op_impl/tbe/matrix_set_diag.py +0 -46
  901. mindspore/ops/_op_impl/tbe/max_pool.py +0 -39
  902. mindspore/ops/_op_impl/tbe/max_pool3d.py +0 -44
  903. mindspore/ops/_op_impl/tbe/max_pool3d_grad.py +0 -43
  904. mindspore/ops/_op_impl/tbe/max_pool3d_grad_grad.py +0 -44
  905. mindspore/ops/_op_impl/tbe/max_pool_ds.py +0 -40
  906. mindspore/ops/_op_impl/tbe/max_pool_grad.py +0 -43
  907. mindspore/ops/_op_impl/tbe/max_pool_grad_grad.py +0 -41
  908. mindspore/ops/_op_impl/tbe/max_pool_grad_grad_with_argmax.py +0 -41
  909. mindspore/ops/_op_impl/tbe/max_pool_grad_with_argmax.py +0 -42
  910. mindspore/ops/_op_impl/tbe/max_pool_with_argmax.py +0 -40
  911. mindspore/ops/_op_impl/tbe/maximum.py +0 -39
  912. mindspore/ops/_op_impl/tbe/maximum_ds.py +0 -40
  913. mindspore/ops/_op_impl/tbe/maximum_grad.py +0 -46
  914. mindspore/ops/_op_impl/tbe/maximum_grad_ds.py +0 -47
  915. mindspore/ops/_op_impl/tbe/mem_set.py +0 -38
  916. mindspore/ops/_op_impl/tbe/minimum.py +0 -40
  917. mindspore/ops/_op_impl/tbe/minimum_ds.py +0 -41
  918. mindspore/ops/_op_impl/tbe/minimum_grad.py +0 -46
  919. mindspore/ops/_op_impl/tbe/minimum_grad_ds.py +0 -47
  920. mindspore/ops/_op_impl/tbe/mish.py +0 -37
  921. mindspore/ops/_op_impl/tbe/mod.py +0 -41
  922. mindspore/ops/_op_impl/tbe/mod_ds.py +0 -42
  923. mindspore/ops/_op_impl/tbe/mul.py +0 -37
  924. mindspore/ops/_op_impl/tbe/mul_ds.py +0 -38
  925. mindspore/ops/_op_impl/tbe/mul_no_nan.py +0 -39
  926. mindspore/ops/_op_impl/tbe/mul_no_nan_ds.py +0 -40
  927. mindspore/ops/_op_impl/tbe/multilabel_margin_loss.py +0 -39
  928. mindspore/ops/_op_impl/tbe/neg.py +0 -39
  929. mindspore/ops/_op_impl/tbe/neg_ds.py +0 -40
  930. mindspore/ops/_op_impl/tbe/new_im2col.py +0 -40
  931. mindspore/ops/_op_impl/tbe/nll_loss.py +0 -41
  932. mindspore/ops/_op_impl/tbe/nll_loss_grad.py +0 -44
  933. mindspore/ops/_op_impl/tbe/nms_with_mask.py +0 -39
  934. mindspore/ops/_op_impl/tbe/not_equal.py +0 -41
  935. mindspore/ops/_op_impl/tbe/not_equal_ds.py +0 -42
  936. mindspore/ops/_op_impl/tbe/npu_alloc_float_status.py +0 -34
  937. mindspore/ops/_op_impl/tbe/npu_clear_float_status.py +0 -35
  938. mindspore/ops/_op_impl/tbe/npu_clear_float_status_v2.py +0 -35
  939. mindspore/ops/_op_impl/tbe/npu_get_float_status.py +0 -35
  940. mindspore/ops/_op_impl/tbe/npu_get_float_status_v2.py +0 -35
  941. mindspore/ops/_op_impl/tbe/one_hot.py +0 -48
  942. mindspore/ops/_op_impl/tbe/one_hot_ds.py +0 -45
  943. mindspore/ops/_op_impl/tbe/ones_like.py +0 -40
  944. mindspore/ops/_op_impl/tbe/ones_like_ds.py +0 -41
  945. mindspore/ops/_op_impl/tbe/p_s_r_o_i_pooling.py +0 -40
  946. mindspore/ops/_op_impl/tbe/p_s_r_o_i_pooling_grad.py +0 -40
  947. mindspore/ops/_op_impl/tbe/pack.py +0 -58
  948. mindspore/ops/_op_impl/tbe/pack_ds.py +0 -59
  949. mindspore/ops/_op_impl/tbe/pad_d.py +0 -40
  950. mindspore/ops/_op_impl/tbe/pad_d_ds.py +0 -41
  951. mindspore/ops/_op_impl/tbe/parallel_concat.py +0 -70
  952. mindspore/ops/_op_impl/tbe/parallel_resize_bilinear.py +0 -45
  953. mindspore/ops/_op_impl/tbe/parallel_resize_bilinear_grad.py +0 -44
  954. mindspore/ops/_op_impl/tbe/pdist.py +0 -36
  955. mindspore/ops/_op_impl/tbe/pooling.py +0 -46
  956. mindspore/ops/_op_impl/tbe/population_count.py +0 -38
  957. mindspore/ops/_op_impl/tbe/pow.py +0 -41
  958. mindspore/ops/_op_impl/tbe/pow_ds.py +0 -42
  959. mindspore/ops/_op_impl/tbe/prelu.py +0 -37
  960. mindspore/ops/_op_impl/tbe/prelu_ds.py +0 -38
  961. mindspore/ops/_op_impl/tbe/prelu_grad.py +0 -40
  962. mindspore/ops/_op_impl/tbe/range.py +0 -39
  963. mindspore/ops/_op_impl/tbe/real_div.py +0 -38
  964. mindspore/ops/_op_impl/tbe/real_div_ds.py +0 -39
  965. mindspore/ops/_op_impl/tbe/reciprocal.py +0 -36
  966. mindspore/ops/_op_impl/tbe/reciprocal_ds.py +0 -37
  967. mindspore/ops/_op_impl/tbe/reciprocal_grad.py +0 -38
  968. mindspore/ops/_op_impl/tbe/reciprocal_grad_ds.py +0 -39
  969. mindspore/ops/_op_impl/tbe/reduce_all.py +0 -38
  970. mindspore/ops/_op_impl/tbe/reduce_all_ds.py +0 -39
  971. mindspore/ops/_op_impl/tbe/reduce_any.py +0 -38
  972. mindspore/ops/_op_impl/tbe/reduce_any_ds.py +0 -39
  973. mindspore/ops/_op_impl/tbe/reduce_max.py +0 -43
  974. mindspore/ops/_op_impl/tbe/reduce_max_ds.py +0 -41
  975. mindspore/ops/_op_impl/tbe/reduce_mean.py +0 -40
  976. mindspore/ops/_op_impl/tbe/reduce_mean_ds.py +0 -42
  977. mindspore/ops/_op_impl/tbe/reduce_min.py +0 -41
  978. mindspore/ops/_op_impl/tbe/reduce_min_ds.py +0 -41
  979. mindspore/ops/_op_impl/tbe/reduce_prod.py +0 -42
  980. mindspore/ops/_op_impl/tbe/reduce_prod_ds.py +0 -41
  981. mindspore/ops/_op_impl/tbe/reduce_std.py +0 -44
  982. mindspore/ops/_op_impl/tbe/reduce_sum.py +0 -39
  983. mindspore/ops/_op_impl/tbe/reduce_sum_ds.py +0 -41
  984. mindspore/ops/_op_impl/tbe/relu.py +0 -39
  985. mindspore/ops/_op_impl/tbe/relu6.py +0 -38
  986. mindspore/ops/_op_impl/tbe/relu6_ds.py +0 -39
  987. mindspore/ops/_op_impl/tbe/relu6_grad.py +0 -43
  988. mindspore/ops/_op_impl/tbe/relu6_grad_ds.py +0 -44
  989. mindspore/ops/_op_impl/tbe/relu_ds.py +0 -40
  990. mindspore/ops/_op_impl/tbe/relu_grad.py +0 -41
  991. mindspore/ops/_op_impl/tbe/relu_grad_ds.py +0 -42
  992. mindspore/ops/_op_impl/tbe/relu_grad_v2.py +0 -40
  993. mindspore/ops/_op_impl/tbe/relu_grad_v2_ds.py +0 -41
  994. mindspore/ops/_op_impl/tbe/relu_v2.py +0 -40
  995. mindspore/ops/_op_impl/tbe/relu_v2_ds.py +0 -41
  996. mindspore/ops/_op_impl/tbe/renorm.py +0 -39
  997. mindspore/ops/_op_impl/tbe/resize_bilinear.py +0 -40
  998. mindspore/ops/_op_impl/tbe/resize_bilinear_grad.py +0 -41
  999. mindspore/ops/_op_impl/tbe/resize_bilinear_v2.py +0 -43
  1000. mindspore/ops/_op_impl/tbe/resize_nearest_neighbor.py +0 -40
  1001. mindspore/ops/_op_impl/tbe/resize_nearest_neighbor_ds.py +0 -40
  1002. mindspore/ops/_op_impl/tbe/resize_nearest_neighbor_grad.py +0 -39
  1003. mindspore/ops/_op_impl/tbe/resize_nearest_neighbor_grad_ds.py +0 -42
  1004. mindspore/ops/_op_impl/tbe/reverse_v2_d.py +0 -37
  1005. mindspore/ops/_op_impl/tbe/rint.py +0 -37
  1006. mindspore/ops/_op_impl/tbe/rint_ds.py +0 -38
  1007. mindspore/ops/_op_impl/tbe/roi_align.py +0 -43
  1008. mindspore/ops/_op_impl/tbe/roi_align_ds.py +0 -44
  1009. mindspore/ops/_op_impl/tbe/roi_align_grad.py +0 -43
  1010. mindspore/ops/_op_impl/tbe/roi_align_grad_ds.py +0 -44
  1011. mindspore/ops/_op_impl/tbe/roll.py +0 -42
  1012. mindspore/ops/_op_impl/tbe/round.py +0 -38
  1013. mindspore/ops/_op_impl/tbe/round_ds.py +0 -39
  1014. mindspore/ops/_op_impl/tbe/rsqrt.py +0 -37
  1015. mindspore/ops/_op_impl/tbe/rsqrt_ds.py +0 -38
  1016. mindspore/ops/_op_impl/tbe/rsqrt_grad.py +0 -40
  1017. mindspore/ops/_op_impl/tbe/rsqrt_grad_ds.py +0 -41
  1018. mindspore/ops/_op_impl/tbe/scatter_add.py +0 -44
  1019. mindspore/ops/_op_impl/tbe/scatter_div.py +0 -46
  1020. mindspore/ops/_op_impl/tbe/scatter_max.py +0 -45
  1021. mindspore/ops/_op_impl/tbe/scatter_min.py +0 -45
  1022. mindspore/ops/_op_impl/tbe/scatter_mul.py +0 -44
  1023. mindspore/ops/_op_impl/tbe/scatter_nd.py +0 -41
  1024. mindspore/ops/_op_impl/tbe/scatter_nd_add.py +0 -45
  1025. mindspore/ops/_op_impl/tbe/scatter_nd_d.py +0 -41
  1026. mindspore/ops/_op_impl/tbe/scatter_nd_ds.py +0 -49
  1027. mindspore/ops/_op_impl/tbe/scatter_nd_sub.py +0 -47
  1028. mindspore/ops/_op_impl/tbe/scatter_nd_sub_ds.py +0 -48
  1029. mindspore/ops/_op_impl/tbe/scatter_nd_update.py +0 -47
  1030. mindspore/ops/_op_impl/tbe/scatter_nd_update_ds.py +0 -48
  1031. mindspore/ops/_op_impl/tbe/scatter_non_aliasing_add.py +0 -39
  1032. mindspore/ops/_op_impl/tbe/scatter_non_aliasing_add_ds.py +0 -40
  1033. mindspore/ops/_op_impl/tbe/scatter_sub.py +0 -47
  1034. mindspore/ops/_op_impl/tbe/scatter_sub_ds.py +0 -48
  1035. mindspore/ops/_op_impl/tbe/scatter_update.py +0 -43
  1036. mindspore/ops/_op_impl/tbe/select.py +0 -38
  1037. mindspore/ops/_op_impl/tbe/select_ds.py +0 -39
  1038. mindspore/ops/_op_impl/tbe/selu.py +0 -39
  1039. mindspore/ops/_op_impl/tbe/selu_ds.py +0 -40
  1040. mindspore/ops/_op_impl/tbe/sgd.py +0 -62
  1041. mindspore/ops/_op_impl/tbe/sigmoid.py +0 -37
  1042. mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits.py +0 -41
  1043. mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits_ds.py +0 -42
  1044. mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits_grad.py +0 -42
  1045. mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits_grad_ds.py +0 -43
  1046. mindspore/ops/_op_impl/tbe/sigmoid_ds.py +0 -38
  1047. mindspore/ops/_op_impl/tbe/sigmoid_grad.py +0 -39
  1048. mindspore/ops/_op_impl/tbe/sigmoid_grad_ds.py +0 -40
  1049. mindspore/ops/_op_impl/tbe/sign.py +0 -38
  1050. mindspore/ops/_op_impl/tbe/sign_ds.py +0 -39
  1051. mindspore/ops/_op_impl/tbe/sin.py +0 -37
  1052. mindspore/ops/_op_impl/tbe/sin_ds.py +0 -38
  1053. mindspore/ops/_op_impl/tbe/sinh.py +0 -37
  1054. mindspore/ops/_op_impl/tbe/sinh_ds.py +0 -38
  1055. mindspore/ops/_op_impl/tbe/slice.py +0 -58
  1056. mindspore/ops/_op_impl/tbe/smooth_l1_loss.py +0 -45
  1057. mindspore/ops/_op_impl/tbe/smooth_l1_loss_ds.py +0 -46
  1058. mindspore/ops/_op_impl/tbe/smooth_l1_loss_grad.py +0 -46
  1059. mindspore/ops/_op_impl/tbe/smooth_l1_loss_grad_ds.py +0 -47
  1060. mindspore/ops/_op_impl/tbe/soft_margin_loss.py +0 -38
  1061. mindspore/ops/_op_impl/tbe/soft_margin_loss_grad.py +0 -39
  1062. mindspore/ops/_op_impl/tbe/soft_shrink.py +0 -36
  1063. mindspore/ops/_op_impl/tbe/soft_shrink_grad.py +0 -38
  1064. mindspore/ops/_op_impl/tbe/softmax.py +0 -37
  1065. mindspore/ops/_op_impl/tbe/softmax_cross_entropy_with_logits.py +0 -38
  1066. mindspore/ops/_op_impl/tbe/softmax_cross_entropy_with_logits_ds.py +0 -39
  1067. mindspore/ops/_op_impl/tbe/softmax_ds.py +0 -38
  1068. mindspore/ops/_op_impl/tbe/softmax_grad_ext.py +0 -42
  1069. mindspore/ops/_op_impl/tbe/softmax_v2_with_dropout_do_mask_v3.py +0 -39
  1070. mindspore/ops/_op_impl/tbe/softplus.py +0 -37
  1071. mindspore/ops/_op_impl/tbe/softplus_ds.py +0 -38
  1072. mindspore/ops/_op_impl/tbe/softplus_grad.py +0 -38
  1073. mindspore/ops/_op_impl/tbe/softplus_grad_ds.py +0 -38
  1074. mindspore/ops/_op_impl/tbe/softsign.py +0 -37
  1075. mindspore/ops/_op_impl/tbe/softsign_ds.py +0 -38
  1076. mindspore/ops/_op_impl/tbe/sort.py +0 -38
  1077. mindspore/ops/_op_impl/tbe/sort_ds.py +0 -39
  1078. mindspore/ops/_op_impl/tbe/space_to_batch.py +0 -38
  1079. mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +0 -38
  1080. mindspore/ops/_op_impl/tbe/space_to_depth.py +0 -47
  1081. mindspore/ops/_op_impl/tbe/sparse_apply_adadelta.py +0 -56
  1082. mindspore/ops/_op_impl/tbe/sparse_apply_adagrad.py +0 -45
  1083. mindspore/ops/_op_impl/tbe/sparse_apply_adagrad_ds.py +0 -46
  1084. mindspore/ops/_op_impl/tbe/sparse_apply_adagrad_v2.py +0 -46
  1085. mindspore/ops/_op_impl/tbe/sparse_apply_adagrad_v2_ds.py +0 -47
  1086. mindspore/ops/_op_impl/tbe/sparse_apply_ftrl_d.py +0 -53
  1087. mindspore/ops/_op_impl/tbe/sparse_apply_ftrl_d_ds.py +0 -50
  1088. mindspore/ops/_op_impl/tbe/sparse_apply_ftrl_v2.py +0 -50
  1089. mindspore/ops/_op_impl/tbe/sparse_apply_proximal_adagrad.py +0 -66
  1090. mindspore/ops/_op_impl/tbe/sparse_apply_proximal_adagrad_ds.py +0 -67
  1091. mindspore/ops/_op_impl/tbe/sparse_apply_r_m_s_prop.py +0 -57
  1092. mindspore/ops/_op_impl/tbe/sparse_apply_r_m_s_prop_ds.py +0 -58
  1093. mindspore/ops/_op_impl/tbe/sparse_gather_v2.py +0 -56
  1094. mindspore/ops/_op_impl/tbe/sparse_gather_v2_ds.py +0 -58
  1095. mindspore/ops/_op_impl/tbe/split_d.py +0 -38
  1096. mindspore/ops/_op_impl/tbe/split_d_ds.py +0 -39
  1097. mindspore/ops/_op_impl/tbe/split_v.py +0 -39
  1098. mindspore/ops/_op_impl/tbe/splitv.py +0 -39
  1099. mindspore/ops/_op_impl/tbe/sqrt.py +0 -37
  1100. mindspore/ops/_op_impl/tbe/sqrt_ds.py +0 -38
  1101. mindspore/ops/_op_impl/tbe/sqrt_grad.py +0 -43
  1102. mindspore/ops/_op_impl/tbe/sqrt_grad_ds.py +0 -44
  1103. mindspore/ops/_op_impl/tbe/square.py +0 -38
  1104. mindspore/ops/_op_impl/tbe/square_ds.py +0 -39
  1105. mindspore/ops/_op_impl/tbe/square_sum_all.py +0 -40
  1106. mindspore/ops/_op_impl/tbe/square_sum_all_ds.py +0 -41
  1107. mindspore/ops/_op_impl/tbe/square_sum_v1.py +0 -38
  1108. mindspore/ops/_op_impl/tbe/square_sum_v1_ds.py +0 -39
  1109. mindspore/ops/_op_impl/tbe/square_sum_v2.py +0 -39
  1110. mindspore/ops/_op_impl/tbe/squared_difference.py +0 -39
  1111. mindspore/ops/_op_impl/tbe/squared_difference_ds.py +0 -41
  1112. mindspore/ops/_op_impl/tbe/squeeze.py +0 -37
  1113. mindspore/ops/_op_impl/tbe/strided_read.py +0 -38
  1114. mindspore/ops/_op_impl/tbe/strided_slice_d.py +0 -44
  1115. mindspore/ops/_op_impl/tbe/strided_slice_ds.py +0 -71
  1116. mindspore/ops/_op_impl/tbe/strided_slice_grad_d.py +0 -51
  1117. mindspore/ops/_op_impl/tbe/strided_slice_grad_ds.py +0 -57
  1118. mindspore/ops/_op_impl/tbe/strided_write.py +0 -38
  1119. mindspore/ops/_op_impl/tbe/sub.py +0 -39
  1120. mindspore/ops/_op_impl/tbe/sub_ds.py +0 -40
  1121. mindspore/ops/_op_impl/tbe/tan.py +0 -38
  1122. mindspore/ops/_op_impl/tbe/tan_ds.py +0 -39
  1123. mindspore/ops/_op_impl/tbe/tanh.py +0 -37
  1124. mindspore/ops/_op_impl/tbe/tanh_ds.py +0 -38
  1125. mindspore/ops/_op_impl/tbe/tanh_grad.py +0 -39
  1126. mindspore/ops/_op_impl/tbe/tanh_grad_ds.py +0 -40
  1127. mindspore/ops/_op_impl/tbe/tensor_move.py +0 -49
  1128. mindspore/ops/_op_impl/tbe/tensor_move_ds.py +0 -50
  1129. mindspore/ops/_op_impl/tbe/tensor_scatter_update.py +0 -41
  1130. mindspore/ops/_op_impl/tbe/tile.py +0 -37
  1131. mindspore/ops/_op_impl/tbe/tile_ds.py +0 -42
  1132. mindspore/ops/_op_impl/tbe/top_k.py +0 -42
  1133. mindspore/ops/_op_impl/tbe/top_k_ds.py +0 -43
  1134. mindspore/ops/_op_impl/tbe/trans_data.py +0 -167
  1135. mindspore/ops/_op_impl/tbe/trans_data_ds.py +0 -180
  1136. mindspore/ops/_op_impl/tbe/trans_data_rnn.py +0 -44
  1137. mindspore/ops/_op_impl/tbe/transpose.py +0 -60
  1138. mindspore/ops/_op_impl/tbe/transpose_d.py +0 -47
  1139. mindspore/ops/_op_impl/tbe/transpose_nod.py +0 -60
  1140. mindspore/ops/_op_impl/tbe/trunc.py +0 -39
  1141. mindspore/ops/_op_impl/tbe/truncate_div.py +0 -41
  1142. mindspore/ops/_op_impl/tbe/truncate_div_ds.py +0 -42
  1143. mindspore/ops/_op_impl/tbe/truncate_mod.py +0 -41
  1144. mindspore/ops/_op_impl/tbe/truncate_mod_ds.py +0 -42
  1145. mindspore/ops/_op_impl/tbe/unpack.py +0 -38
  1146. mindspore/ops/_op_impl/tbe/unpack_ds.py +0 -39
  1147. mindspore/ops/_op_impl/tbe/unsorted_segment_max.py +0 -49
  1148. mindspore/ops/_op_impl/tbe/unsorted_segment_max_ds.py +0 -40
  1149. mindspore/ops/_op_impl/tbe/unsorted_segment_min.py +0 -49
  1150. mindspore/ops/_op_impl/tbe/unsorted_segment_min_ds.py +0 -40
  1151. mindspore/ops/_op_impl/tbe/unsorted_segment_prod.py +0 -49
  1152. mindspore/ops/_op_impl/tbe/unsorted_segment_prod_ds.py +0 -38
  1153. mindspore/ops/_op_impl/tbe/unsorted_segment_sum.py +0 -38
  1154. mindspore/ops/_op_impl/tbe/unsorted_segment_sum_ds.py +0 -41
  1155. mindspore/ops/_op_impl/tbe/wts_arq.py +0 -40
  1156. mindspore/ops/_op_impl/tbe/xdivy.py +0 -38
  1157. mindspore/ops/_op_impl/tbe/xdivy_ds.py +0 -39
  1158. mindspore/ops/_op_impl/tbe/xlogy.py +0 -38
  1159. mindspore/ops/_op_impl/tbe/xlogy_ds.py +0 -39
  1160. mindspore/ops/_op_impl/tbe/zeros_like.py +0 -41
  1161. mindspore/ops/_op_impl/tbe/zeros_like_ds.py +0 -42
  1162. mindspore/ops/_tracefunc.py +0 -241
  1163. mindspore/ops/arg_dtype_cast.py +0 -54
  1164. mindspore/rewrite/api/tree_node_helper.py +0 -60
  1165. mindspore/rewrite/ast_creator_register.py +0 -37
  1166. mindspore/rewrite/ast_helpers/ast_creator.py +0 -115
  1167. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +0 -267
  1168. mindspore/rewrite/ast_transformers/remove_return_out_of_if.py +0 -228
  1169. mindspore/rewrite/namespace.py +0 -53
  1170. {mindspore-2.2.11.dist-info → mindspore-2.3.0rc1.dist-info}/WHEEL +0 -0
  1171. {mindspore-2.2.11.dist-info → mindspore-2.3.0rc1.dist-info}/top_level.txt +0 -0
@@ -1,115 +0,0 @@
1
- # Copyright 2022 Huawei Technologies Co., Ltd
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- # ============================================================================
15
- """Create ast node in specific scope."""
16
- import ast
17
- from mindspore.rewrite.ast_creator_register import ast_creator_registry
18
- import mindspore as ms
19
-
20
-
21
- def ast_args_creator(args: list):
22
- """Create an arg list."""
23
- ast_args = list()
24
- for arg in args:
25
- ast_arg = ast_create_arg_value(arg)
26
- ast_args.append(ast_arg)
27
- return ast_args
28
-
29
-
30
- def ast_assign_creator(targets: ast.AST, value: ast.AST):
31
- """Create an ast.Assign node."""
32
- return ast.Assign(targets=targets, value=value, lineno=0, col_offset=0)
33
-
34
-
35
- def ast_attributer_creator(attribute: str):
36
- """Create an ast.Attribute node"""
37
- value, attr = attribute.rsplit(".", 1)
38
- if "." in value:
39
- ast_value = ast_attributer_creator(value)
40
- else:
41
- ast_value = ast_name_creator(value)
42
- return ast.Attribute(value=ast_value, attr=attr, lineno=0, col_offset=0, ctx="Load()")
43
-
44
-
45
- def ast_call_creator(func: ast.AST, args: list, keywords: list):
46
- """Create an ast.Call node"""
47
- return ast.Call(func=func, args=args, keywords=keywords, lineno=0, col_offset=0)
48
-
49
-
50
- def ast_create_arg_value(value):
51
- """Create arg node by type."""
52
- if isinstance(value, (int, float)):
53
- ast_value = ast_num_creator(value)
54
- elif isinstance(value, str):
55
- ast_value = ast_str_creator(value)
56
- elif value in (ms.float16, ms.float32, ms.float64):
57
- ast_value = ast_attributer_creator(".".join(["mindspore", str(value).lower()]))
58
- elif isinstance(value, ms.rewrite.node.Node):
59
- ast_value = ast_str_creator(value.get_targets()[0])
60
- else:
61
- raise TypeError("Unsupported arg type: ", type(value))
62
- return ast_value
63
-
64
-
65
- def ast_index_creator(index: ast.Num):
66
- """Create ast.Index node."""
67
- index = ast_num_creator(index)
68
- return ast.Index(value=index, lineno=0, col_offset=0)
69
-
70
-
71
- def ast_keyword_creator(arg: str, value):
72
- """Create ast.keyword node."""
73
- ast_value = ast_create_arg_value(value)
74
- return ast.keyword(arg=arg, value=ast_value)
75
-
76
-
77
- def ast_kwargs_creator(kwargs: dict):
78
- """Create ast.keyword node list."""
79
- keywords = list()
80
- for k, v in kwargs.items():
81
- kw = ast_keyword_creator(k, v)
82
- keywords.append(kw)
83
- return keywords
84
-
85
-
86
- def ast_name_creator(id_: str):
87
- """Create an ast.Name node."""
88
- return ast.Name(id=id_, ctx=ast.Store, lineno=0, col_offset=0)
89
-
90
-
91
- def ast_num_creator(num: int):
92
- """Create an ast.Num node."""
93
- return ast.Num(n=num, lineno=0, col_offset=0)
94
-
95
-
96
- def ast_str_creator(s: str):
97
- """Create an ast.str node."""
98
- return ast.Str(s=s, lineno=0, col_offset=0)
99
-
100
-
101
- def ast_subscript_creator(value: ast.AST, index: int):
102
- """Create an ast.Subscript node."""
103
- s = ast_index_creator(index)
104
- return ast.Subscript(value=value, slice=s, lineno=0, col_offset=0, ctx=ast.Load)
105
-
106
-
107
- ast_creator_registry.register("Args", ast_args_creator)
108
- ast_creator_registry.register("Assign", ast_assign_creator)
109
- ast_creator_registry.register("Attribute", ast_attributer_creator)
110
- ast_creator_registry.register("Call", ast_call_creator)
111
- ast_creator_registry.register("Index", ast_index_creator)
112
- ast_creator_registry.register("KwArgs", ast_kwargs_creator)
113
- ast_creator_registry.register("Name", ast_name_creator)
114
- ast_creator_registry.register("Num", ast_num_creator)
115
- ast_creator_registry.register("Subscript", ast_subscript_creator)
@@ -1,267 +0,0 @@
1
- # Copyright 2022 Huawei Technologies Co., Ltd
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- # ============================================================================
15
- """Ast optimizer for flatten recursive call."""
16
-
17
- import sys
18
- from typing import Any, Tuple, List
19
- import keyword
20
- import ast
21
-
22
- from mindspore import log as logger
23
- from ..common import error_str
24
-
25
- if sys.version_info >= (3, 9):
26
- import ast as astunparse # pylint: disable=reimported, ungrouped-imports
27
- else:
28
- import astunparse
29
-
30
- FLATTEN_BLACK_LIST = ["set_vertex_attr",]
31
-
32
- class FlattenRecursiveStmt(ast.NodeTransformer):
33
- """Ast optimizer for flatten recursive call."""
34
-
35
- def __init__(self):
36
- """
37
- Constructor of FlattenRecursiveStmt.
38
-
39
- Returns:
40
- An instance of ast optimizer for flatten recursive call.
41
- """
42
- self._flatten_table: dict = {
43
- ast.Return: ["value"],
44
- ast.Call: ["args"],
45
- ast.BinOp: ["left", "right"],
46
- ast.BoolOp: ["values"],
47
- ast.UnaryOp: ["operand"],
48
- ast.Compare: ["left", "comparators"],
49
- ast.If: ["test"]
50
- }
51
- self._transform_functions = []
52
- self._transform_if = False
53
- self._symbol_tree = None # Used to get unique name
54
-
55
- @staticmethod
56
- def _check_flatten_black_list(node: ast.AST):
57
- """Check whether node in flatten black list"""
58
- func_name = ""
59
- # Get func name of node
60
- if isinstance(node, ast.Call):
61
- if isinstance(node.func, ast.Name):
62
- func_name = node.func.id
63
- elif isinstance(node.func, ast.Attribute):
64
- func_name = node.func.attr
65
- # Check func name of node
66
- if func_name and func_name in FLATTEN_BLACK_LIST:
67
- return True
68
- return False
69
-
70
- def _generate_target_name(self, node: ast.AST, target_names):
71
- """Generate unique target name."""
72
- if isinstance(node, ast.Call):
73
- func = node.func
74
- if isinstance(func, ast.Name):
75
- target_name = func.id + "_var"
76
- elif isinstance(func, ast.Attribute):
77
- target_name = func.attr + "_var"
78
- else:
79
- logger.info("unhandled type of func of ast.Call while generating new target name: %s ", type(func))
80
- target_name = "function"
81
- elif isinstance(node, ast.Return):
82
- target_name = "return_value"
83
- elif isinstance(node, (ast.BinOp, ast.BoolOp, ast.UnaryOp)):
84
- target_name = type(node.op).__name__.lower() + "_var"
85
- elif isinstance(node, ast.Tuple):
86
- target_name = type(node).__name__.lower() + "_var"
87
- elif isinstance(node, ast.Name):
88
- target_name = node.id
89
- elif isinstance(node, ast.Attribute) and isinstance(node.value, ast.Name):
90
- target_name = f"{node.value.id}_{node.attr}"
91
- else:
92
- logger.info("unhandled type of node while generating new target name: %s ", type(node))
93
- target_name = type(node).__name__.lower() + "_var"
94
- # avoid python keyword
95
- if keyword.iskeyword(target_name):
96
- target_name = target_name + "_var"
97
- suffix = 0
98
- result = target_name
99
- while result in target_names:
100
- suffix += 1
101
- result = f"{target_name}_{suffix}"
102
- if self._symbol_tree:
103
- result = self._symbol_tree.unique_name(result)
104
- target_names.append(result)
105
- return result
106
-
107
- def _create_new_assign_node(self, node: ast.AST, target_names) -> Tuple[str, ast.AST]:
108
- """Create new assign node to be inserted into ast.FunctionDef."""
109
- if isinstance(node, (ast.Name, ast.Constant, ast.Num, ast.Str, ast.NameConstant, ast.Bytes, ast.Ellipsis)):
110
- return "", node
111
- new_target_name = self._generate_target_name(node, target_names)
112
- return new_target_name, ast.Assign(targets=[ast.Name(id=new_target_name, ctx=ast.Store())], value=node)
113
-
114
- def _flatten_list(self, node_list, target_names):
115
- """Flatten a list of node."""
116
- results = list()
117
- new_list = list()
118
- for node in node_list:
119
- if isinstance(node, ast.Call):
120
- new_target, new_node = self._create_new_assign_node(node, target_names)
121
- results.append(new_node)
122
- new_list.append(ast.Name(id=new_target, ctx=ast.Load()))
123
- else:
124
- new_list.append(node)
125
- return results, new_list
126
-
127
- def _flatten_statement(self, node: ast.AST, target_names) -> [ast.AST]:
128
- """Flatten recursive statement according to different node type."""
129
- if FlattenRecursiveStmt._check_flatten_black_list(node):
130
- return []
131
- flatten_config = self._flatten_table.get(type(node))
132
- if flatten_config is None:
133
- return []
134
- results = []
135
- for todo_name in flatten_config:
136
- todos = getattr(node, todo_name)
137
- if isinstance(todos, list):
138
- new_list = []
139
- for todo in todos:
140
- # Starred expression(e.g. *args) cannot be flatten.
141
- if isinstance(todo, ast.Starred):
142
- new_list.append(todo)
143
- continue
144
- new_target_name, new_node = self._create_new_assign_node(todo, target_names)
145
- if id(new_node) == id(todo):
146
- new_list.append(todo)
147
- else:
148
- new_list.append(ast.Name(id=new_target_name, ctx=ast.Load()))
149
- results.append(new_node)
150
- if isinstance(todo, (ast.Tuple, tuple)):
151
- _res, _new_list = self._flatten_list(new_node.value.elts, [new_target_name])
152
- new_node.value.elts = _new_list
153
- results.extend(_res)
154
- setattr(node, todo_name, new_list)
155
- elif isinstance(todos, dict):
156
- new_dict = []
157
- for key, value in todos:
158
- new_target_name, new_node = self._create_new_assign_node(value, target_names)
159
- if id(new_node) == id(value):
160
- new_dict[key] = value
161
- else:
162
- new_dict[key] = ast.Name(id=new_target_name, ctx=ast.Load())
163
- results.append(new_node)
164
- setattr(node, todo_name, new_dict)
165
- else:
166
- new_target_name, new_node = self._create_new_assign_node(todos, target_names)
167
- if id(new_node) != id(todos):
168
- setattr(node, todo_name, ast.Name(id=new_target_name, ctx=ast.Load()))
169
- results.append(new_node)
170
- return results
171
-
172
- def _save_target_names(self, target_names, ast_body: List[ast.AST]):
173
- """Saving target names in ast_body before getting unique names."""
174
- for child in ast_body:
175
- if isinstance(child, (ast.Assign, ast.Expr)):
176
- child_value = child.value
177
- else:
178
- child_value = child
179
- if not self._flatten_table.get(type(child_value)):
180
- continue
181
-
182
- if not isinstance(child, ast.Assign):
183
- continue
184
- targets = child.targets
185
- for target in targets:
186
- if not isinstance(target, (ast.Name, ast.Tuple, ast.List)):
187
- raise RuntimeError(
188
- error_str(f"currently only support ast.Name targets, but got ast type "
189
- f"'{type(target).__name__}'", child_node=target, father_node=child))
190
- if isinstance(target, ast.Name):
191
- target_name = target.id
192
- if target_name not in target_names:
193
- target_names.append(target_name)
194
- elif isinstance(target, (ast.Tuple, ast.List)):
195
- for elt in target.elts:
196
- if not isinstance(elt, ast.Name):
197
- raise RuntimeError(
198
- error_str(f"currently only support ast.Name in ast.Tuple, "
199
- f"but got ast type '{type(elt).__name__}'", child_node=elt,
200
- father_node=child))
201
- target_name = elt.id
202
- if target_name not in target_names:
203
- target_names.append(target_name)
204
-
205
- def _visit_ast_bodies(self, ast_body: List[ast.AST]):
206
- """Traverse nodes in ast_body and flatten nodes recursive."""
207
- target_names = []
208
- self._save_target_names(target_names, ast_body)
209
- index = len(ast_body) - 1
210
- while index >= 0:
211
- child = ast_body[index]
212
- if isinstance(child, ast.Assign):
213
- stmt = child.value
214
- elif isinstance(child, ast.If):
215
- if isinstance(child.body[0], ast.Return) and not isinstance(child.test, ast.UnaryOp):
216
- if not isinstance(child.body[0].value, (ast.Name, ast.Constant)):
217
- return_val_ast = child.body[0].value
218
- return_name = self._generate_target_name(return_val_ast, target_names)
219
- new_assign_code = f"{return_name} = {astunparse.unparse(return_val_ast)}"
220
- new_assign_ast = ast.parse(new_assign_code).body[0]
221
- new_return_ast = ast.parse(f"return {return_name}").body[0]
222
- child.body = [new_assign_ast, new_return_ast]
223
- stmt = child
224
- elif isinstance(child, ast.Expr):
225
- stmt = child.value
226
- else:
227
- stmt = child
228
- results = self._flatten_statement(stmt, target_names)
229
- if results:
230
- for result in reversed(results):
231
- ast_body.insert(index, result)
232
- index += 1
233
- index -= 1
234
-
235
- def visit_FunctionDef(self, node: ast.FunctionDef) -> Any: # pylint: disable=invalid-name
236
- """Traverse nodes in _transform_functions and flatten recursive nodes."""
237
- if node.name not in self._transform_functions:
238
- return node
239
- self._visit_ast_bodies(node.body)
240
- return node
241
-
242
- def visit_If(self, node: ast.If) -> Any: # pylint: disable=invalid-name
243
- """Traverse nodes in if node and flatten recursive nodes."""
244
- if not self._transform_if:
245
- return node
246
- self._visit_ast_bodies(node.body)
247
- if node.orelse:
248
- self._visit_ast_bodies(node.orelse)
249
- return node
250
-
251
- def transform(self, ast_root, transform_functions=None, stree=None):
252
- """Interface of FlattenRecursiveStmt."""
253
- self._transform_functions = transform_functions if transform_functions else ["construct"]
254
- self._transform_if = False
255
- self._symbol_tree = stree
256
- ast_root = self.visit(ast_root)
257
- ast_root = ast.fix_missing_locations(ast_root)
258
- return ast_root
259
-
260
- def transform_if(self, ast_if, stree=None):
261
- """Interface of FlattenRecursiveStmt."""
262
- self._transform_functions = []
263
- self._transform_if = True
264
- self._symbol_tree = stree
265
- ast_if = self.visit(ast_if)
266
- ast_if = ast.fix_missing_locations(ast_if)
267
- return ast_if
@@ -1,228 +0,0 @@
1
- # Copyright 2022 Huawei Technologies Co., Ltd
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- # ============================================================================
15
- """Fold if return."""
16
-
17
- import ast
18
- import copy
19
- from typing import Any, Union
20
- from enum import Enum
21
-
22
- from ..common import error_str
23
-
24
-
25
- class ReturnType(Enum):
26
- """
27
- ValueType represents type of nodes.
28
-
29
- - A `NotReturn` represents the node is not a return node.
30
- - A `IfNotAllReturn` represents the node is an ast.If node and not all branches of it end with return.
31
- - A `Return` represents the node is a return node or an ast.If node of which all branches of it end with return.
32
- """
33
- NotReturn = 0
34
- IfNotAllReturn = 1
35
- Return = 2
36
-
37
-
38
- class RemoveReturnOutOfIf(ast.NodeTransformer):
39
- """
40
- Ast optimizer for removing all returns out of if control flow.
41
-
42
- Example one:
43
- def func(x):
44
- if x == 1:
45
- return x - 1
46
- x += 1
47
- return x
48
-
49
- will be optimized to
50
- def func(x):
51
- if x == 1:
52
- output_0 = x - 1
53
- else:
54
- x += 1
55
- output_0 = x
56
- return output_0
57
-
58
- Example two:
59
- def func(x):
60
- if x == 1:
61
- x = 0
62
- elif x == 2:
63
- x = 4
64
- else:
65
- return x
66
- x += 1
67
- return x + 1
68
-
69
- will be optimized to
70
- def func(x):
71
- if x == 1:
72
- x = 0
73
- x += 1
74
- output_1 = x + 1
75
- else:
76
- if x == 2:
77
- x = 4
78
- x += 1
79
- output_0 = x + 1
80
- else:
81
- output_0 = x
82
- output_1 = output_0
83
- return output_1
84
- """
85
-
86
- @staticmethod
87
- def _last_node_is_return(node: Union[ast.Return, ast.If]) -> ReturnType:
88
- """
89
- Judge whether input node represents a return node.
90
- Return a numeric value according to different cases:
91
- 0: Input node is not an ast.Return or input node is an ast.If of which all branches not end with ast.Return;
92
- 1: Input node is an ast.If and not all branches end with ast.Return;
93
- 2: Input node is an ast.Return or input node is an ast.If of which all branches end with ast.Return.
94
- """
95
- if not isinstance(node, ast.Return) and not isinstance(node, ast.If):
96
- return ReturnType.NotReturn
97
- if isinstance(node, ast.Return): # last node is ast.Return
98
- return ReturnType.Return
99
- # all branches of ast.If not end with ast.Return
100
- if node.body and RemoveReturnOutOfIf._last_node_is_return(node.body[-1]) == ReturnType.NotReturn \
101
- and (not node.orelse or RemoveReturnOutOfIf._last_node_is_return(node.orelse[-1]) ==
102
- ReturnType.NotReturn):
103
- return ReturnType.NotReturn
104
- # all branches of ast.If end with ast.Return
105
- if node.body and RemoveReturnOutOfIf._last_node_is_return(node.body[-1]) == ReturnType.Return \
106
- and node.orelse and RemoveReturnOutOfIf._last_node_is_return(node.orelse[-1]) == ReturnType.Return:
107
- return ReturnType.Return
108
- # not all branches of ast.If end with ast.Return
109
- return ReturnType.IfNotAllReturn
110
-
111
- @staticmethod
112
- def _fold_return(father_node: Union[ast.FunctionDef, ast.If], if_node: ast.If, if_index: int, attr: str):
113
- """
114
- Fold following nodes into if node when not all branches of ast.If end with ast.Return.
115
-
116
- Args:
117
- father_node (Union[ast.FunctionDef, ast.If]): Father node.
118
- if_node (ast.If): A if node.
119
- if_index (int): Index of the if node in body or or-else of father node.
120
- attr (str): Attribute of father node, can be 'body' or 'orelse'.
121
-
122
- Raises:
123
- RuntimeError: Father node has not input attr.
124
- """
125
- if not hasattr(father_node, attr):
126
- raise RuntimeError(error_str(f"Father node has not input attr '{attr}'", father_node=father_node))
127
- father_node_attr = getattr(father_node, attr)
128
- if RemoveReturnOutOfIf._last_node_is_return(if_node) == ReturnType.IfNotAllReturn:
129
- # nodes should be copied to all branches which not end with return
130
- if if_node.body and RemoveReturnOutOfIf._last_node_is_return(if_node.body[-1]) != ReturnType.Return:
131
- for index in range(if_index + 1, len(father_node_attr)):
132
- node = copy.deepcopy(father_node_attr[index])
133
- if_node.body.append(node)
134
- if not if_node.orelse or (if_node.orelse and RemoveReturnOutOfIf._last_node_is_return(if_node.orelse[-1])
135
- != ReturnType.Return):
136
- for index in range(if_index + 1, len(father_node_attr)):
137
- node = copy.deepcopy(father_node_attr[index])
138
- if_node.orelse.append(node)
139
- # delete original nodes
140
- remove_num = len(father_node_attr) - if_index - 1
141
- for _ in range(remove_num):
142
- father_node_attr.pop()
143
-
144
- @staticmethod
145
- def _fold(father_node: Union[ast.FunctionDef, ast.If], attr: str):
146
- """Fold nodes. Iterate into body and orelse of if node."""
147
- if not hasattr(father_node, attr) or not getattr(father_node, attr):
148
- return
149
-
150
- if isinstance(getattr(father_node, attr)[-1], ast.If):
151
- RemoveReturnOutOfIf._fold(getattr(father_node, attr)[-1], 'body') # if.body
152
- RemoveReturnOutOfIf._fold(getattr(father_node, attr)[-1], 'orelse') # if.orelse
153
-
154
- cur_index = len(getattr(father_node, attr)) - 2 # no following nodes to fold when if node is the last one
155
- while cur_index >= 0:
156
- child = getattr(father_node, attr)[cur_index]
157
- if isinstance(child, ast.If):
158
- RemoveReturnOutOfIf._fold_return(father_node, child, cur_index, attr)
159
- RemoveReturnOutOfIf._fold(child, 'body') # if.body
160
- RemoveReturnOutOfIf._fold(child, 'orelse') # if.orelse
161
- cur_index -= 1
162
-
163
- @staticmethod
164
- def _get_output_names(output_names: [str]):
165
- """Generate unique output names."""
166
- name: str = 'output_{}'.format(len(output_names))
167
- output_names.append(name)
168
- return name
169
-
170
- @staticmethod
171
- def _move_out_return(output_names: [str], father_node: Union[ast.FunctionDef, ast.If], attr: str):
172
- """
173
- Move all return node out of if nodes.
174
- Replace all original return nodes in ast.If with ast.Assign nodes which represent 'output = return value'.
175
- And add new ast.Return node to the end of father node.
176
-
177
- Args:
178
- output_names ([str]): All unique output names.
179
- father_node (Union[ast.FunctionDef, ast.If]): Father node.
180
- attr (str): Attribute of father nodes, can be 'body' or 'orelse'.
181
-
182
- Raises:
183
- RuntimeError: After iterative processing body and orelse of if nodes not all end with ast.Return.
184
- """
185
- if not hasattr(father_node, attr) or not getattr(father_node, attr):
186
- return
187
-
188
- last_node = getattr(father_node, attr)[-1]
189
- if isinstance(last_node, ast.If) and RemoveReturnOutOfIf._last_node_is_return(last_node) == ReturnType.Return:
190
- # the body or orelse of last if node should be ast.Return or ast.If
191
- if isinstance(last_node.body[-1], ast.If):
192
- RemoveReturnOutOfIf._move_out_return(output_names, last_node, 'body')
193
- if isinstance(last_node.orelse[-1], ast.If):
194
- RemoveReturnOutOfIf._move_out_return(output_names, last_node, 'orelse')
195
-
196
- # assert body and or-else all end with return
197
- if not isinstance(last_node.body[-1], ast.Return) or not isinstance(last_node.orelse[-1], ast.Return):
198
- raise RuntimeError(error_str("Body and orelse of if nodes not all end with ast.Return.",
199
- father_node=last_node))
200
- output_name = RemoveReturnOutOfIf._get_output_names(output_names)
201
- # replace body return
202
- body_new_last_node = ast.Assign(
203
- targets=[ast.Name(id=output_name, ctx=ast.Store())], value=last_node.body[-1].value)
204
- last_node.body.pop()
205
- last_node.body.append(body_new_last_node)
206
- # replace else return
207
- else_new_last_node = ast.Assign(
208
- targets=[ast.Name(id=output_name, ctx=ast.Store())], value=last_node.orelse[-1].value)
209
- last_node.orelse.pop()
210
- last_node.orelse.append(else_new_last_node)
211
- # add new return node
212
- new_return_node = ast.Return(value=ast.Name(id=output_name, cts=ast.Store()))
213
- getattr(father_node, attr).append(new_return_node)
214
-
215
- def visit_FunctionDef(self, node: ast.FunctionDef) -> Any:
216
- """Iterate construct node and fold following nodes into if node when condition is met."""
217
- if node.name != "construct":
218
- return node
219
- RemoveReturnOutOfIf._fold(node, 'body')
220
- output_names = []
221
- RemoveReturnOutOfIf._move_out_return(output_names, node, 'body')
222
- return node
223
-
224
- def transform(self, ast_root):
225
- """Transform."""
226
- ast_root = self.visit(ast_root)
227
- ast_root = ast.fix_missing_locations(ast_root)
228
- return ast_root
@@ -1,53 +0,0 @@
1
- # Copyright 2022 Huawei Technologies Co., Ltd
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- # ============================================================================
15
- """Define the namespace of MindSpore op definition."""
16
- from .._extends.parse.namespace import CellNamespace
17
-
18
-
19
- _ms_common_ns = CellNamespace('mindspore.common')
20
- _ms_nn_ns = CellNamespace('mindspore.nn')
21
- _ms_ops_ns = CellNamespace('mindspore.ops.operations')
22
- _ms_functional_ns = CellNamespace('mindspore.ops.functional')
23
-
24
- # Elements in _subtree_black_list will not be converted to symbol tree.
25
- # Only str and types are stored in _subtree_black_list.
26
- _subtree_black_list = ["QuantizeWrapperCell",]
27
-
28
- def is_subtree(cls_inst):
29
- """Determine whether 'cls_inst' is a subtree."""
30
- cls_name = type(cls_inst).__name__
31
- black_list_types = tuple([elem for elem in _subtree_black_list if not isinstance(elem, str)])
32
- if cls_name in _subtree_black_list or isinstance(cls_inst, black_list_types):
33
- return False
34
- if cls_name in _ms_common_ns and isinstance(cls_inst, _ms_common_ns[cls_name]):
35
- return False
36
- if cls_name in _ms_nn_ns and isinstance(cls_inst, _ms_nn_ns[cls_name]):
37
- return False
38
- if cls_name in _ms_ops_ns and isinstance(cls_inst, _ms_ops_ns[cls_name]):
39
- return False
40
-
41
- return True
42
-
43
-
44
- def is_functional(func_name):
45
- """Determine whether 'cls_name' is a functional."""
46
- return func_name in _ms_functional_ns
47
-
48
-
49
- def get_functional(func_name):
50
- """Get the function corresponding to the func_name."""
51
- if func_name in _ms_functional_ns:
52
- return _ms_functional_ns[func_name]
53
- return None