mindspore 2.1.0__cp38-none-any.whl → 2.2.0__cp38-none-any.whl

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

Potentially problematic release.


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

Files changed (539) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +4 -1
  3. mindspore/_akg/akg/build_module.py +5 -6
  4. mindspore/_akg/akg/composite/build_module.py +49 -16
  5. mindspore/_akg/akg/composite/split_stitch.py +10 -11
  6. mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
  7. mindspore/_akg/akg/tvm/api.py +4 -3
  8. mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
  9. mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
  10. mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
  11. mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
  12. mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
  13. mindspore/_akg/akg/tvm/build_module.py +16 -1
  14. mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
  15. mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
  16. mindspore/_akg/akg/tvm/ir_builder.py +1 -1
  17. mindspore/_akg/akg/tvm/module.py +1 -2
  18. mindspore/_akg/akg/tvm/stmt.py +2 -2
  19. mindspore/_akg/akg/utils/composite_op_helper.py +9 -10
  20. mindspore/_akg/akg/utils/kernel_exec.py +58 -260
  21. mindspore/_akg/akg/utils/result_analysis.py +4 -24
  22. mindspore/_akg/akg/utils/tbe_codegen_utils.py +198 -0
  23. mindspore/_c_dataengine.cpython-38-aarch64-linux-gnu.so +0 -0
  24. mindspore/_c_expression.cpython-38-aarch64-linux-gnu.so +0 -0
  25. mindspore/_c_mindrecord.cpython-38-aarch64-linux-gnu.so +0 -0
  26. mindspore/_check_jit_forbidden_api.py +3 -1
  27. mindspore/_checkparam.py +26 -32
  28. mindspore/_extends/graph_kernel/__init__.py +0 -1
  29. mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
  30. mindspore/_extends/graph_kernel/splitter.py +1 -9
  31. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +122 -15
  32. mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +2 -2
  33. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
  34. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +2 -2
  35. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +4 -4
  36. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
  37. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
  38. mindspore/_extends/parse/__init__.py +12 -15
  39. mindspore/_extends/parse/namespace.py +7 -33
  40. mindspore/_extends/parse/parser.py +61 -71
  41. mindspore/_extends/parse/resources.py +1 -1
  42. mindspore/_extends/parse/standard_method.py +72 -95
  43. mindspore/_extends/parse/trope.py +1 -1
  44. mindspore/_extends/remote/kernel_build_server.py +24 -7
  45. mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
  46. mindspore/_install_custom.py +43 -0
  47. mindspore/_mindspore_offline_debug.cpython-38-aarch64-linux-gnu.so +0 -0
  48. mindspore/amp.py +47 -11
  49. mindspore/bin/cache_admin +0 -0
  50. mindspore/bin/cache_server +0 -0
  51. mindspore/boost/boost.py +1 -8
  52. mindspore/boost/boost_cell_wrapper.py +3 -2
  53. mindspore/boost/grad_accumulation.py +1 -1
  54. mindspore/boost/group_loss_scale_manager.py +8 -7
  55. mindspore/common/__init__.py +5 -3
  56. mindspore/common/_jit_fallback_utils.py +6 -0
  57. mindspore/common/_register_for_adapter.py +2 -0
  58. mindspore/common/_register_for_tensor.py +2 -2
  59. mindspore/common/_stub_tensor.py +13 -0
  60. mindspore/common/_utils.py +13 -0
  61. mindspore/common/api.py +173 -258
  62. mindspore/common/auto_dynamic_shape.py +498 -0
  63. mindspore/common/dtype.py +18 -11
  64. mindspore/common/dump.py +6 -4
  65. mindspore/common/initializer.py +14 -14
  66. mindspore/common/jit_config.py +33 -15
  67. mindspore/common/lazy_inline.py +126 -7
  68. mindspore/common/mindir_util.py +101 -0
  69. mindspore/common/parameter.py +51 -41
  70. mindspore/common/seed.py +4 -4
  71. mindspore/common/sparse_tensor.py +13 -14
  72. mindspore/common/tensor.py +240 -145
  73. mindspore/communication/__init__.py +7 -4
  74. mindspore/communication/_comm_helper.py +83 -4
  75. mindspore/communication/management.py +152 -84
  76. mindspore/config/op_info.config +13 -2
  77. mindspore/config/super_bar_config.json +4 -2
  78. mindspore/context.py +143 -59
  79. mindspore/dataset/__init__.py +5 -5
  80. mindspore/dataset/audio/__init__.py +2 -2
  81. mindspore/dataset/audio/transforms.py +52 -52
  82. mindspore/dataset/callback/ds_callback.py +16 -2
  83. mindspore/dataset/core/config.py +68 -51
  84. mindspore/dataset/engine/cache_client.py +28 -5
  85. mindspore/dataset/engine/datasets.py +250 -112
  86. mindspore/dataset/engine/datasets_audio.py +43 -211
  87. mindspore/dataset/engine/datasets_standard_format.py +11 -35
  88. mindspore/dataset/engine/datasets_text.py +43 -67
  89. mindspore/dataset/engine/datasets_user_defined.py +86 -100
  90. mindspore/dataset/engine/datasets_vision.py +219 -1029
  91. mindspore/dataset/engine/iterators.py +11 -4
  92. mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +4 -0
  93. mindspore/dataset/engine/obs/util.py +3 -0
  94. mindspore/dataset/engine/samplers.py +1 -1
  95. mindspore/dataset/engine/validators.py +19 -5
  96. mindspore/dataset/text/__init__.py +3 -3
  97. mindspore/dataset/text/transforms.py +101 -127
  98. mindspore/dataset/text/utils.py +205 -138
  99. mindspore/dataset/transforms/__init__.py +1 -1
  100. mindspore/dataset/transforms/py_transforms_util.py +40 -12
  101. mindspore/dataset/transforms/transforms.py +95 -40
  102. mindspore/dataset/utils/browse_dataset.py +8 -2
  103. mindspore/dataset/utils/line_reader.py +17 -19
  104. mindspore/dataset/vision/__init__.py +3 -3
  105. mindspore/dataset/vision/c_transforms.py +6 -3
  106. mindspore/dataset/vision/transforms.py +409 -287
  107. mindspore/dataset/vision/utils.py +13 -14
  108. mindspore/dataset/vision/validators.py +11 -1
  109. mindspore/experimental/map_parameter.py +14 -0
  110. mindspore/{nn/optim_ex → experimental/optim}/__init__.py +30 -29
  111. mindspore/{nn/optim_ex → experimental/optim}/adam.py +59 -66
  112. mindspore/{nn/optim_ex → experimental/optim}/adamw.py +181 -203
  113. mindspore/experimental/optim/lr_scheduler.py +1427 -0
  114. mindspore/{nn/optim_ex → experimental/optim}/optimizer.py +252 -259
  115. mindspore/{nn/optim_ex → experimental/optim}/sgd.py +147 -152
  116. mindspore/gen_ops.py +273 -0
  117. mindspore/include/OWNERS +0 -1
  118. mindspore/include/api/data_type.h +2 -1
  119. mindspore/include/api/graph.h +0 -15
  120. mindspore/include/api/kernel.h +2 -0
  121. mindspore/include/api/kernel_api.h +37 -12
  122. mindspore/include/api/model.h +0 -14
  123. mindspore/include/api/types.h +37 -4
  124. mindspore/include/c_api/ms/abstract.h +67 -0
  125. mindspore/include/c_api/ms/attribute.h +197 -0
  126. mindspore/include/c_api/ms/base/handle_types.h +43 -0
  127. mindspore/include/c_api/ms/base/macros.h +32 -0
  128. mindspore/include/c_api/ms/base/status.h +33 -0
  129. mindspore/include/c_api/ms/base/types.h +282 -0
  130. mindspore/include/c_api/ms/context.h +102 -0
  131. mindspore/include/c_api/ms/graph.h +160 -0
  132. mindspore/include/c_api/ms/node.h +606 -0
  133. mindspore/include/c_api/ms/tensor.h +161 -0
  134. mindspore/include/c_api/ms/value.h +84 -0
  135. mindspore/include/dataset/constants.h +6 -5
  136. mindspore/include/dataset/execute.h +23 -13
  137. mindspore/include/dataset/text.h +26 -26
  138. mindspore/include/dataset/transforms.h +13 -13
  139. mindspore/include/dataset/vision.h +60 -60
  140. mindspore/include/dataset/vision_ascend.h +5 -6
  141. mindspore/include/dataset/vision_lite.h +17 -17
  142. mindspore/include/mindapi/base/type_id.h +1 -0
  143. mindspore/include/mindapi/base/types.h +1 -0
  144. mindspore/lib/libdnnl.so.2 +0 -0
  145. mindspore/lib/libjemalloc.so.2 +0 -0
  146. mindspore/lib/libmindspore.so +0 -0
  147. mindspore/lib/libmindspore_backend.so +0 -0
  148. mindspore/lib/libmindspore_common.so +0 -0
  149. mindspore/lib/libmindspore_core.so +0 -0
  150. mindspore/lib/libmindspore_glog.so.0 +0 -0
  151. mindspore/lib/libmindspore_gpr.so.15 +0 -0
  152. mindspore/lib/libmindspore_grpc++.so.1 +0 -0
  153. mindspore/lib/libmindspore_grpc.so.15 +0 -0
  154. mindspore/lib/libmindspore_shared_lib.so +0 -0
  155. mindspore/lib/libnnacl.so +0 -0
  156. mindspore/lib/libopencv_core.so.4.5 +0 -0
  157. mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
  158. mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
  159. mindspore/lib/libps_cache.so +0 -0
  160. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
  161. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
  162. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +9000 -0
  163. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
  164. mindspore/lib/plugin/ascend/libakg.so +0 -0
  165. mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
  166. mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
  167. mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
  168. mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
  169. mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
  170. mindspore/lib/plugin/cpu/libakg.so +0 -0
  171. mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
  172. mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
  173. mindspore/mindrecord/tools/imagenet_to_mr.py +1 -1
  174. mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
  175. mindspore/nn/__init__.py +0 -2
  176. mindspore/nn/cell.py +316 -74
  177. mindspore/nn/dynamic_lr.py +21 -21
  178. mindspore/nn/layer/activation.py +21 -28
  179. mindspore/nn/layer/basic.py +15 -13
  180. mindspore/nn/layer/channel_shuffle.py +1 -1
  181. mindspore/nn/layer/container.py +271 -9
  182. mindspore/nn/layer/conv.py +310 -207
  183. mindspore/nn/layer/dense.py +8 -5
  184. mindspore/nn/layer/embedding.py +33 -27
  185. mindspore/nn/layer/flash_attention.py +82 -41
  186. mindspore/nn/layer/image.py +8 -6
  187. mindspore/nn/layer/math.py +13 -18
  188. mindspore/nn/layer/normalization.py +107 -66
  189. mindspore/nn/layer/padding.py +1 -1
  190. mindspore/nn/layer/pooling.py +131 -109
  191. mindspore/nn/layer/rnn_cells.py +22 -17
  192. mindspore/nn/layer/rnns.py +13 -16
  193. mindspore/nn/layer/thor_layer.py +1 -1
  194. mindspore/nn/layer/transformer.py +221 -154
  195. mindspore/nn/learning_rate_schedule.py +9 -1
  196. mindspore/nn/loss/loss.py +235 -174
  197. mindspore/nn/optim/ada_grad.py +2 -1
  198. mindspore/nn/optim/adadelta.py +1 -0
  199. mindspore/nn/optim/adafactor.py +2 -1
  200. mindspore/nn/optim/adam.py +7 -4
  201. mindspore/nn/optim/adamax.py +3 -2
  202. mindspore/nn/optim/adasum.py +2 -2
  203. mindspore/nn/optim/asgd.py +2 -3
  204. mindspore/nn/optim/ftrl.py +6 -5
  205. mindspore/nn/optim/lamb.py +7 -4
  206. mindspore/nn/optim/lars.py +1 -1
  207. mindspore/nn/optim/lazyadam.py +5 -3
  208. mindspore/nn/optim/momentum.py +2 -1
  209. mindspore/nn/optim/optimizer.py +53 -4
  210. mindspore/nn/optim/proximal_ada_grad.py +3 -4
  211. mindspore/nn/optim/rmsprop.py +4 -3
  212. mindspore/nn/optim/rprop.py +23 -12
  213. mindspore/nn/optim/sgd.py +26 -11
  214. mindspore/nn/optim/thor.py +9 -7
  215. mindspore/nn/probability/bijector/bijector.py +5 -5
  216. mindspore/nn/probability/bijector/power_transform.py +27 -27
  217. mindspore/nn/probability/bijector/softplus.py +3 -3
  218. mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -3
  219. mindspore/nn/probability/distribution/bernoulli.py +5 -5
  220. mindspore/nn/probability/distribution/beta.py +3 -3
  221. mindspore/nn/probability/distribution/categorical.py +7 -7
  222. mindspore/nn/probability/distribution/cauchy.py +0 -1
  223. mindspore/nn/probability/distribution/distribution.py +3 -3
  224. mindspore/nn/probability/distribution/gamma.py +3 -3
  225. mindspore/nn/probability/distribution/geometric.py +4 -4
  226. mindspore/nn/probability/distribution/gumbel.py +4 -4
  227. mindspore/nn/probability/distribution/log_normal.py +2 -2
  228. mindspore/nn/probability/distribution/logistic.py +2 -2
  229. mindspore/nn/probability/distribution/poisson.py +4 -4
  230. mindspore/nn/probability/distribution/transformed_distribution.py +3 -3
  231. mindspore/nn/probability/distribution/uniform.py +6 -6
  232. mindspore/nn/wrap/cell_wrapper.py +78 -34
  233. mindspore/nn/wrap/grad_reducer.py +8 -5
  234. mindspore/nn/wrap/loss_scale.py +105 -42
  235. mindspore/numpy/array_creations.py +1 -2
  236. mindspore/numpy/array_ops.py +3 -2
  237. mindspore/offline_debug/convert_async.py +2 -2
  238. mindspore/ops/_grad_experimental/__init__.py +0 -5
  239. mindspore/ops/_grad_experimental/grad_array_ops.py +1 -2
  240. mindspore/ops/_grad_experimental/grad_comm_ops.py +15 -2
  241. mindspore/ops/_grad_experimental/grad_debug_ops.py +0 -37
  242. mindspore/ops/_grad_experimental/grad_implementations.py +10 -0
  243. mindspore/ops/_grad_experimental/grad_inner_ops.py +2 -216
  244. mindspore/ops/_grad_experimental/grad_math_ops.py +0 -181
  245. mindspore/ops/_grad_experimental/grad_sparse.py +15 -0
  246. mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
  247. mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +165 -109
  248. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +144 -86
  249. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +172 -187
  250. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +51 -57
  251. mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +6 -17
  252. mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +1 -1
  253. mindspore/ops/_op_impl/aicpu/__init__.py +14 -2
  254. mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
  255. mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
  256. mindspore/ops/_op_impl/aicpu/eps.py +32 -0
  257. mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
  258. mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
  259. mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
  260. mindspore/ops/_op_impl/aicpu/multinomial.py +3 -3
  261. mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
  262. mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
  263. mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
  264. mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
  265. mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
  266. mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
  267. mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
  268. mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -5
  269. mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -5
  270. mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
  271. mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
  272. mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
  273. mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
  274. mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
  275. mindspore/ops/_op_impl/tbe/__init__.py +4 -4
  276. mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
  277. mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
  278. mindspore/ops/_primitive_cache.py +1 -1
  279. mindspore/ops/_tracefunc.py +45 -13
  280. mindspore/ops/_utils/utils.py +4 -1
  281. mindspore/ops/_vmap/vmap_array_ops.py +3 -3
  282. mindspore/ops/_vmap/vmap_base.py +3 -3
  283. mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
  284. mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
  285. mindspore/ops/_vmap/vmap_math_ops.py +5 -2
  286. mindspore/ops/_vmap/vmap_nn_ops.py +61 -7
  287. mindspore/ops/arg_dtype_cast.py +54 -0
  288. mindspore/ops/composite/base.py +37 -10
  289. mindspore/ops/composite/math_ops.py +5 -4
  290. mindspore/ops/composite/multitype_ops/_compile_utils.py +273 -72
  291. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +16 -9
  292. mindspore/ops/composite/multitype_ops/add_impl.py +43 -4
  293. mindspore/ops/composite/multitype_ops/getitem_impl.py +40 -2
  294. mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
  295. mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
  296. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
  297. mindspore/ops/deprecated.py +304 -0
  298. mindspore/ops/function/__init__.py +4 -1
  299. mindspore/ops/function/array_func.py +167 -189
  300. mindspore/ops/function/clip_func.py +81 -13
  301. mindspore/ops/function/debug_func.py +1 -1
  302. mindspore/ops/function/grad/grad_func.py +18 -8
  303. mindspore/ops/function/image_func.py +10 -4
  304. mindspore/ops/function/linalg_func.py +5 -5
  305. mindspore/ops/function/math_func.py +575 -386
  306. mindspore/ops/function/nn_func.py +470 -251
  307. mindspore/ops/function/random_func.py +86 -56
  308. mindspore/ops/function/sparse_func.py +1 -1
  309. mindspore/ops/function/sparse_unary_func.py +14 -12
  310. mindspore/ops/function/vmap_func.py +6 -5
  311. mindspore/ops/functional.py +15 -10
  312. mindspore/ops/op_info_register.py +235 -19
  313. mindspore/ops/operations/__init__.py +25 -17
  314. mindspore/ops/operations/_grad_ops.py +52 -7
  315. mindspore/ops/operations/_inner_ops.py +213 -12
  316. mindspore/ops/operations/_quant_ops.py +4 -8
  317. mindspore/ops/operations/_sequence_ops.py +42 -0
  318. mindspore/ops/operations/array_ops.py +64 -280
  319. mindspore/ops/operations/comm_ops.py +105 -57
  320. mindspore/ops/operations/custom_ops.py +10 -3
  321. mindspore/ops/operations/debug_ops.py +8 -4
  322. mindspore/ops/operations/image_ops.py +18 -12
  323. mindspore/ops/operations/math_ops.py +185 -138
  324. mindspore/ops/operations/nn_ops.py +716 -492
  325. mindspore/ops/operations/other_ops.py +0 -22
  326. mindspore/ops/operations/random_ops.py +53 -111
  327. mindspore/ops/operations/sparse_ops.py +3 -1
  328. mindspore/ops/primitive.py +24 -18
  329. mindspore/parallel/_auto_parallel_context.py +68 -8
  330. mindspore/parallel/_cost_model_context.py +2 -2
  331. mindspore/parallel/_offload_context.py +17 -3
  332. mindspore/parallel/_parallel_serialization.py +2 -2
  333. mindspore/parallel/_ps_context.py +12 -0
  334. mindspore/parallel/_tensor.py +14 -12
  335. mindspore/parallel/_transformer/layers.py +5 -3
  336. mindspore/parallel/_transformer/loss.py +1 -0
  337. mindspore/parallel/_transformer/moe.py +2 -2
  338. mindspore/parallel/_transformer/op_parallel_config.py +12 -1
  339. mindspore/parallel/_transformer/transformer.py +23 -3
  340. mindspore/parallel/_utils.py +11 -7
  341. mindspore/parallel/algo_parameter_config.py +85 -5
  342. mindspore/parallel/checkpoint_transform.py +6 -10
  343. mindspore/parallel/shard.py +4 -4
  344. mindspore/profiler/common/struct_type.py +3 -3
  345. mindspore/profiler/common/util.py +3 -2
  346. mindspore/profiler/envprofiling.py +1 -1
  347. mindspore/profiler/parser/aicpu_data_parser.py +5 -3
  348. mindspore/profiler/parser/ascend_flops_generator.py +2 -2
  349. mindspore/profiler/parser/ascend_fpbp_generator.py +1 -1
  350. mindspore/profiler/parser/ascend_hccl_generator.py +17 -12
  351. mindspore/profiler/parser/ascend_msprof_exporter.py +104 -252
  352. mindspore/profiler/parser/ascend_msprof_generator.py +8 -8
  353. mindspore/profiler/parser/ascend_op_generator.py +5 -5
  354. mindspore/profiler/parser/ascend_steptrace_generator.py +6 -4
  355. mindspore/profiler/parser/ascend_timeline_generator.py +9 -6
  356. mindspore/profiler/parser/base_timeline_generator.py +9 -7
  357. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +14 -10
  358. mindspore/profiler/parser/flops_parser.py +15 -11
  359. mindspore/profiler/parser/framework_parser.py +37 -21
  360. mindspore/profiler/parser/hccl_parser.py +16 -12
  361. mindspore/profiler/parser/integrator.py +22 -11
  362. mindspore/profiler/parser/memory_usage_parser.py +2 -2
  363. mindspore/profiler/parser/minddata_analyzer.py +12 -14
  364. mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
  365. mindspore/profiler/parser/msadvisor_parser.py +8 -4
  366. mindspore/profiler/parser/op_intermediate_parser.py +5 -2
  367. mindspore/profiler/parser/optime_parser.py +1 -1
  368. mindspore/profiler/parser/profiler_info.py +2 -2
  369. mindspore/profiler/parser/step_trace_parser.py +11 -14
  370. mindspore/profiler/profiling.py +139 -71
  371. mindspore/rewrite/api/node.py +102 -19
  372. mindspore/rewrite/api/node_type.py +5 -1
  373. mindspore/rewrite/api/scoped_value.py +9 -17
  374. mindspore/rewrite/api/symbol_tree.py +131 -47
  375. mindspore/rewrite/ast_helpers/__init__.py +2 -1
  376. mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
  377. mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
  378. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +93 -46
  379. mindspore/rewrite/common/rewrite_elog.py +5 -1
  380. mindspore/rewrite/namer.py +33 -24
  381. mindspore/rewrite/namespace.py +14 -5
  382. mindspore/{_extends/graph_kernel/expanders/complex → rewrite/node}/__init__.py +9 -9
  383. mindspore/rewrite/node/call_function.py +79 -0
  384. mindspore/rewrite/node/cell_container.py +135 -0
  385. mindspore/rewrite/node/control_flow.py +88 -0
  386. mindspore/rewrite/{node.py → node/node.py} +273 -234
  387. mindspore/rewrite/node/node_manager.py +254 -0
  388. mindspore/rewrite/{topological_manager.py → node/node_topological_manager.py} +13 -46
  389. mindspore/rewrite/parsers/arguments_parser.py +22 -21
  390. mindspore/rewrite/parsers/assign_parser.py +216 -221
  391. mindspore/rewrite/parsers/attribute_parser.py +9 -7
  392. mindspore/rewrite/parsers/class_def_parser.py +174 -113
  393. mindspore/rewrite/parsers/constant_parser.py +9 -6
  394. mindspore/rewrite/parsers/container_parser.py +9 -7
  395. mindspore/rewrite/parsers/for_parser.py +36 -15
  396. mindspore/rewrite/parsers/function_def_parser.py +24 -16
  397. mindspore/rewrite/parsers/if_parser.py +28 -24
  398. mindspore/rewrite/parsers/module_parser.py +196 -25
  399. mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
  400. mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
  401. mindspore/rewrite/parsers/return_parser.py +6 -6
  402. mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
  403. mindspore/rewrite/sparsify/utils.py +1 -1
  404. mindspore/rewrite/symbol_tree.py +525 -577
  405. mindspore/rewrite/symbol_tree_builder.py +9 -193
  406. mindspore/rewrite/symbol_tree_dumper.py +2 -2
  407. mindspore/run_check/_check_version.py +2 -2
  408. mindspore/{ops/bprop_mindir → safeguard}/__init__.py +4 -3
  409. mindspore/safeguard/rewrite_obfuscation.py +517 -0
  410. mindspore/scipy/linalg.py +1 -1
  411. mindspore/scipy/optimize/minimize.py +7 -3
  412. mindspore/train/_utils.py +7 -3
  413. mindspore/train/amp.py +323 -123
  414. mindspore/train/anf_ir_pb2.py +14 -2
  415. mindspore/train/callback/_backup_and_restore.py +2 -12
  416. mindspore/train/callback/_callback.py +29 -4
  417. mindspore/train/callback/_checkpoint.py +23 -8
  418. mindspore/train/callback/_early_stop.py +2 -2
  419. mindspore/train/callback/_landscape.py +4 -4
  420. mindspore/train/callback/_loss_monitor.py +2 -2
  421. mindspore/train/callback/_on_request_exit.py +2 -2
  422. mindspore/train/callback/_reduce_lr_on_plateau.py +3 -4
  423. mindspore/train/callback/_summary_collector.py +14 -7
  424. mindspore/train/callback/_time_monitor.py +58 -5
  425. mindspore/train/data_sink.py +5 -11
  426. mindspore/train/dataset_helper.py +83 -57
  427. mindspore/train/loss_scale_manager.py +2 -2
  428. mindspore/train/metrics/__init__.py +3 -3
  429. mindspore/train/metrics/cosine_similarity.py +1 -1
  430. mindspore/train/metrics/hausdorff_distance.py +3 -2
  431. mindspore/train/metrics/mean_surface_distance.py +3 -2
  432. mindspore/train/metrics/metric.py +39 -19
  433. mindspore/train/metrics/roc.py +2 -2
  434. mindspore/train/metrics/root_mean_square_surface_distance.py +4 -3
  435. mindspore/train/mind_ir_pb2.py +85 -36
  436. mindspore/train/model.py +185 -45
  437. mindspore/train/serialization.py +390 -150
  438. mindspore/train/summary/_writer_pool.py +3 -2
  439. mindspore/train/summary/summary_record.py +14 -10
  440. mindspore/train/train_thor/convert_utils.py +3 -3
  441. mindspore/train/train_thor/dataset_helper.py +1 -1
  442. mindspore/version.py +1 -1
  443. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/METADATA +6 -7
  444. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/RECORD +447 -507
  445. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/entry_points.txt +0 -1
  446. mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
  447. mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
  448. mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
  449. mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
  450. mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
  451. mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
  452. mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
  453. mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
  454. mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
  455. mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
  456. mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
  457. mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
  458. mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
  459. mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
  460. mindspore/_akg/akg/tvm/rpc/base.py +0 -182
  461. mindspore/_akg/akg/tvm/rpc/client.py +0 -436
  462. mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
  463. mindspore/_akg/akg/tvm/rpc/server.py +0 -413
  464. mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
  465. mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
  466. mindspore/_extends/graph_kernel/expander.py +0 -80
  467. mindspore/_extends/graph_kernel/expanders/__init__.py +0 -54
  468. mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
  469. mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
  470. mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
  471. mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
  472. mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
  473. mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
  474. mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
  475. mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
  476. mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
  477. mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
  478. mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
  479. mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
  480. mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
  481. mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
  482. mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
  483. mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
  484. mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
  485. mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
  486. mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
  487. mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
  488. mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
  489. mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
  490. mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
  491. mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
  492. mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
  493. mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
  494. mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
  495. mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
  496. mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
  497. mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
  498. mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
  499. mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
  500. mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
  501. mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
  502. mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
  503. mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
  504. mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
  505. mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
  506. mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
  507. mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
  508. mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
  509. mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
  510. mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
  511. mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
  512. mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
  513. mindspore/dataset/datapreprocess/__init__.py +0 -20
  514. mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
  515. mindspore/include/api/net.h +0 -142
  516. mindspore/nn/lr_scheduler.py +0 -262
  517. mindspore/ops/_grad_experimental/grad_image_ops.py +0 -248
  518. mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -181
  519. mindspore/ops/_grad_experimental/grad_other_ops.py +0 -72
  520. mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
  521. mindspore/ops/_grad_experimental/grad_sequence_ops.py +0 -351
  522. mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -0
  523. mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -0
  524. mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -0
  525. mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
  526. mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
  527. mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -0
  528. mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -0
  529. mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
  530. mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  531. mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -0
  532. mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -0
  533. mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -0
  534. mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -0
  535. mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -0
  536. mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
  537. mindspore/rewrite/node_visitor.py +0 -44
  538. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/WHEEL +0 -0
  539. {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,161 @@
1
+ /**
2
+ * Copyright 2022 Huawei Technologies Co., Ltd
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #ifndef MINDSPORE_CCSRC_C_API_INCLUDE_FUNC_TENSOR_H_
18
+ #define MINDSPORE_CCSRC_C_API_INCLUDE_FUNC_TENSOR_H_
19
+
20
+ #include <stdbool.h>
21
+ #include <stdlib.h>
22
+ #include "include/c_api/ms/base/macros.h"
23
+ #include "include/c_api/ms/base/status.h"
24
+ #include "include/c_api/ms/base/types.h"
25
+ #include "include/c_api/ms/base/handle_types.h"
26
+ #include "include/c_api/ms/context.h"
27
+
28
+ #ifdef __cplusplus
29
+ extern "C" {
30
+ #endif
31
+
32
+ /// \brief Create a tensor with input data buffer.
33
+ ///
34
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
35
+ /// \param[in] data The input data to be copied into tensor.
36
+ /// \param[in] type [TypeId] Data type of the tensor.
37
+ /// \param[in] shape The shape arary of the tensor.
38
+ /// \param[in] shape_size The size of shape array, i.e., the rank of the tensor.
39
+ /// \param[in] data_len The length of data in bytes.
40
+ ///
41
+ /// \return The pointer of the created tensor instance.
42
+ MIND_C_API TensorHandle MSNewTensor(ResMgrHandle res_mgr, void *data, DataTypeC type, const int64_t shape[],
43
+ size_t shape_size, size_t data_len);
44
+
45
+ /// \brief Create a tensor with path to a space-sperated txt file.
46
+ ///
47
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
48
+ /// \param[in] type [TypeId] Data type of the tensor.
49
+ /// \param[in] shape The shape arary of the tensor.
50
+ /// \param[in] shape_size The size of shape array, i.e., the rank of the tensor.
51
+ /// \param[in] path path to the file.
52
+ ///
53
+ /// \return The pointer of the created tensor instance.
54
+ MIND_C_API TensorHandle MSNewTensorFromFile(ResMgrHandle res_mgr, DataTypeC type, const int64_t shape[],
55
+ size_t shape_size, const char *path);
56
+
57
+ /// \brief Create a tensor with input data buffer and given source data type.
58
+ ///
59
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
60
+ /// \param[in] shape The shape arary of the tensor.
61
+ /// \param[in] shape_size The size of shape array, i.e., the rank of the tensor.
62
+ /// \param[in] data The input data to be copied into tensor.
63
+ /// \param[in] tensor_type [TypeId] Data type of the tensor.
64
+ /// \param[in] src_type [TypeId] The source data type.
65
+ ///
66
+ /// \return The pointer of the created tensor instance.
67
+ MIND_C_API TensorHandle MSNewTensorWithSrcType(ResMgrHandle res_mgr, void *data, const int64_t shape[],
68
+ size_t shape_size, DataTypeC tensor_type, DataTypeC src_type);
69
+
70
+ /// \brief Create a tensor with float32 scalar value.
71
+ ///
72
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
73
+ /// \param[in] value The input scalar value.
74
+ ///
75
+ /// \return The pointer of the created tensor instance.
76
+ MIND_C_API TensorHandle MSNewTensorScalarFloat32(ResMgrHandle res_mgr, float value);
77
+
78
+ /// \brief Create a tensor with int32 scalar value.
79
+ ///
80
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
81
+ /// \param[in] value The input scalar value.
82
+ ///
83
+ /// \return The pointer of the created tensor instance.
84
+ MIND_C_API TensorHandle MSNewTensorScalarInt32(ResMgrHandle res_mgr, int value);
85
+
86
+ /// \brief Get the raw pointer of tensor data.
87
+ ///
88
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
89
+ /// \param[in] tensor The pointer of the tensor instance.
90
+ ///
91
+ /// \return The pointer to the tensor data
92
+ MIND_C_API void *MSTensorGetData(ResMgrHandle res_mgr, ConstTensorHandle tensor);
93
+
94
+ /// \brief Set tensor data type.
95
+ ///
96
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
97
+ /// \param[in] tensor The pointer of the tensor instance.
98
+ /// \param[in] type The data type to be set.
99
+ ///
100
+ /// \return Error code that indicate whether the functions executed successfully.
101
+ MIND_C_API STATUS MSTensorSetDataType(ResMgrHandle res_mgr, TensorHandle tensor, DataTypeC type);
102
+
103
+ /// \brief Get tensor data type.
104
+ ///
105
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
106
+ /// \param[in] tensor The pointer of the tensor instance.
107
+ ///
108
+ /// \return The data type of tensor.
109
+ MIND_C_API DataTypeC MSTensorGetDataType(ResMgrHandle res_mgr, ConstTensorHandle tensor, STATUS *error);
110
+
111
+ /// \brief Get the byte size of tensor data.
112
+ ///
113
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
114
+ /// \param[in] tensor The pointer of the tensor instance.
115
+ /// \param[in] error Records error code that indicate whether the functions executed successfully.
116
+ ///
117
+ /// \return The byte size of tensor data.
118
+ MIND_C_API size_t MSTensorGetDataSize(ResMgrHandle res_mgr, ConstTensorHandle tensor, STATUS *error);
119
+
120
+ /// \brief Get the element number of tensor array.
121
+ ///
122
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
123
+ /// \param[in] tensor The pointer of the tensor instance.
124
+ /// \param[in] error Records error code that indicate whether the functions executed successfully.
125
+ ///
126
+ /// \return The element number of tensor array.
127
+ MIND_C_API size_t MSTensorGetElementNum(ResMgrHandle res_mgr, ConstTensorHandle tensor, STATUS *error);
128
+
129
+ /// \brief Get the dimension of tensor.
130
+ ///
131
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
132
+ /// \param[in] tensor The pointer of the tensor instance.
133
+ /// \param[in] error Records error code that indicate whether the functions executed successfully.
134
+ ///
135
+ /// \return The dimension of tensor.
136
+ MIND_C_API size_t MSTensorGetDimension(ResMgrHandle res_mgr, ConstTensorHandle tensor, STATUS *error);
137
+
138
+ /// \brief Set the shape of tensor array.
139
+ ///
140
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
141
+ /// \param[in] tensor The pointer of the tensor instance.
142
+ /// \param[in] shape The shape array.
143
+ /// \param[in] dim The the dimension of tensor, i.e., size of shape array.
144
+ ///
145
+ /// \return Error code indicates whether the function executed successfully.
146
+ MIND_C_API STATUS MSTensorSetShape(ResMgrHandle res_mgr, TensorHandle tensor, const int64_t shape[], size_t dim);
147
+
148
+ /// \brief Get the shape of tensor array.
149
+ ///
150
+ /// \param[in] res_mgr Resource manager that saves allocated instance resources.
151
+ /// \param[in] tensor The pointer of the tensor instance.
152
+ /// \param[in] shape The shape array.
153
+ /// \param[in] dim The the dimension of tensor, i.e., size of shape array.
154
+ ///
155
+ /// \return Error code indicates whether the function executed successfully.
156
+ MIND_C_API STATUS MSTensorGetShape(ResMgrHandle res_mgr, ConstTensorHandle tensor, int64_t shape[], size_t dim);
157
+
158
+ #ifdef __cplusplus
159
+ }
160
+ #endif
161
+ #endif // MINDSPORE_CCSRC_C_API_INCLUDE_FUNC_TENSOR_H_
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Copyright 2022 Huawei Technologies Co., Ltd
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #ifndef MINDSPORE_CCSRC_C_API_INCLUDE_VALUE_H_
18
+ #define MINDSPORE_CCSRC_C_API_INCLUDE_VALUE_H_
19
+
20
+ #include <stdbool.h>
21
+ #include <stdlib.h>
22
+ #include "include/c_api/ms/base/macros.h"
23
+ #include "include/c_api/ms/base/handle_types.h"
24
+ #include "include/c_api/ms/base/types.h"
25
+ #include "include/c_api/ms/context.h"
26
+
27
+ #ifdef __cplusplus
28
+ extern "C" {
29
+ #endif
30
+
31
+ /// \brief Create new Int64 scalar value.
32
+ ///
33
+ /// \param[in] res_mgr Resource Handle that manages the nodes of the funcGraph.
34
+ /// \param[in] v Given value.
35
+ ///
36
+ /// \return Value handle.
37
+ MIND_C_API ValueHandle MSNewValueInt64(ResMgrHandle res_mgr, const int64_t v);
38
+
39
+ /// \brief Create new flaot32 scalar value.
40
+ ///
41
+ /// \param[in] res_mgr Resource Handle that manages the nodes of the funcGraph.
42
+ /// \param[in] v Given value.
43
+ ///
44
+ /// \return Value handle.
45
+ MIND_C_API ValueHandle MSNewValueFloat32(ResMgrHandle res_mgr, const float v);
46
+
47
+ /// \brief Create new Bool scalar value.
48
+ ///
49
+ /// \param[in] res_mgr Resource Handle that manages the nodes of the funcGraph.
50
+ /// \param[in] v Given value.
51
+ ///
52
+ /// \return Value handle.
53
+ MIND_C_API ValueHandle MSNewValueBool(ResMgrHandle res_mgr, const bool v);
54
+
55
+ /// \brief Create new value of DataType.
56
+ ///
57
+ /// \param[in] res_mgr Resource Handle that manages the nodes of the funcGraph.
58
+ /// \param[in] type Given data type.
59
+ ///
60
+ /// \return Value handle.
61
+ MIND_C_API ValueHandle MSNewValueType(ResMgrHandle res_mgr, DataTypeC type);
62
+
63
+ /// \brief Create new vector of Strings Value.
64
+ ///
65
+ /// \param[in] res_mgr Resource Handle that manages the nodes of the funcGraph.
66
+ /// \param[in] strs Given value.
67
+ /// \param[in] vec_len Length of the string vector.
68
+ ///
69
+ /// \return Value handle.
70
+ MIND_C_API ValueHandle MSNewValueStrings(ResMgrHandle res_mgr, const char *strs[], size_t vec_len);
71
+
72
+ /// \brief Create new Value with array.
73
+ ///
74
+ /// \param[in] res_mgr Resource Handle that manages the nodes of the funcGraph.
75
+ /// \param[in] value Given array.
76
+ /// \param[in] vec_size Given array size.
77
+ /// \param[in] data_type Datatype of the array.
78
+ ///
79
+ /// \return Value handle
80
+ MIND_C_API ValueHandle MSNewValueArray(ResMgrHandle res_mgr, void *value, size_t vec_size, DataTypeC data_type);
81
+ #ifdef __cplusplus
82
+ }
83
+ #endif
84
+ #endif // MINDSPORE_CCSRC_C_API_INCLUDE_VALUE_H_
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright 2019-2021 Huawei Technologies Co., Ltd
2
+ * Copyright 2020-2022 Huawei Technologies Co., Ltd
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -106,9 +106,11 @@ enum class DATASET_API ManualOffloadMode {
106
106
 
107
107
  /// \brief Target devices to perform map operation.
108
108
  enum class DATASET_API MapTargetDevice {
109
- kCpu, ///< CPU Device.
110
- kGpu, ///< Gpu Device.
111
- kAscend310 ///< Ascend310 Device.
109
+ kCpu = 0, ///< CPU Device.
110
+ kGpu, ///< Gpu Device.
111
+ kAscend310, ///< Ascend310 Device.
112
+ kAscend910B, ///< Ascend910B Device.
113
+ kInvalid = 100
112
114
  };
113
115
 
114
116
  /// \brief Possible options for mel_type in MelscaleFbanks.
@@ -358,5 +360,4 @@ using row_id_type = int64_t;
358
360
  constexpr uint32_t kCfgAutoTuneInterval = 0; // default number of steps
359
361
  } // namespace dataset
360
362
  } // namespace mindspore
361
-
362
363
  #endif // MINDSPORE_CCSRC_MINDDATA_DATASET_INCLUDE_DATASET_CONSTANTS_H_
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright 2020-2022 Huawei Technologies Co., Ltd
2
+ * Copyright 2020-2023 Huawei Technologies Co., Ltd
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -17,20 +17,25 @@
17
17
  #ifndef MINDSPORE_CCSRC_MINDDATA_DATASET_INCLUDE_DATASET_EXECUTE_H_
18
18
  #define MINDSPORE_CCSRC_MINDDATA_DATASET_INCLUDE_DATASET_EXECUTE_H_
19
19
 
20
- #include <string>
21
- #include <vector>
22
20
  #include <map>
23
21
  #include <memory>
22
+ #include <string>
23
+ #include <vector>
24
+
24
25
  #include "include/api/context.h"
25
26
  #include "include/api/types.h"
26
27
  #include "include/dataset/constants.h"
27
28
  #include "include/dataset/transforms.h"
29
+ #if !defined(BUILD_LITE) && defined(ENABLE_D)
30
+ #include "runtime/hardware/device_context.h"
31
+ #include "runtime/hardware/device_context_manager.h"
32
+ #endif
28
33
 
29
34
  namespace mindspore {
30
35
  namespace dataset {
31
36
  class DeviceResource;
32
- class TensorOp;
33
37
  class Tensor;
38
+ class TensorOp;
34
39
 
35
40
  // class to run tensor operations in eager mode
36
41
  class DATASET_API Execute {
@@ -97,6 +102,9 @@ class DATASET_API Execute {
97
102
  /// \brief Destructor.
98
103
  ~Execute();
99
104
 
105
+ // Update the TensorOperation
106
+ Status UpdateOperation(const std::shared_ptr<TensorOperation> &op);
107
+
100
108
  /// \brief Callable function to execute the TensorTransform in eager mode.
101
109
  /// \param[in] input Tensor to be transformed.
102
110
  /// \param[out] output Transformed tensor.
@@ -153,16 +161,24 @@ class DATASET_API Execute {
153
161
  Status ValidateDevice();
154
162
 
155
163
  /// \brief Initialize 310 resource
156
- Status InitResource(MapTargetDevice device_type, uint32_t device_id);
164
+ Status InitResource(MapTargetDevice device_type, uint32_t device_id = 0);
157
165
 
158
166
  std::vector<std::shared_ptr<TensorTransform>> transforms_;
159
167
  std::vector<std::shared_ptr<TensorOperation>> ops_;
160
168
  MapTargetDevice device_type_;
161
- std::shared_ptr<DeviceResource> device_resource_;
169
+
170
+ // Ascend310
171
+ std::shared_ptr<DeviceResource> device_resource_ = nullptr;
162
172
  struct ExtraInfo;
163
173
  std::shared_ptr<ExtraInfo> info_;
174
+
175
+ #if !defined(BUILD_LITE) && defined(ENABLE_D)
176
+ // Ascend910B
177
+ device::DeviceContext *device_context_ = nullptr;
178
+ size_t stream_id_;
179
+ #endif
180
+
164
181
  std::vector<std::shared_ptr<TensorOp>> transforms_rt_;
165
- bool ops_created{false};
166
182
  };
167
183
 
168
184
  class PyExecute : public Execute {
@@ -170,12 +186,6 @@ class PyExecute : public Execute {
170
186
  // inherit base class constructors
171
187
  using Execute::Execute;
172
188
 
173
- /// \brief Callable function to execute the TensorTransform in eager mode (only cpu).
174
- /// \param[in] input_tensor A tensor to be transformed.
175
- /// \param[out] out Result tensor after transform.
176
- /// \return Status error code, returns OK if no error encountered.
177
- Status operator()(const std::shared_ptr<Tensor> &input_tensor, std::shared_ptr<Tensor> *out);
178
-
179
189
  /// \brief Callable function to execute the TensorTransform in eager mode (only cpu).
180
190
  /// \param[in] input_tensor_list List of Tensors to be transformed.
181
191
  /// \param[out] out Result tensors list after transform.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright 2020-2022 Huawei Technologies Co., Ltd
2
+ * Copyright 2020-2023 Huawei Technologies Co., Ltd
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -201,8 +201,8 @@ class SentencePieceVocab {
201
201
  /// Status rc = SentencePieceVocab::BuildFromFile(path_list, 5000, 0.9995,
202
202
  /// SentencePieceModel::kUnigram, param_map, &spm);
203
203
  /// \endcode
204
- static Status BuildFromFile(const std::vector<std::string> &path_list, const int32_t vocab_size,
205
- const float character_coverage, const SentencePieceModel model_type,
204
+ static Status BuildFromFile(const std::vector<std::string> &path_list, int32_t vocab_size, float character_coverage,
205
+ const SentencePieceModel &model_type,
206
206
  const std::unordered_map<std::string, std::string> &params,
207
207
  std::shared_ptr<SentencePieceVocab> *vocab);
208
208
 
@@ -215,8 +215,8 @@ class SentencePieceVocab {
215
215
  /// // Save vocab model to local
216
216
  /// vocab->SaveModel(&vocab, datasets_root_path_ + "/test_sentencepiece", "m.model");
217
217
  /// \endcode
218
- static Status SaveModel(const std::shared_ptr<SentencePieceVocab> *vocab, const std::string path,
219
- std::string filename);
218
+ static Status SaveModel(const std::shared_ptr<SentencePieceVocab> *vocab, const std::string &path,
219
+ const std::string &filename);
220
220
 
221
221
  /// \brief Constructor.
222
222
  SentencePieceVocab();
@@ -226,7 +226,7 @@ class SentencePieceVocab {
226
226
 
227
227
  const std::string &model_proto();
228
228
 
229
- void set_model_proto(const std::string model_proto);
229
+ void set_model_proto(const std::string &model_proto);
230
230
 
231
231
  private:
232
232
  std::string model_proto_;
@@ -293,7 +293,7 @@ class DATASET_API BasicTokenizer final : public TensorTransform {
293
293
  bool with_offsets = false);
294
294
 
295
295
  /// \brief Destructor
296
- ~BasicTokenizer() = default;
296
+ ~BasicTokenizer() override = default;
297
297
 
298
298
  protected:
299
299
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -365,7 +365,7 @@ class DATASET_API BertTokenizer final : public TensorTransform {
365
365
  bool keep_whitespace, NormalizeForm normalize_form, bool preserve_unused_token, bool with_offsets);
366
366
 
367
367
  /// \brief Destructor
368
- ~BertTokenizer() = default;
368
+ ~BertTokenizer() override = default;
369
369
 
370
370
  protected:
371
371
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -393,7 +393,7 @@ class DATASET_API CaseFold final : public TensorTransform {
393
393
  CaseFold();
394
394
 
395
395
  /// \brief Destructor
396
- ~CaseFold() = default;
396
+ ~CaseFold() override = default;
397
397
 
398
398
  protected:
399
399
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -408,7 +408,7 @@ class FilterWikipediaXML final : public TensorTransform {
408
408
  FilterWikipediaXML();
409
409
 
410
410
  /// \brief Destructor
411
- ~FilterWikipediaXML() = default;
411
+ ~FilterWikipediaXML() override = default;
412
412
 
413
413
  protected:
414
414
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -460,7 +460,7 @@ class DATASET_API JiebaTokenizer final : public TensorTransform {
460
460
  bool with_offsets);
461
461
 
462
462
  /// \brief Destructor
463
- ~JiebaTokenizer() = default;
463
+ ~JiebaTokenizer() override = default;
464
464
 
465
465
  /// \brief Add a user defined word to the JiebaTokenizer's dictionary.
466
466
  /// \param[in] word The word to be added to the JiebaTokenizer instance.
@@ -572,7 +572,7 @@ class DATASET_API Lookup final : public TensorTransform {
572
572
  mindspore::DataType data_type = mindspore::DataType::kNumberTypeInt32);
573
573
 
574
574
  /// \brief Destructor
575
- ~Lookup() = default;
575
+ ~Lookup() override = default;
576
576
 
577
577
  protected:
578
578
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -622,7 +622,7 @@ class DATASET_API Ngram final : public TensorTransform {
622
622
  const std::pair<std::vector<char>, int32_t> &right_pad, const std::vector<char> &separator);
623
623
 
624
624
  /// \brief Destructor
625
- ~Ngram() = default;
625
+ ~Ngram() override = default;
626
626
 
627
627
  protected:
628
628
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -659,7 +659,7 @@ class DATASET_API NormalizeUTF8 final : public TensorTransform {
659
659
  explicit NormalizeUTF8(NormalizeForm normalize_form = NormalizeForm::kNfkc);
660
660
 
661
661
  /// \brief Destructor
662
- ~NormalizeUTF8() = default;
662
+ ~NormalizeUTF8() override = default;
663
663
 
664
664
  protected:
665
665
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -699,7 +699,7 @@ class DATASET_API RegexReplace final : public TensorTransform {
699
699
  RegexReplace(const std::vector<char> &pattern, const std::vector<char> &replace, bool replace_all);
700
700
 
701
701
  /// \brief Destructor
702
- ~RegexReplace() = default;
702
+ ~RegexReplace() override = default;
703
703
 
704
704
  protected:
705
705
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -737,7 +737,7 @@ class DATASET_API RegexTokenizer final : public TensorTransform {
737
737
  bool with_offsets);
738
738
 
739
739
  /// \brief Destructor
740
- ~RegexTokenizer() = default;
740
+ ~RegexTokenizer() override = default;
741
741
 
742
742
  protected:
743
743
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -793,7 +793,7 @@ class DATASET_API SentencePieceTokenizer final : public TensorTransform {
793
793
  SentencePieceTokenizer(const std::vector<char> &vocab_path, mindspore::dataset::SPieceTokenizerOutType out_type);
794
794
 
795
795
  /// \brief Destructor
796
- ~SentencePieceTokenizer() = default;
796
+ ~SentencePieceTokenizer() override = default;
797
797
 
798
798
  protected:
799
799
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -825,7 +825,7 @@ class DATASET_API SlidingWindow final : public TensorTransform {
825
825
  explicit SlidingWindow(int32_t width, int32_t axis = 0);
826
826
 
827
827
  /// \brief Destructor
828
- ~SlidingWindow() = default;
828
+ ~SlidingWindow() override = default;
829
829
 
830
830
  protected:
831
831
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -858,7 +858,7 @@ class DATASET_API ToNumber final : public TensorTransform {
858
858
  explicit ToNumber(mindspore::DataType data_type);
859
859
 
860
860
  /// \brief Destructor
861
- ~ToNumber() = default;
861
+ ~ToNumber() override = default;
862
862
 
863
863
  protected:
864
864
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -882,7 +882,7 @@ class DATASET_API ToVectors final : public TensorTransform {
882
882
  bool lower_case_backup = false);
883
883
 
884
884
  /// \brief Destructor
885
- ~ToVectors() = default;
885
+ ~ToVectors() override = default;
886
886
 
887
887
  protected:
888
888
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -911,7 +911,7 @@ class DATASET_API Truncate final : public TensorTransform {
911
911
  explicit Truncate(int32_t max_seq_len);
912
912
 
913
913
  /// \brief Destructor.
914
- ~Truncate() = default;
914
+ ~Truncate() override = default;
915
915
 
916
916
  protected:
917
917
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -940,7 +940,7 @@ class DATASET_API TruncateSequencePair final : public TensorTransform {
940
940
  explicit TruncateSequencePair(int32_t max_length);
941
941
 
942
942
  /// \brief Destructor
943
- ~TruncateSequencePair() = default;
943
+ ~TruncateSequencePair() override = default;
944
944
 
945
945
  protected:
946
946
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -969,7 +969,7 @@ class DATASET_API UnicodeCharTokenizer final : public TensorTransform {
969
969
  explicit UnicodeCharTokenizer(bool with_offsets = false);
970
970
 
971
971
  /// \brief Destructor
972
- ~UnicodeCharTokenizer() = default;
972
+ ~UnicodeCharTokenizer() override = default;
973
973
 
974
974
  protected:
975
975
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -1014,7 +1014,7 @@ class DATASET_API WordpieceTokenizer final : public TensorTransform {
1014
1014
  int32_t max_bytes_per_token, const std::vector<char> &unknown_token, bool with_offsets);
1015
1015
 
1016
1016
  /// \brief Destructor
1017
- ~WordpieceTokenizer() = default;
1017
+ ~WordpieceTokenizer() override = default;
1018
1018
 
1019
1019
  protected:
1020
1020
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -1045,7 +1045,7 @@ class DATASET_API UnicodeScriptTokenizer final : public TensorTransform {
1045
1045
  explicit UnicodeScriptTokenizer(bool keep_whitespace = false, bool with_offsets = false);
1046
1046
 
1047
1047
  /// \brief Destructor
1048
- ~UnicodeScriptTokenizer() = default;
1048
+ ~UnicodeScriptTokenizer() override = default;
1049
1049
 
1050
1050
  protected:
1051
1051
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -1074,7 +1074,7 @@ class DATASET_API WhitespaceTokenizer final : public TensorTransform {
1074
1074
  explicit WhitespaceTokenizer(bool with_offsets = false);
1075
1075
 
1076
1076
  /// \brief Destructor
1077
- ~WhitespaceTokenizer() = default;
1077
+ ~WhitespaceTokenizer() override = default;
1078
1078
 
1079
1079
  protected:
1080
1080
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright 2020-2022 Huawei Technologies Co., Ltd
2
+ * Copyright 2020-2023 Huawei Technologies Co., Ltd
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -218,7 +218,7 @@ class DATASET_API Compose final : public TensorTransform {
218
218
  explicit Compose(const std::vector<std::reference_wrapper<TensorTransform>> &transforms);
219
219
 
220
220
  /// \brief Destructor
221
- ~Compose() = default;
221
+ ~Compose() override = default;
222
222
 
223
223
  protected:
224
224
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -251,7 +251,7 @@ class DATASET_API Concatenate final : public TensorTransform {
251
251
  explicit Concatenate(int8_t axis = 0, const MSTensor &prepend = {}, const MSTensor &append = {});
252
252
 
253
253
  /// \brief Destructor
254
- ~Concatenate() = default;
254
+ ~Concatenate() override = default;
255
255
 
256
256
  protected:
257
257
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -281,7 +281,7 @@ class DATASET_API Duplicate final : public TensorTransform {
281
281
  Duplicate();
282
282
 
283
283
  /// \brief Destructor
284
- ~Duplicate() = default;
284
+ ~Duplicate() override = default;
285
285
 
286
286
  protected:
287
287
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -310,7 +310,7 @@ class DATASET_API Fill final : public TensorTransform {
310
310
  explicit Fill(const MSTensor &fill_value);
311
311
 
312
312
  /// \brief Destructor
313
- ~Fill() = default;
313
+ ~Fill() override = default;
314
314
 
315
315
  protected:
316
316
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -346,7 +346,7 @@ class DATASET_API Mask final : public TensorTransform {
346
346
  mindspore::DataType ms_type = mindspore::DataType(mindspore::DataType::kNumberTypeBool));
347
347
 
348
348
  /// \brief Destructor
349
- ~Mask() = default;
349
+ ~Mask() override = default;
350
350
 
351
351
  protected:
352
352
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -377,7 +377,7 @@ class DATASET_API OneHot final : public TensorTransform {
377
377
  explicit OneHot(int32_t num_classes, double smoothing_rate = 0.0);
378
378
 
379
379
  /// \brief Destructor
380
- ~OneHot() = default;
380
+ ~OneHot() override = default;
381
381
 
382
382
  protected:
383
383
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -410,7 +410,7 @@ class DATASET_API PadEnd final : public TensorTransform {
410
410
  explicit PadEnd(const std::vector<dsize_t> &pad_shape, const MSTensor &pad_value = {});
411
411
 
412
412
  /// \brief Destructor
413
- ~PadEnd() = default;
413
+ ~PadEnd() override = default;
414
414
 
415
415
  protected:
416
416
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -474,7 +474,7 @@ class DATASET_API RandomApply final : public TensorTransform {
474
474
  explicit RandomApply(const std::vector<std::reference_wrapper<TensorTransform>> &transforms, double prob = 0.5);
475
475
 
476
476
  /// \brief Destructor
477
- ~RandomApply() = default;
477
+ ~RandomApply() override = default;
478
478
 
479
479
  protected:
480
480
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -535,7 +535,7 @@ class DATASET_API RandomChoice final : public TensorTransform {
535
535
  explicit RandomChoice(const std::vector<std::reference_wrapper<TensorTransform>> &transforms);
536
536
 
537
537
  /// \brief Destructor
538
- ~RandomChoice() = default;
538
+ ~RandomChoice() override = default;
539
539
 
540
540
  protected:
541
541
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -567,7 +567,7 @@ class DATASET_API Slice final : public TensorTransform {
567
567
  explicit Slice(const std::vector<SliceOption> &slice_input);
568
568
 
569
569
  /// \brief Destructor
570
- ~Slice() = default;
570
+ ~Slice() override = default;
571
571
 
572
572
  protected:
573
573
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -596,7 +596,7 @@ class DATASET_API TypeCast final : public TensorTransform {
596
596
  explicit TypeCast(mindspore::DataType data_type);
597
597
 
598
598
  /// \brief Destructor
599
- ~TypeCast() = default;
599
+ ~TypeCast() override = default;
600
600
 
601
601
  protected:
602
602
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.
@@ -625,7 +625,7 @@ class DATASET_API Unique final : public TensorTransform {
625
625
  Unique();
626
626
 
627
627
  /// \brief Destructor
628
- ~Unique() = default;
628
+ ~Unique() override = default;
629
629
 
630
630
  protected:
631
631
  /// \brief The function to convert a TensorTransform object into a TensorOperation object.