mindspore 2.0.0a0__cp39-cp39-win_amd64.whl → 2.0.0rc1__cp39-cp39-win_amd64.whl

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

Potentially problematic release.


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

Files changed (655) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +4 -2
  3. mindspore/_c_dataengine.cp39-win_amd64.pyd +0 -0
  4. mindspore/_c_expression.cp39-win_amd64.pyd +0 -0
  5. mindspore/_c_mindrecord.cp39-win_amd64.pyd +0 -0
  6. mindspore/_check_jit_forbidden_api.py +102 -0
  7. mindspore/_checkparam.py +1066 -1001
  8. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +4 -3
  9. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +50 -48
  10. mindspore/_extends/parallel_compile/akg_compiler/util.py +9 -4
  11. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +4 -4
  12. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +9 -4
  13. mindspore/_extends/parse/__init__.py +5 -3
  14. mindspore/_extends/parse/namespace.py +16 -1
  15. mindspore/_extends/parse/parser.py +107 -22
  16. mindspore/_extends/parse/resources.py +0 -7
  17. mindspore/_extends/parse/standard_method.py +885 -413
  18. mindspore/amp.py +52 -57
  19. mindspore/boost/boost.py +2 -2
  20. mindspore/boost/boost_cell_wrapper.py +38 -20
  21. mindspore/boost/dim_reduce.py +3 -3
  22. mindspore/boost/group_loss_scale_manager.py +1 -1
  23. mindspore/common/__init__.py +4 -6
  24. mindspore/common/_decorator.py +2 -0
  25. mindspore/common/_register_for_adapter.py +55 -0
  26. mindspore/common/_stub_tensor.py +201 -0
  27. mindspore/common/_utils.py +41 -7
  28. mindspore/common/api.py +215 -141
  29. mindspore/common/dtype.py +8 -1
  30. mindspore/common/dump.py +2 -2
  31. mindspore/common/initializer.py +4 -2
  32. mindspore/common/jit_config.py +17 -13
  33. mindspore/common/mutable.py +33 -13
  34. mindspore/common/parameter.py +23 -21
  35. mindspore/common/seed.py +8 -24
  36. mindspore/common/sparse_tensor.py +62 -41
  37. mindspore/common/tensor.py +852 -1154
  38. mindspore/communication/__init__.py +2 -2
  39. mindspore/communication/_comm_helper.py +11 -4
  40. mindspore/communication/management.py +22 -21
  41. mindspore/config/op_info.config +501 -1008
  42. mindspore/context.py +201 -23
  43. mindspore/dataset/__init__.py +6 -6
  44. mindspore/dataset/audio/__init__.py +7 -7
  45. mindspore/dataset/audio/transforms.py +670 -30
  46. mindspore/dataset/audio/utils.py +47 -4
  47. mindspore/dataset/audio/validators.py +223 -1
  48. mindspore/dataset/callback/ds_callback.py +2 -2
  49. mindspore/dataset/core/config.py +210 -14
  50. mindspore/dataset/core/validator_helpers.py +2 -2
  51. mindspore/{parallel/nn/layers.py → dataset/debug/__init__.py} +7 -8
  52. mindspore/dataset/debug/debug_hook.py +65 -0
  53. mindspore/dataset/debug/pre_defined_hook.py +67 -0
  54. mindspore/dataset/engine/__init__.py +7 -3
  55. mindspore/dataset/engine/cache_client.py +1 -1
  56. mindspore/dataset/engine/datasets.py +322 -66
  57. mindspore/dataset/engine/datasets_audio.py +80 -76
  58. mindspore/dataset/engine/datasets_standard_format.py +51 -38
  59. mindspore/dataset/engine/datasets_text.py +232 -118
  60. mindspore/dataset/engine/datasets_user_defined.py +41 -17
  61. mindspore/dataset/engine/datasets_vision.py +746 -225
  62. mindspore/dataset/engine/graphdata.py +75 -10
  63. mindspore/dataset/engine/iterators.py +45 -5
  64. mindspore/dataset/engine/offload.py +48 -28
  65. mindspore/dataset/engine/validators.py +117 -8
  66. mindspore/dataset/text/__init__.py +6 -5
  67. mindspore/dataset/text/transforms.py +86 -3
  68. mindspore/dataset/text/utils.py +6 -4
  69. mindspore/dataset/text/validators.py +25 -0
  70. mindspore/dataset/transforms/__init__.py +3 -2
  71. mindspore/dataset/transforms/c_transforms.py +1 -1
  72. mindspore/dataset/transforms/transforms.py +2 -2
  73. mindspore/dataset/utils/__init__.py +2 -1
  74. mindspore/dataset/utils/line_reader.py +121 -0
  75. mindspore/dataset/vision/__init__.py +2 -3
  76. mindspore/dataset/vision/c_transforms.py +9 -9
  77. mindspore/dataset/vision/py_transforms.py +5 -5
  78. mindspore/dataset/vision/py_transforms_util.py +2 -0
  79. mindspore/dataset/vision/transforms.py +160 -161
  80. mindspore/dataset/vision/utils.py +3 -3
  81. mindspore/experimental/map_parameter.py +38 -26
  82. mindspore/include/OWNERS +0 -1
  83. mindspore/include/api/callback/callback.h +9 -13
  84. mindspore/include/api/callback/ckpt_saver.h +2 -2
  85. mindspore/include/api/callback/loss_monitor.h +2 -2
  86. mindspore/include/api/callback/lr_scheduler.h +5 -5
  87. mindspore/include/api/callback/time_monitor.h +2 -2
  88. mindspore/include/api/callback/train_accuracy.h +4 -6
  89. mindspore/include/api/cfg.h +19 -6
  90. mindspore/include/api/context.h +44 -9
  91. mindspore/include/api/delegate.h +1 -1
  92. mindspore/include/api/metrics/accuracy.h +2 -2
  93. mindspore/include/api/metrics/metrics.h +4 -3
  94. mindspore/include/api/model.h +9 -4
  95. mindspore/include/api/model_parallel_runner.h +2 -2
  96. mindspore/include/api/net.h +12 -11
  97. mindspore/include/api/serialization.h +19 -3
  98. mindspore/include/api/types.h +3 -3
  99. mindspore/include/dataset/constants.h +7 -0
  100. mindspore/include/dataset/text.h +59 -0
  101. mindspore/jpeg62.dll +0 -0
  102. mindspore/log.py +1 -1
  103. mindspore/mindrecord/filereader.py +18 -0
  104. mindspore/mindrecord/filewriter.py +197 -34
  105. mindspore/mindrecord/shardreader.py +9 -0
  106. mindspore/mindrecord/shardwriter.py +1 -1
  107. mindspore/mindrecord/tools/cifar100_to_mr.py +3 -3
  108. mindspore/mindrecord/tools/cifar10_to_mr.py +3 -3
  109. mindspore/mindrecord/tools/csv_to_mr.py +3 -3
  110. mindspore/mindrecord/tools/imagenet_to_mr.py +16 -11
  111. mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
  112. mindspore/mindrecord/tools/tfrecord_to_mr.py +6 -6
  113. mindspore/mindspore_backend.dll +0 -0
  114. mindspore/mindspore_common.dll +0 -0
  115. mindspore/mindspore_core.dll +0 -0
  116. mindspore/mindspore_glog.dll +0 -0
  117. mindspore/mindspore_shared_lib.dll +0 -0
  118. mindspore/nn/__init__.py +0 -4
  119. mindspore/nn/cell.py +204 -132
  120. mindspore/nn/dynamic_lr.py +1 -1
  121. mindspore/nn/grad/cell_grad.py +7 -6
  122. mindspore/nn/layer/__init__.py +5 -4
  123. mindspore/nn/layer/activation.py +40 -89
  124. mindspore/nn/layer/basic.py +255 -624
  125. mindspore/nn/layer/channel_shuffle.py +7 -6
  126. mindspore/nn/layer/combined.py +1 -1
  127. mindspore/nn/layer/container.py +41 -4
  128. mindspore/nn/layer/conv.py +64 -28
  129. mindspore/nn/layer/dense.py +9 -8
  130. mindspore/nn/layer/embedding.py +27 -25
  131. mindspore/nn/layer/image.py +53 -46
  132. mindspore/nn/layer/math.py +97 -105
  133. mindspore/nn/layer/normalization.py +117 -86
  134. mindspore/nn/layer/padding.py +185 -95
  135. mindspore/nn/layer/pooling.py +817 -414
  136. mindspore/nn/layer/rnn_cells.py +10 -15
  137. mindspore/nn/layer/rnns.py +37 -38
  138. mindspore/nn/layer/thor_layer.py +11 -12
  139. mindspore/nn/layer/timedistributed.py +5 -5
  140. mindspore/nn/layer/transformer.py +701 -0
  141. mindspore/nn/learning_rate_schedule.py +8 -8
  142. mindspore/nn/loss/__init__.py +5 -4
  143. mindspore/nn/loss/loss.py +334 -199
  144. mindspore/nn/optim/ada_grad.py +6 -6
  145. mindspore/nn/optim/adadelta.py +2 -3
  146. mindspore/nn/optim/adafactor.py +4 -5
  147. mindspore/nn/optim/adam.py +126 -62
  148. mindspore/nn/optim/adamax.py +3 -4
  149. mindspore/nn/optim/adasum.py +6 -6
  150. mindspore/nn/optim/asgd.py +2 -2
  151. mindspore/nn/optim/ftrl.py +67 -38
  152. mindspore/nn/optim/lamb.py +4 -5
  153. mindspore/nn/optim/lars.py +2 -2
  154. mindspore/nn/optim/lazyadam.py +43 -4
  155. mindspore/nn/optim/momentum.py +6 -5
  156. mindspore/nn/optim/optimizer.py +3 -1
  157. mindspore/nn/optim/proximal_ada_grad.py +2 -2
  158. mindspore/nn/optim/rmsprop.py +1 -1
  159. mindspore/nn/optim/rprop.py +8 -9
  160. mindspore/nn/optim/sgd.py +19 -13
  161. mindspore/nn/optim/thor.py +10 -15
  162. mindspore/nn/probability/__init__.py +0 -2
  163. mindspore/nn/probability/bijector/bijector.py +4 -4
  164. mindspore/nn/probability/bijector/invert.py +1 -1
  165. mindspore/nn/probability/bijector/softplus.py +2 -2
  166. mindspore/nn/probability/bnn_layers/dense_variational.py +1 -1
  167. mindspore/nn/probability/bnn_layers/layer_distribution.py +2 -2
  168. mindspore/nn/probability/distribution/_utils/utils.py +9 -15
  169. mindspore/nn/probability/distribution/bernoulli.py +3 -3
  170. mindspore/nn/probability/distribution/beta.py +1 -1
  171. mindspore/nn/probability/distribution/categorical.py +5 -7
  172. mindspore/nn/probability/distribution/cauchy.py +3 -3
  173. mindspore/nn/probability/distribution/distribution.py +2 -2
  174. mindspore/nn/probability/distribution/exponential.py +2 -2
  175. mindspore/nn/probability/distribution/gamma.py +3 -3
  176. mindspore/nn/probability/distribution/geometric.py +1 -1
  177. mindspore/nn/probability/distribution/gumbel.py +3 -3
  178. mindspore/nn/probability/distribution/half_normal.py +15 -11
  179. mindspore/nn/probability/distribution/laplace.py +16 -13
  180. mindspore/nn/probability/distribution/logistic.py +2 -2
  181. mindspore/nn/probability/distribution/normal.py +1 -1
  182. mindspore/nn/probability/distribution/poisson.py +1 -1
  183. mindspore/nn/probability/distribution/student_t.py +20 -15
  184. mindspore/nn/probability/distribution/transformed_distribution.py +4 -4
  185. mindspore/nn/probability/distribution/uniform.py +2 -2
  186. mindspore/nn/reinforcement/_tensors_queue.py +3 -3
  187. mindspore/nn/reinforcement/tensor_array.py +2 -2
  188. mindspore/nn/sparse/sparse.py +2 -2
  189. mindspore/nn/wrap/cell_wrapper.py +27 -10
  190. mindspore/nn/wrap/grad_reducer.py +2 -2
  191. mindspore/nn/wrap/loss_scale.py +40 -24
  192. mindspore/numpy/array_creations.py +33 -22
  193. mindspore/numpy/array_ops.py +35 -30
  194. mindspore/numpy/logic_ops.py +6 -27
  195. mindspore/numpy/math_ops.py +22 -19
  196. mindspore/numpy/utils.py +1 -1
  197. mindspore/numpy/utils_const.py +108 -58
  198. mindspore/opencv_core452.dll +0 -0
  199. mindspore/opencv_imgcodecs452.dll +0 -0
  200. mindspore/opencv_imgproc452.dll +0 -0
  201. mindspore/ops/_constants.py +0 -6
  202. mindspore/ops/_grad/__init__.py +2 -1
  203. mindspore/ops/_grad/grad_array_ops.py +86 -117
  204. mindspore/ops/_grad/grad_base.py +23 -1
  205. mindspore/ops/_grad/grad_clip_ops.py +2 -3
  206. mindspore/ops/_grad/grad_comm_ops.py +34 -24
  207. mindspore/ops/_grad/grad_implementations.py +9 -45
  208. mindspore/ops/_grad/grad_inner_ops.py +47 -4
  209. mindspore/ops/_grad/grad_math_ops.py +142 -117
  210. mindspore/ops/_grad/grad_nn_ops.py +71 -165
  211. mindspore/ops/_grad/grad_sequence_ops.py +296 -0
  212. mindspore/ops/_grad/grad_sparse.py +7 -6
  213. mindspore/ops/_grad_experimental/__init__.py +1 -0
  214. mindspore/ops/_grad_experimental/grad_array_ops.py +150 -15
  215. mindspore/ops/_grad_experimental/grad_image_ops.py +16 -7
  216. mindspore/ops/_grad_experimental/grad_inner_ops.py +1 -22
  217. mindspore/ops/_grad_experimental/grad_linalg_ops.py +4 -11
  218. mindspore/ops/_grad_experimental/grad_math_ops.py +210 -89
  219. mindspore/ops/_grad_experimental/grad_nn_ops.py +26 -22
  220. mindspore/ops/_grad_experimental/grad_scalar_ops.py +112 -0
  221. mindspore/ops/_grad_experimental/grad_sparse_ops.py +49 -8
  222. mindspore/ops/_op_impl/_custom_op/batch_matmul_impl.py +1 -1
  223. mindspore/ops/_op_impl/_custom_op/batchnorm_fold.py +2 -2
  224. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2.py +2 -2
  225. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad.py +2 -2
  226. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad_reduce.py +4 -4
  227. mindspore/ops/_op_impl/_custom_op/batchnorm_fold_grad.py +3 -3
  228. mindspore/ops/_op_impl/_custom_op/cholesky_trsm_impl.py +1 -1
  229. mindspore/ops/_op_impl/_custom_op/correction_mul.py +2 -2
  230. mindspore/ops/_op_impl/_custom_op/correction_mul_grad.py +2 -2
  231. mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -5
  232. mindspore/ops/_op_impl/_custom_op/dsd_impl.py +1 -1
  233. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel.py +2 -2
  234. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad.py +2 -2
  235. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad_reduce.py +2 -2
  236. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer.py +2 -2
  237. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad.py +2 -2
  238. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad_reduce.py +2 -2
  239. mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel.py +2 -2
  240. mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel_grad.py +2 -2
  241. mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer.py +2 -2
  242. mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer_grad.py +2 -2
  243. mindspore/ops/_op_impl/_custom_op/fused_abs_max1_impl.py +1 -1
  244. mindspore/ops/_op_impl/_custom_op/img2col_impl.py +1 -1
  245. mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_left_impl.py +2 -2
  246. mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_right_impl.py +1 -1
  247. mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_left_cast_impl.py +1 -1
  248. mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_right_mul_impl.py +1 -1
  249. mindspore/ops/_op_impl/_custom_op/matmul_cube_impl.py +2 -2
  250. mindspore/ops/_op_impl/_custom_op/matmul_dds_impl.py +0 -4
  251. mindspore/ops/_op_impl/_custom_op/matrix_combine_impl.py +1 -1
  252. mindspore/ops/_op_impl/_custom_op/minmax_update_perchannel.py +2 -2
  253. mindspore/ops/_op_impl/_custom_op/minmax_update_perlayer.py +2 -2
  254. mindspore/ops/_op_impl/_custom_op/transpose02314_impl.py +1 -1
  255. mindspore/ops/_op_impl/aicpu/__init__.py +236 -4
  256. mindspore/ops/_op_impl/aicpu/abs.py +36 -0
  257. mindspore/ops/_op_impl/aicpu/{adaptive_avg_pool_2d_v1.py → adaptive_avg_pool_2d.py} +6 -5
  258. mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_2d_grad.py +34 -0
  259. mindspore/ops/_op_impl/aicpu/add.py +43 -0
  260. mindspore/ops/_op_impl/aicpu/addcdiv.py +0 -32
  261. mindspore/ops/_op_impl/aicpu/addcmul.py +0 -84
  262. mindspore/ops/_op_impl/aicpu/affine_grid_grad.py +35 -0
  263. mindspore/ops/_op_impl/aicpu/batch_matmul.py +43 -43
  264. mindspore/ops/_op_impl/aicpu/bernoulli.py +48 -0
  265. mindspore/{compression/common/__init__.py → ops/_op_impl/aicpu/bessel_i0.py} +15 -8
  266. mindspore/ops/_op_impl/aicpu/channel_shuffle.py +40 -0
  267. mindspore/ops/_op_impl/aicpu/conj.py +11 -0
  268. mindspore/ops/_op_impl/aicpu/cumulative_logsumexp.py +0 -3
  269. mindspore/ops/_op_impl/aicpu/deformable_offsets.py +38 -0
  270. mindspore/ops/_op_impl/aicpu/deformable_offsets_grad.py +43 -0
  271. mindspore/ops/_op_impl/aicpu/{adaptive_avg_pool_2d_grad_v1.py → digamma.py} +7 -9
  272. mindspore/ops/_op_impl/aicpu/flatten.py +1 -0
  273. mindspore/ops/_op_impl/aicpu/fmax.py +36 -0
  274. mindspore/ops/_op_impl/aicpu/fmin.py +37 -0
  275. mindspore/ops/_op_impl/aicpu/fractional_max_pool3d_with_fixed_ksize.py +1 -1
  276. mindspore/ops/_op_impl/aicpu/fse_decode.py +43 -0
  277. mindspore/ops/_op_impl/aicpu/greater.py +41 -0
  278. mindspore/ops/_op_impl/aicpu/greater_equal.py +41 -0
  279. mindspore/ops/_op_impl/aicpu/index_put.py +50 -0
  280. mindspore/ops/_op_impl/aicpu/less.py +41 -0
  281. mindspore/{nn/probability/infer/variational/__init__.py → ops/_op_impl/aicpu/lgamma.py} +16 -10
  282. mindspore/ops/_op_impl/aicpu/mirror_pad.py +0 -4
  283. mindspore/ops/_op_impl/aicpu/mirror_pad_grad.py +0 -4
  284. mindspore/ops/_op_impl/aicpu/mul.py +3 -1
  285. mindspore/ops/_op_impl/aicpu/multinomial.py +14 -6
  286. mindspore/ops/_op_impl/aicpu/nllloss.py +38 -0
  287. mindspore/ops/_op_impl/aicpu/nllloss_grad.py +39 -0
  288. mindspore/ops/_op_impl/aicpu/ones_like.py +0 -2
  289. mindspore/ops/_op_impl/aicpu/polar.py +32 -0
  290. mindspore/ops/_op_impl/aicpu/polygamma.py +34 -0
  291. mindspore/ops/_op_impl/aicpu/quant_dtype_cast.py +40 -0
  292. mindspore/ops/_op_impl/aicpu/quantile.py +35 -0
  293. mindspore/ops/_op_impl/aicpu/ragged_tensor_to_sparse.py +73 -0
  294. mindspore/ops/_op_impl/aicpu/randperm_v2.py +41 -0
  295. mindspore/ops/_op_impl/aicpu/resize_bicubic.py +2 -8
  296. mindspore/ops/_op_impl/aicpu/resize_bicubic_grad.py +1 -1
  297. mindspore/ops/_op_impl/aicpu/resize_v2.py +68 -0
  298. mindspore/ops/_op_impl/aicpu/resize_v2_grad.py +68 -0
  299. mindspore/ops/_op_impl/aicpu/scatter_elements.py +4 -0
  300. mindspore/ops/_op_impl/aicpu/scatter_nd_update.py +2 -0
  301. mindspore/ops/_op_impl/aicpu/sequence_add.py +34 -0
  302. mindspore/ops/_op_impl/aicpu/sequence_add_offset.py +34 -0
  303. mindspore/ops/_op_impl/aicpu/sequence_addn.py +38 -0
  304. mindspore/ops/_op_impl/aicpu/smooth_l1_loss.py +35 -0
  305. mindspore/ops/_op_impl/aicpu/smooth_l1_loss_grad.py +37 -0
  306. mindspore/ops/_op_impl/aicpu/sparse_apply_adagrad_da.py +0 -24
  307. mindspore/ops/_op_impl/aicpu/sparse_cross.py +42 -0
  308. mindspore/ops/_op_impl/aicpu/sparse_slice.py +4 -0
  309. mindspore/ops/_op_impl/aicpu/sparse_slice_grad.py +6 -0
  310. mindspore/ops/_op_impl/aicpu/tensor_scatter_update.py +59 -0
  311. mindspore/ops/_op_impl/aicpu/trans_data.py +1 -0
  312. mindspore/ops/_op_impl/aicpu/tril_indices.py +34 -0
  313. mindspore/ops/_op_impl/aicpu/uniform.py +34 -0
  314. mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +1 -0
  315. mindspore/ops/_op_impl/aicpu/unique_consecutive.py +10 -2
  316. mindspore/ops/_op_impl/cpu/dynamic_shape.py +5 -1
  317. mindspore/ops/_op_impl/cpu/sparse_slice.py +4 -0
  318. mindspore/ops/_op_impl/cpu/sparse_slice_grad.py +6 -0
  319. mindspore/ops/_op_impl/cpu/tensor_shape.py +5 -1
  320. mindspore/ops/_op_impl/tbe/__init__.py +27 -611
  321. mindspore/ops/_op_impl/tbe/assign_add_ds.py +1 -0
  322. mindspore/ops/_op_impl/tbe/atomic_addr_clean.py +1 -1
  323. mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +1 -1
  324. mindspore/ops/_op_impl/tbe/batch_matmul_ds.py +1 -0
  325. mindspore/ops/_op_impl/tbe/batch_to_space.py +1 -1
  326. mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +1 -1
  327. mindspore/ops/_op_impl/tbe/bn_infer_grad.py +4 -2
  328. mindspore/ops/_op_impl/tbe/bn_training_update.py +0 -1
  329. mindspore/ops/_op_impl/tbe/bn_training_update_ds.py +0 -1
  330. mindspore/ops/_op_impl/tbe/broadcast_to_ds.py +6 -4
  331. mindspore/ops/_op_impl/tbe/cast.py +0 -2
  332. mindspore/ops/_op_impl/tbe/cast_ds.py +3 -3
  333. mindspore/ops/_op_impl/tbe/data_format_dim_map_ds.py +1 -0
  334. mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +2 -2
  335. mindspore/ops/_op_impl/tbe/dynamic_atomic_addr_clean.py +1 -1
  336. mindspore/ops/_op_impl/tbe/gather_nd.py +1 -0
  337. mindspore/ops/_op_impl/tbe/{index_add.py → inplace_index_add.py} +3 -6
  338. mindspore/ops/_op_impl/tbe/matmul_ds.py +2 -0
  339. mindspore/ops/_op_impl/tbe/npu_clear_float_status_v2.py +35 -0
  340. mindspore/ops/_op_impl/tbe/npu_get_float_status_v2.py +35 -0
  341. mindspore/ops/_op_impl/tbe/scatter_mul.py +2 -0
  342. mindspore/ops/_op_impl/tbe/scatter_nd_add.py +0 -2
  343. mindspore/ops/_op_impl/tbe/space_to_batch.py +1 -1
  344. mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +1 -1
  345. mindspore/ops/_op_impl/tbe/trans_data_ds.py +15 -5
  346. mindspore/ops/_register_for_op.py +1 -0
  347. mindspore/ops/_utils/__init__.py +1 -2
  348. mindspore/ops/_utils/utils.py +19 -40
  349. mindspore/ops/_vmap/vmap_array_ops.py +116 -38
  350. mindspore/ops/_vmap/vmap_base.py +16 -9
  351. mindspore/ops/_vmap/vmap_convolution_ops.py +7 -10
  352. mindspore/ops/_vmap/vmap_grad_math_ops.py +4 -4
  353. mindspore/ops/_vmap/vmap_grad_nn_ops.py +7 -5
  354. mindspore/ops/_vmap/vmap_image_ops.py +12 -5
  355. mindspore/ops/_vmap/vmap_math_ops.py +46 -5
  356. mindspore/ops/_vmap/vmap_nn_ops.py +15 -21
  357. mindspore/ops/_vmap/vmap_random_ops.py +1 -1
  358. mindspore/ops/bprop_mindir/AdaptiveAvgPool2D_bprop.mindir +0 -0
  359. mindspore/ops/bprop_mindir/AdaptiveMaxPool2D_bprop.mindir +0 -0
  360. mindspore/ops/bprop_mindir/AvgPool3D_bprop.mindir +150 -0
  361. mindspore/ops/bprop_mindir/AvgPool_bprop.mindir +66 -0
  362. mindspore/ops/bprop_mindir/BCEWithLogitsLoss_bprop.mindir +0 -0
  363. mindspore/ops/bprop_mindir/BatchNormGrad_bprop.mindir +0 -0
  364. mindspore/ops/bprop_mindir/BiasAddGrad_bprop.mindir +0 -0
  365. mindspore/ops/bprop_mindir/BinaryCrossEntropy_bprop.mindir +33 -0
  366. mindspore/ops/bprop_mindir/BroadcastTo_bprop.mindir +220 -106
  367. mindspore/ops/bprop_mindir/CTCLoss_bprop.mindir +0 -0
  368. mindspore/ops/bprop_mindir/Conv2DBackpropFilter_bprop.mindir +240 -0
  369. mindspore/ops/bprop_mindir/Conv2DBackpropInput_bprop.mindir +247 -0
  370. mindspore/ops/bprop_mindir/Conv2DTranspose_bprop.mindir +247 -0
  371. mindspore/ops/bprop_mindir/Conv3DTranspose_bprop.mindir +315 -0
  372. mindspore/ops/bprop_mindir/Conv3D_bprop.mindir +278 -0
  373. mindspore/ops/bprop_mindir/DeformableOffsets_bprop.mindir +58 -0
  374. mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +138 -0
  375. mindspore/ops/bprop_mindir/Dropout2D_bprop.mindir +0 -0
  376. mindspore/ops/bprop_mindir/Dropout3D_bprop.mindir +0 -0
  377. mindspore/ops/bprop_mindir/DropoutDoMask_bprop.mindir +22 -23
  378. mindspore/ops/bprop_mindir/DropoutGenMask_bprop.mindir +16 -17
  379. mindspore/ops/bprop_mindir/DropoutGrad_bprop.mindir +27 -0
  380. mindspore/ops/bprop_mindir/Dropout_bprop.mindir +0 -0
  381. mindspore/ops/bprop_mindir/DynamicGRUV2_bprop.mindir +0 -0
  382. mindspore/ops/bprop_mindir/DynamicRNN_bprop.mindir +0 -0
  383. mindspore/ops/bprop_mindir/Elu_bprop.mindir +16 -0
  384. mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
  385. mindspore/ops/bprop_mindir/ExpandDims_bprop.mindir +39 -41
  386. mindspore/ops/bprop_mindir/FastGeLU_bprop.mindir +16 -0
  387. mindspore/ops/bprop_mindir/Flatten_bprop.mindir +41 -43
  388. mindspore/ops/bprop_mindir/GatherNd_bprop.mindir +51 -57
  389. mindspore/ops/bprop_mindir/Gather_bprop.mindir +0 -0
  390. mindspore/ops/bprop_mindir/HSigmoid_bprop.mindir +16 -0
  391. mindspore/ops/bprop_mindir/HSwish_bprop.mindir +16 -0
  392. mindspore/ops/bprop_mindir/InstanceNorm_bprop.mindir +0 -0
  393. mindspore/ops/bprop_mindir/KLDivLoss_bprop.mindir +126 -0
  394. mindspore/ops/bprop_mindir/L2Loss_bprop.mindir +15 -0
  395. mindspore/ops/bprop_mindir/L2Normalize_bprop.mindir +30 -0
  396. mindspore/ops/bprop_mindir/LRN_bprop.mindir +43 -0
  397. mindspore/ops/bprop_mindir/LayerNormGrad_bprop.mindir +0 -0
  398. mindspore/ops/bprop_mindir/LogSoftmax_bprop.mindir +23 -0
  399. mindspore/ops/bprop_mindir/MaxPool3DGradGrad_bprop.mindir +74 -0
  400. mindspore/ops/bprop_mindir/MaxPool3DGrad_bprop.mindir +74 -0
  401. mindspore/ops/bprop_mindir/MaxPool3D_bprop.mindir +75 -0
  402. mindspore/ops/bprop_mindir/MaxPoolGradGrad_bprop.mindir +65 -0
  403. mindspore/ops/bprop_mindir/MaxPoolWithArgmax_bprop.mindir +0 -0
  404. mindspore/ops/bprop_mindir/MirrorPad_bprop.mindir +27 -0
  405. mindspore/ops/bprop_mindir/Mish_bprop.mindir +35 -0
  406. mindspore/ops/bprop_mindir/MulNoNan_bprop.mindir +0 -0
  407. mindspore/ops/bprop_mindir/NLLLoss_bprop.mindir +0 -0
  408. mindspore/ops/bprop_mindir/OneHot_bprop.mindir +24 -25
  409. mindspore/ops/bprop_mindir/PReLU_bprop.mindir +0 -0
  410. mindspore/ops/bprop_mindir/Pad_bprop.mindir +0 -0
  411. mindspore/ops/bprop_mindir/Padding_bprop.mindir +0 -0
  412. mindspore/ops/bprop_mindir/RNNTLoss_bprop.mindir +29 -0
  413. mindspore/ops/bprop_mindir/ROIAlign_bprop.mindir +82 -0
  414. mindspore/ops/bprop_mindir/ReLU6_bprop.mindir +16 -0
  415. mindspore/ops/bprop_mindir/ReLUV2_bprop.mindir +0 -0
  416. mindspore/ops/bprop_mindir/ReluGrad_bprop.mindir +18 -19
  417. mindspore/ops/bprop_mindir/Reshape_bprop.mindir +53 -53
  418. mindspore/ops/bprop_mindir/ResizeBilinear_bprop.mindir +29 -0
  419. mindspore/ops/bprop_mindir/ResizeNearestNeighbor_bprop.mindir +77 -85
  420. mindspore/ops/bprop_mindir/SeLU_bprop.mindir +21 -0
  421. mindspore/ops/bprop_mindir/SigmoidCrossEntropyWithLogits_bprop.mindir +21 -0
  422. mindspore/ops/bprop_mindir/SigmoidGrad_bprop.mindir +0 -0
  423. mindspore/ops/bprop_mindir/Sigmoid_bprop.mindir +16 -0
  424. mindspore/ops/bprop_mindir/SmoothL1Loss_bprop.mindir +36 -0
  425. mindspore/ops/bprop_mindir/SoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  426. mindspore/ops/bprop_mindir/Softplus_bprop.mindir +16 -0
  427. mindspore/ops/bprop_mindir/Softsign_bprop.mindir +33 -0
  428. mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  429. mindspore/ops/bprop_mindir/Squeeze_bprop.mindir +37 -39
  430. mindspore/ops/bprop_mindir/StridedSlice_bprop.mindir +70 -72
  431. mindspore/ops/bprop_mindir/TanhGrad_bprop.mindir +0 -0
  432. mindspore/ops/bprop_mindir/Tanh_bprop.mindir +66 -0
  433. mindspore/ops/bprop_mindir/Tile_bprop.mindir +0 -0
  434. mindspore/ops/bprop_mindir/TopK_bprop.mindir +0 -0
  435. mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +17 -17
  436. mindspore/ops/bprop_mindir/UpsampleNearest3D_bprop.mindir +32 -0
  437. mindspore/ops/bprop_mindir/UpsampleTrilinear3D_bprop.mindir +38 -0
  438. mindspore/ops/bprop_mindir/generate_mindir.py +2 -0
  439. mindspore/ops/composite/__init__.py +7 -8
  440. mindspore/ops/composite/base.py +101 -47
  441. mindspore/ops/composite/math_ops.py +188 -158
  442. mindspore/ops/composite/multitype_ops/_compile_utils.py +415 -170
  443. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +142 -87
  444. mindspore/ops/composite/multitype_ops/add_impl.py +6 -1
  445. mindspore/ops/composite/multitype_ops/div_impl.py +2 -3
  446. mindspore/ops/composite/multitype_ops/getitem_impl.py +31 -3
  447. mindspore/ops/composite/multitype_ops/greater_equal_impl.py +31 -0
  448. mindspore/ops/composite/multitype_ops/greater_impl.py +31 -0
  449. mindspore/ops/composite/multitype_ops/in_impl.py +9 -0
  450. mindspore/ops/composite/multitype_ops/less_equal_impl.py +31 -0
  451. mindspore/ops/composite/multitype_ops/less_impl.py +31 -0
  452. mindspore/ops/composite/multitype_ops/mul_impl.py +21 -5
  453. mindspore/ops/composite/multitype_ops/not_in_impl.py +9 -0
  454. mindspore/ops/composite/multitype_ops/ones_like_impl.py +2 -4
  455. mindspore/ops/composite/multitype_ops/setitem_impl.py +21 -3
  456. mindspore/ops/composite/multitype_ops/sub_impl.py +1 -1
  457. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +35 -4
  458. mindspore/ops/function/__init__.py +152 -8
  459. mindspore/ops/function/array_func.py +2555 -674
  460. mindspore/ops/function/clip_func.py +209 -13
  461. mindspore/ops/function/debug_func.py +2 -2
  462. mindspore/ops/function/grad/__init__.py +2 -1
  463. mindspore/ops/function/grad/grad_func.py +147 -62
  464. mindspore/ops/function/image_func.py +54 -38
  465. mindspore/ops/function/linalg_func.py +167 -16
  466. mindspore/ops/function/math_func.py +4849 -1492
  467. mindspore/ops/function/nn_func.py +2573 -988
  468. mindspore/ops/function/other_func.py +115 -0
  469. mindspore/ops/function/parameter_func.py +3 -3
  470. mindspore/ops/function/random_func.py +790 -73
  471. mindspore/ops/function/sparse_func.py +98 -78
  472. mindspore/ops/function/sparse_unary_func.py +54 -53
  473. mindspore/ops/function/spectral_func.py +27 -24
  474. mindspore/ops/function/vmap_func.py +22 -2
  475. mindspore/ops/functional.py +97 -37
  476. mindspore/ops/op_info_register.py +70 -28
  477. mindspore/ops/operations/__init__.py +47 -14
  478. mindspore/ops/operations/_csr_ops.py +7 -7
  479. mindspore/ops/operations/_embedding_cache_ops.py +5 -5
  480. mindspore/ops/operations/_grad_ops.py +276 -187
  481. mindspore/ops/operations/_inner_ops.py +319 -113
  482. mindspore/ops/operations/_ms_kernel.py +10 -8
  483. mindspore/ops/operations/_ocr_ops.py +9 -9
  484. mindspore/ops/operations/_opaque_predicate_registry.py +4 -0
  485. mindspore/ops/operations/_quant_ops.py +137 -102
  486. mindspore/ops/operations/_rl_inner_ops.py +121 -60
  487. mindspore/ops/operations/_scalar_ops.py +466 -0
  488. mindspore/ops/operations/_sequence_ops.py +1004 -2
  489. mindspore/ops/operations/_tensor_array.py +10 -11
  490. mindspore/ops/operations/_thor_ops.py +1 -1
  491. mindspore/ops/operations/array_ops.py +801 -466
  492. mindspore/ops/operations/comm_ops.py +51 -49
  493. mindspore/ops/operations/control_ops.py +2 -2
  494. mindspore/ops/operations/custom_ops.py +123 -44
  495. mindspore/ops/operations/debug_ops.py +24 -24
  496. mindspore/ops/operations/image_ops.py +240 -153
  497. mindspore/ops/operations/inner_ops.py +34 -50
  498. mindspore/ops/operations/linalg_ops.py +31 -9
  499. mindspore/ops/operations/math_ops.py +988 -757
  500. mindspore/ops/operations/nn_ops.py +965 -819
  501. mindspore/ops/operations/other_ops.py +51 -40
  502. mindspore/ops/operations/random_ops.py +204 -122
  503. mindspore/ops/operations/rl_ops.py +8 -9
  504. mindspore/ops/operations/sparse_ops.py +254 -93
  505. mindspore/ops/operations/spectral_ops.py +35 -3
  506. mindspore/ops/primitive.py +111 -9
  507. mindspore/parallel/_auto_parallel_context.py +189 -83
  508. mindspore/parallel/_offload_context.py +185 -0
  509. mindspore/parallel/_parallel_serialization.py +99 -7
  510. mindspore/parallel/_ps_context.py +9 -5
  511. mindspore/parallel/_recovery_context.py +1 -1
  512. mindspore/parallel/_tensor.py +7 -1
  513. mindspore/{nn/transformer → parallel/_transformer}/__init__.py +6 -6
  514. mindspore/{nn/transformer → parallel/_transformer}/layers.py +6 -37
  515. mindspore/{nn/transformer → parallel/_transformer}/loss.py +4 -7
  516. mindspore/{nn/transformer → parallel/_transformer}/moe.py +20 -16
  517. mindspore/{nn/transformer → parallel/_transformer}/op_parallel_config.py +3 -3
  518. mindspore/{nn/transformer → parallel/_transformer}/transformer.py +48 -111
  519. mindspore/parallel/_utils.py +1 -2
  520. mindspore/parallel/algo_parameter_config.py +1 -1
  521. mindspore/parallel/checkpoint_transform.py +37 -34
  522. mindspore/parallel/shard.py +17 -18
  523. mindspore/profiler/common/validator/validate_path.py +2 -2
  524. mindspore/profiler/envprofiling.py +69 -47
  525. mindspore/profiler/parser/ascend_timeline_generator.py +49 -42
  526. mindspore/profiler/parser/base_timeline_generator.py +49 -56
  527. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +98 -78
  528. mindspore/profiler/parser/hwts_log_parser.py +1 -1
  529. mindspore/profiler/parser/integrator.py +15 -14
  530. mindspore/profiler/parser/minddata_analyzer.py +2 -2
  531. mindspore/profiler/parser/msadvisor_analyzer.py +12 -25
  532. mindspore/profiler/parser/msadvisor_parser.py +2 -4
  533. mindspore/profiler/parser/optime_parser.py +17 -18
  534. mindspore/profiler/parser/profiler_info.py +2 -1
  535. mindspore/profiler/profiling.py +218 -186
  536. mindspore/rewrite/__init__.py +3 -1
  537. mindspore/rewrite/api/node.py +1 -114
  538. mindspore/rewrite/api/node_type.py +3 -0
  539. mindspore/rewrite/api/pattern_engine.py +31 -1
  540. mindspore/rewrite/api/scoped_value.py +4 -4
  541. mindspore/rewrite/api/symbol_tree.py +3 -78
  542. mindspore/rewrite/api/tree_node_helper.py +1 -1
  543. mindspore/rewrite/ast_creator_register.py +1 -0
  544. mindspore/rewrite/ast_helpers/__init__.py +2 -2
  545. mindspore/rewrite/ast_helpers/ast_creator.py +1 -2
  546. mindspore/rewrite/ast_helpers/ast_finder.py +65 -0
  547. mindspore/rewrite/ast_helpers/ast_modifier.py +11 -3
  548. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +18 -2
  549. mindspore/rewrite/namespace.py +0 -2
  550. mindspore/rewrite/node.py +157 -11
  551. mindspore/rewrite/parsers/assign_parser.py +231 -53
  552. mindspore/rewrite/parsers/class_def_parser.py +187 -109
  553. mindspore/rewrite/parsers/for_parser.py +24 -14
  554. mindspore/rewrite/parsers/function_def_parser.py +21 -4
  555. mindspore/rewrite/parsers/if_parser.py +6 -2
  556. mindspore/rewrite/sparsify/__init__.py +0 -0
  557. mindspore/rewrite/sparsify/sparse_transformer.py +448 -0
  558. mindspore/rewrite/sparsify/sparsify.py +109 -0
  559. mindspore/rewrite/sparsify/utils.py +173 -0
  560. mindspore/rewrite/symbol_tree.py +256 -133
  561. mindspore/rewrite/symbol_tree_builder.py +38 -1
  562. mindspore/run_check/_check_version.py +69 -63
  563. mindspore/run_check/run_check.py +2 -1
  564. mindspore/tinyxml2.dll +0 -0
  565. mindspore/train/__init__.py +1 -1
  566. mindspore/train/_utils.py +28 -5
  567. mindspore/train/amp.py +273 -102
  568. mindspore/train/callback/_backup_and_restore.py +5 -5
  569. mindspore/train/callback/_callback.py +2 -2
  570. mindspore/train/callback/_checkpoint.py +3 -3
  571. mindspore/train/callback/_early_stop.py +3 -3
  572. mindspore/train/callback/_lambda_callback.py +2 -2
  573. mindspore/train/callback/_landscape.py +29 -31
  574. mindspore/train/callback/_loss_monitor.py +3 -3
  575. mindspore/train/callback/_on_request_exit.py +3 -3
  576. mindspore/train/callback/_reduce_lr_on_plateau.py +4 -4
  577. mindspore/train/callback/_summary_collector.py +23 -16
  578. mindspore/train/callback/_time_monitor.py +3 -3
  579. mindspore/train/checkpoint_pb2.py +68 -8
  580. mindspore/train/data_sink.py +15 -3
  581. mindspore/train/dataset_helper.py +10 -15
  582. mindspore/train/loss_scale_manager.py +8 -11
  583. mindspore/train/metrics/__init__.py +1 -1
  584. mindspore/train/metrics/bleu_score.py +1 -1
  585. mindspore/train/metrics/confusion_matrix.py +1 -1
  586. mindspore/train/metrics/cosine_similarity.py +1 -1
  587. mindspore/train/metrics/dice.py +2 -2
  588. mindspore/train/metrics/fbeta.py +1 -1
  589. mindspore/train/metrics/hausdorff_distance.py +4 -3
  590. mindspore/train/metrics/mean_surface_distance.py +2 -2
  591. mindspore/train/metrics/occlusion_sensitivity.py +1 -1
  592. mindspore/train/metrics/perplexity.py +1 -1
  593. mindspore/train/metrics/precision.py +1 -1
  594. mindspore/train/metrics/recall.py +1 -1
  595. mindspore/train/metrics/roc.py +2 -2
  596. mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
  597. mindspore/train/mind_ir_pb2.py +116 -37
  598. mindspore/train/model.py +45 -28
  599. mindspore/train/serialization.py +295 -188
  600. mindspore/train/summary/_summary_adapter.py +1 -1
  601. mindspore/train/summary/summary_record.py +43 -13
  602. mindspore/train/train_thor/convert_utils.py +2 -2
  603. mindspore/train/train_thor/dataset_helper.py +3 -3
  604. mindspore/turbojpeg.dll +0 -0
  605. mindspore/version.py +1 -1
  606. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/METADATA +3 -2
  607. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/RECORD +610 -541
  608. mindspore/compression/__init__.py +0 -19
  609. mindspore/compression/common/constant.py +0 -124
  610. mindspore/compression/export/__init__.py +0 -19
  611. mindspore/compression/export/quant_export.py +0 -515
  612. mindspore/compression/quant/__init__.py +0 -28
  613. mindspore/compression/quant/qat.py +0 -634
  614. mindspore/compression/quant/quant_utils.py +0 -462
  615. mindspore/compression/quant/quantizer.py +0 -68
  616. mindspore/nn/layer/quant.py +0 -1868
  617. mindspore/nn/layer/rnn_utils.py +0 -90
  618. mindspore/nn/probability/dpn/__init__.py +0 -22
  619. mindspore/nn/probability/dpn/vae/__init__.py +0 -25
  620. mindspore/nn/probability/dpn/vae/cvae.py +0 -140
  621. mindspore/nn/probability/dpn/vae/vae.py +0 -124
  622. mindspore/nn/probability/infer/__init__.py +0 -22
  623. mindspore/nn/probability/infer/variational/elbo.py +0 -70
  624. mindspore/nn/probability/infer/variational/svi.py +0 -84
  625. mindspore/nn/probability/toolbox/__init__.py +0 -22
  626. mindspore/nn/probability/toolbox/anomaly_detection.py +0 -99
  627. mindspore/nn/probability/toolbox/uncertainty_evaluation.py +0 -364
  628. mindspore/nn/probability/transforms/__init__.py +0 -22
  629. mindspore/nn/probability/transforms/transform_bnn.py +0 -262
  630. mindspore/nn/probability/zhusuan/__init__.py +0 -18
  631. mindspore/nn/probability/zhusuan/framework/__init__.py +0 -18
  632. mindspore/nn/probability/zhusuan/framework/bn.py +0 -95
  633. mindspore/nn/probability/zhusuan/variational/__init__.py +0 -18
  634. mindspore/nn/probability/zhusuan/variational/elbo.py +0 -46
  635. mindspore/ops/_op_impl/aicpu/parallel_concat.py +0 -42
  636. mindspore/ops/_op_impl/tbe/gather_v2.py +0 -56
  637. mindspore/ops/bprop_mindir/AssignAdd_bprop.mindir +0 -19
  638. mindspore/ops/bprop_mindir/Cast_bprop.mindir +0 -19
  639. mindspore/ops/bprop_mindir/LogicalOr_bprop.mindir +0 -19
  640. mindspore/ops/bprop_mindir/MatMul_bprop.mindir +0 -0
  641. mindspore/ops/bprop_mindir/ReLU_bprop.mindir +0 -17
  642. mindspore/ops/bprop_mindir/Transpose_bprop.mindir +0 -0
  643. mindspore/ops/bprop_mindir/UpdateState_bprop.mindir +0 -15
  644. mindspore/ops/composite/array_ops.py +0 -241
  645. mindspore/ops/composite/clip_ops.py +0 -134
  646. mindspore/ops/composite/random_ops.py +0 -426
  647. mindspore/ops/composite/vmap_ops.py +0 -38
  648. mindspore/parallel/nn/__init__.py +0 -42
  649. mindspore/parallel/nn/loss.py +0 -22
  650. mindspore/parallel/nn/moe.py +0 -21
  651. mindspore/parallel/nn/op_parallel_config.py +0 -22
  652. mindspore/parallel/nn/transformer.py +0 -31
  653. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/WHEEL +0 -0
  654. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/entry_points.txt +0 -0
  655. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/top_level.txt +0 -0
@@ -165,10 +165,6 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
165
165
  """Load timeline data from file."""
166
166
  op_file_path = self._get_and_validate_path(
167
167
  self._output_op_execute_time_file_path)
168
- activity_file_path = self._get_and_validate_path(
169
- self._output_activity_execute_time_file_path)
170
- activity_args_file_path = self._get_and_validate_path(
171
- self._output_gpu_activity_info_file_path)
172
168
 
173
169
  timeline_list, communication_info = self._load_op_data(op_file_path, reduce_op_type)
174
170
  communication_info.sort(key=lambda x: float(x[2]))
@@ -198,15 +194,13 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
198
194
  factor_start_time_uint_to_duration)
199
195
  recompute_scope_name_time_list = self._get_scope_name_time_list(timeline_list, "recompute_Default",
200
196
  factor_start_time_uint_to_duration)
201
-
202
- activity_timeline_list, cuda_compute_ops_timeline_list = self._load_activity_data( \
203
- activity_file_path, activity_args_file_path)
197
+ cuda_op_timeline = self._load_activity_data()
204
198
 
205
199
  # Add AllReduce info to timeline temp list and sort by start time.
206
200
  if communication_info:
207
201
  logger.debug('Allreduce info found, Start adding info to timeline...')
208
202
  cluster_related_timeline = self._get_cluster_timeline(
209
- timeline_list, cuda_compute_ops_timeline_list, communication_info, step_time_list)
203
+ timeline_list, cuda_op_timeline[1], communication_info, step_time_list)
210
204
  timeline_list.extend(cluster_related_timeline)
211
205
  timeline_list.extend(communication_info)
212
206
  timeline_list.sort(key=lambda x: float(x[self._start_time_idx]))
@@ -219,7 +213,7 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
219
213
  timeline_list.sort(key=lambda x: (float(x[self._start_time_idx])))
220
214
 
221
215
  # Add cuda activity timeline.
222
- timeline_list.extend(activity_timeline_list)
216
+ timeline_list.extend(cuda_op_timeline[0])
223
217
  timeline_list.sort(key=lambda x: float(x[2]))
224
218
 
225
219
  return timeline_list
@@ -268,30 +262,38 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
268
262
 
269
263
  return op_timeline_list, communication_info
270
264
 
271
- def _load_activity_data(self, activity_file_path, activity_args_file_path):
265
+ def _load_activity_data(self):
272
266
  """Load activity data from file"""
273
267
  activity_timeline_list = []
274
268
  cuda_compute_ops_timeline_list = []
275
269
  args_dict = {}
276
- try:
277
- with open(activity_args_file_path, 'r') as args_file:
278
- csv_reader = csv.reader(args_file)
279
- keys_list = next(csv_reader)
280
- # keys_list format is: name, type, op_full_name, stream_id, block_dim, grid_dim, ...
281
- self._activity_keys_list = keys_list[1:3] + keys_list[4:6]
282
- for info in csv_reader:
283
- args_dict[info[0]] = info[1:3] + info[4:6]
284
- with open(activity_file_path, 'r') as f_obj:
285
- for line in f_obj:
286
- line_list = line.strip('\n').split(';')
287
- # concat activity args info.
288
- line_list += args_dict.get(line_list[0])
289
- if not line_list[0].startswith('nccl'):
290
- cuda_compute_ops_timeline_list.append(line_list)
291
- activity_timeline_list.append(line_list)
292
- except (IOError, OSError) as err:
293
- logger.critical('Error occurred when load activity timeline data intermediate file: %s', err)
294
- raise ProfilerIOException()
270
+ activity_file_path = self._get_and_validate_path(
271
+ self._output_activity_execute_time_file_path)
272
+ activity_args_file_path = self._get_and_validate_path(
273
+ self._output_gpu_activity_info_file_path)
274
+
275
+ if not os.path.exists(activity_args_file_path):
276
+ logger.error(f'The file {activity_args_file_path} does not exist.')
277
+ raise ProfilerFileNotFoundException(activity_args_file_path)
278
+ with open(activity_args_file_path, 'r') as args_file:
279
+ csv_reader = csv.reader(args_file)
280
+ keys_list = next(csv_reader)
281
+ # keys_list format is: name, type, op_full_name, stream_id, block_dim, grid_dim, ...
282
+ self._activity_keys_list = keys_list[1:3] + keys_list[4:6]
283
+ for info in csv_reader:
284
+ args_dict[info[0]] = info[1:3] + info[4:6]
285
+
286
+ if not os.path.exists(activity_file_path):
287
+ logger.error(f'The file {activity_file_path} does not exist.')
288
+ raise ProfilerFileNotFoundException(activity_file_path)
289
+ with open(activity_file_path, 'r') as f_obj:
290
+ for line in f_obj:
291
+ line_list = line.strip('\n').split(';')
292
+ # concat activity args info.
293
+ line_list += args_dict.get(line_list[0])
294
+ if not line_list[0].startswith('nccl'):
295
+ cuda_compute_ops_timeline_list.append(line_list)
296
+ activity_timeline_list.append(line_list)
295
297
 
296
298
  return activity_timeline_list, cuda_compute_ops_timeline_list
297
299
 
@@ -342,53 +344,56 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
342
344
  communication time between stages slow down the training. The value of t3 indicates the degree
343
345
  that communication inside each stage slow down the training.
344
346
  """
345
- step_num = len(step_info)
346
- is_pipeline_parallel = False
347
- comm_merged_timeline, _, comm_display_timeline = self._get_merged_time_list(
347
+ time_info = {"stage_time": [], "computation_time": [], "recieve_alone_time": [], "comm_alone_time": [],
348
+ "collective_comm_alone_time": [], "comm_not_overlapped_timeline": [], "free_timeline": [],
349
+ "collective_comm_not_overlapped_timeline": [], "comm_timeline": [], "compute_timeline": [],
350
+ "receive_op_not_overlapped_timeline": [], "receive_op_timeline": [],
351
+ "collective_comm_timeline": [], "receive_op_merged_timeline": [], "is_pipeline_parallel": False}
352
+ time_info["comm_timeline"] = self._get_merged_time_list(
348
353
  comm_info,
349
354
  display_name="communication",
350
355
  factor=1e-3
351
356
  )
352
357
  compute_op_timeline = timeline + activity_info
353
358
  compute_op_timeline.sort(key=lambda x: float(x[self._start_time_idx]))
354
- compute_op_timeline_interval, _, compute_op_display_timeline = self._get_merged_time_list(
359
+ time_info["compute_timeline"] = self._get_merged_time_list(
355
360
  compute_op_timeline,
356
361
  get_interval_time=True,
357
362
  factor=1e-3
358
363
  )
359
364
  # Consider if the overlap will be 0 or not.
360
- comm_not_overlapped_timeline = self._get_intersection_time(
361
- compute_op_timeline_interval,
362
- comm_merged_timeline
365
+ time_info["comm_not_overlapped_timeline"] = self._get_intersection_time(
366
+ time_info.get("compute_timeline")[0],
367
+ time_info.get("comm_timeline")[0]
363
368
  )
364
369
 
365
370
  # Process receive part.
366
371
  all_timeline = timeline + comm_info
367
372
  all_timeline.sort(key=lambda x: float(x[self._start_time_idx]))
368
- receive_op_timeline = self._produce_two_separated_timeline(
373
+ time_info["receive_op_timeline"] = self._produce_two_separated_timeline(
369
374
  all_timeline,
370
375
  "Receive-op"
371
376
  )[0]
372
- if receive_op_timeline:
373
- is_pipeline_parallel = True
374
- receive_op_merged_timeline = self._get_merged_time_list(receive_op_timeline,
375
- factor=1e-3)[0]
376
-
377
- receive_op_not_overlapped_timeline = self._get_intersection_time(
378
- compute_op_timeline_interval,
379
- receive_op_merged_timeline,
377
+ if time_info.get("receive_op_timeline"):
378
+ time_info["is_pipeline_parallel"] = True
379
+ time_info["receive_op_merged_timeline"] = self._get_merged_time_list(time_info.get("receive_op_timeline"),
380
+ factor=1e-3)[0]
381
+
382
+ time_info["receive_op_not_overlapped_timeline"] = self._get_intersection_time(
383
+ time_info.get("compute_timeline")[0],
384
+ time_info.get("receive_op_merged_timeline"),
380
385
  display_name="receive_op_not_overlapped"
381
386
  )
382
387
 
383
388
  # Process collective communication part.
384
- collective_comm_timeline = self._produce_two_separated_timeline(
389
+ time_info["collective_comm_timeline"] = self._produce_two_separated_timeline(
385
390
  comm_info,
386
391
  "Receive-op"
387
392
  )[-1]
388
- collective_comm_merged_timeline = self._get_merged_time_list(collective_comm_timeline,
393
+ collective_comm_merged_timeline = self._get_merged_time_list(time_info.get("collective_comm_timeline"),
389
394
  factor=1e-3)[0]
390
- collective_comm_not_overlapped_timeline = self._get_intersection_time(
391
- compute_op_timeline_interval,
395
+ time_info["collective_comm_not_overlapped_timeline"] = self._get_intersection_time(
396
+ time_info.get("compute_timeline")[0],
392
397
  collective_comm_merged_timeline,
393
398
  display_name="exclude_receive_op"
394
399
  )
@@ -396,7 +401,7 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
396
401
  # Generate free time that exclude computation and communication time.
397
402
  all_timeline = compute_op_timeline + comm_info
398
403
  all_timeline.sort(key=lambda x: float(x[self._start_time_idx]))
399
- free_timeline = self._get_merged_time_list(
404
+ time_info["free_timeline"] = self._get_merged_time_list(
400
405
  all_timeline,
401
406
  get_interval_time=True,
402
407
  display_name="free_time",
@@ -404,33 +409,48 @@ class GpuTimelineGenerator(BaseTimelineGenerator):
404
409
  )[1]
405
410
 
406
411
  # Compute these five metrics mentioned above per step.
407
- recieve_alone_time = self._compute_time_inside_step(receive_op_not_overlapped_timeline, step_info)
408
- stage_time, computation_time = [], []
409
- comm_alone_time = self._compute_time_inside_step(comm_not_overlapped_timeline, step_info)
410
- collective_comm_alone_time = self._compute_time_inside_step(
411
- collective_comm_not_overlapped_timeline,
412
+ time_info["recieve_alone_time"] = self._compute_time_inside_step(
413
+ time_info.get("receive_op_not_overlapped_timeline"), step_info)
414
+ time_info["comm_alone_time"] = self._compute_time_inside_step(time_info.get("comm_not_overlapped_timeline"),
415
+ step_info)
416
+ time_info["collective_comm_alone_time"] = self._compute_time_inside_step(
417
+ time_info.get("collective_comm_not_overlapped_timeline"),
412
418
  step_info
413
419
  )
420
+ step_num = len(step_info)
414
421
  for step in range(step_num):
415
422
  try:
416
- if is_pipeline_parallel:
417
- stage_time.append(step_info[step][self._duration_idx] - recieve_alone_time[step])
418
- computation_time.append(step_info[step][self._duration_idx] - comm_alone_time[step])
423
+ if time_info.get("is_pipeline_parallel"):
424
+ time_info.get("stage_time").append(
425
+ step_info[step][self._duration_idx] - time_info.get("recieve_alone_time")[step]
426
+ )
427
+ except IndexError as e:
428
+ logger.error(e)
429
+ try:
430
+ time_info.get("computation_time").append(
431
+ step_info[step][self._duration_idx] - time_info.get("comm_alone_time")[step]
432
+ )
419
433
  except IndexError as e:
420
434
  logger.error(e)
421
435
 
422
- metrices_per_step_list = [computation_time, comm_alone_time, stage_time,
423
- recieve_alone_time, collective_comm_alone_time]
436
+ metrices_per_step_list = [time_info.get("computation_time"), time_info.get("comm_alone_time"),
437
+ time_info.get("stage_time"), time_info.get("recieve_alone_time"),
438
+ time_info.get("collective_comm_alone_time")]
424
439
  if step_num > 1:
425
440
  for metric in metrices_per_step_list:
426
441
  metric.append(sum(metric[1:]) / (step_num - 1))
427
- self._write_cluster_metrices(metrices_per_step_list, is_pipeline_parallel, "Gpu", self._device_id)
442
+ try:
443
+ self._write_cluster_metrices(metrices_per_step_list, time_info.get("is_pipeline_parallel"), "Gpu",
444
+ self._device_id)
445
+ except (IOError, OSError) as e:
446
+ logger.warning(e)
447
+ raise ProfilerIOException
428
448
 
429
449
  res_timeline = []
430
- res_timeline.extend(comm_not_overlapped_timeline)
431
- res_timeline.extend(compute_op_display_timeline)
432
- res_timeline.extend(comm_display_timeline)
433
- res_timeline.extend(free_timeline)
450
+ res_timeline.extend(time_info.get("comm_not_overlapped_timeline"))
451
+ res_timeline.extend(time_info.get("compute_timeline")[2])
452
+ res_timeline.extend(time_info.get("comm_timeline")[2])
453
+ res_timeline.extend(time_info.get("free_timeline"))
434
454
  return res_timeline
435
455
 
436
456
  def _compute_time_inside_step(self, metric_timeline, step_time_list):
@@ -637,28 +657,28 @@ class CpuTimelineGenerator(GpuTimelineGenerator):
637
657
  # factor to convert the time unit of start_time(ts) from 1ns to 1us for timeline display
638
658
  factor = 1000
639
659
  op_meta = TimelineContainer(timeline)
640
- timeline_dict = {}
641
- timeline_dict['name'] = op_meta.op_name.split('/')[-1]
642
- timeline_dict['ph'] = 'X'
643
- timeline_dict['tid'] = op_meta.stream_id
644
- timeline_dict['ts'] = (op_meta.start_time - min_cycle_counter) / factor
660
+ timeline_info = {}
661
+ timeline_info['name'] = op_meta.op_name.split('/')[-1]
662
+ timeline_info['ph'] = 'X'
663
+ timeline_info['tid'] = op_meta.stream_id
664
+ timeline_info['ts'] = (op_meta.start_time - min_cycle_counter) / factor
645
665
  dur = op_meta.duration
646
- timeline_dict['dur'] = dur
647
- timeline_dict['pid'] = int(self._device_id)
666
+ timeline_info['dur'] = dur
667
+ timeline_info['pid'] = int(self._device_id)
648
668
  if op_meta.stream_id == "Scope Name":
649
669
  # remove the level of scope name which has a format like "0-conv2-Conv2d".
650
- timeline_dict['name'] = "-".join(op_meta.op_name.split('-')[1:])
651
- timeline_dict['scope_level'] = int(op_meta.op_name.split('-')[0])
670
+ timeline_info['name'] = "-".join(op_meta.op_name.split('-')[1:])
671
+ timeline_info['scope_level'] = int(op_meta.op_name.split('-')[0])
652
672
  elif self._host_cpu_op_label == op_meta.stream_id[:len(self._host_cpu_op_label)]:
653
- timeline_dict['pid'] = self._HOST_CPU_PID
673
+ timeline_info['pid'] = self._HOST_CPU_PID
654
674
 
655
675
  if len(timeline) == 5:
656
676
  # len(timeline) == 5 refers to analyse data.
657
- timeline_dict["pid"] = op_meta.pid
677
+ timeline_info["pid"] = op_meta.pid
658
678
  elif op_meta.stream_id not in ["Scope Name", "Steps"]:
659
679
  # Update total time of operator execution.
660
680
  self._timeline_summary['total_time'] += dur / factor
661
681
  self._timeline_summary['op_exe_times'] += 1
662
682
 
663
- self._update_format_meta_data(timeline_dict)
664
- self._timeline_meta.append(timeline_dict)
683
+ self._update_format_meta_data(timeline_info)
684
+ self._timeline_meta.append(timeline_info)
@@ -94,7 +94,7 @@ class HWTSLogParser:
94
94
  if HWTSLogParser.GRAPH_MODE_MAX_TASKID < last_task_stream_map.get(stream_id, task_id) \
95
95
  and task_id < last_task_stream_map.get(stream_id, task_id):
96
96
  flip_times += 1
97
- task_id_str = str(stream_id) + "_" + str(task_id + flip_times * task_id_threshold)
97
+ task_id_str = ("%s_%s" % (str(stream_id), str(task_id + flip_times * task_id_threshold)))
98
98
  result_data += ("%-14s %-4s %-8s %-9s %-8s %-15s %s\n" % (log_type[int(ms_type, 2)], cnt, core_id,
99
99
  blk_id, task_id_str, syscnt, stream_id))
100
100
  last_task_stream_map[stream_id] = task_id
@@ -37,9 +37,8 @@ class Integrator:
37
37
  _file_name_aicore_detail_time = 'output_op_compute_time_{}.txt'
38
38
  _file_name_aicpu_time = 'output_data_preprocess_aicpu_{}.txt'
39
39
  _file_name_framework = 'framework_raw_{}.csv'
40
- _header_aicore_type = ['op_type', 'execution_time', 'execution_frequency',
41
- 'percent']
42
- _header_aicore_detail = ['full_op_name', 'execution_time']
40
+ _header_aicore_type = ['op_type', 'total_time', 'execution_frequency', 'percent']
41
+ _header_aicore_detail = ['full_op_name', 'execution_time', 'execution_frequency']
43
42
  _header_aicpu = ['serial_number', 'op_type', 'total_time', 'dispatch_time',
44
43
  'execution_time', 'run_start', 'run_end']
45
44
 
@@ -141,16 +140,17 @@ class Integrator:
141
140
  op_name_type_cache[row[3]] = row[5]
142
141
 
143
142
  op_type_time_cache = {}
144
- for full_op_name, op_time in self._op_time_cache.items():
143
+ total_time = 0
144
+ for full_op_name, op_info in self._op_time_cache.items():
145
+ total_time += op_info[0] * op_info[1]
145
146
  op_type = op_name_type_cache.get(full_op_name)
146
147
  op_type_time = op_type_time_cache.get(op_type)
147
148
  if not op_type_time:
148
- op_type_time = [op_time, 1]
149
+ op_type_time = [op_info[0] * op_info[1], op_info[1]]
149
150
  op_type_time_cache[op_type] = op_type_time
150
151
  else:
151
- op_type_time[0] += op_time
152
- op_type_time[1] += 1
153
-
152
+ op_type_time[0] += op_info[0] * op_info[1]
153
+ op_type_time[1] += op_info[1]
154
154
  op_type_file_name = 'aicore_intermediate_' + self._device_id + '_type.csv'
155
155
  op_type_file_path = os.path.join(self._profiling_dir, op_type_file_name)
156
156
  with open(op_type_file_path, 'w') as type_file:
@@ -158,10 +158,11 @@ class Integrator:
158
158
  csv_writer.writerow(self._header_aicore_type)
159
159
 
160
160
  for op_type, op_type_time_info in op_type_time_cache.items():
161
- type_info = [
162
- op_type, op_type_time_info[0], op_type_time_info[1],
163
- round((op_type_time_info[0] / self._total_time) * 100, 2)
164
- ]
161
+ if total_time != 0:
162
+ type_info = [
163
+ op_type, op_type_time_info[0], op_type_time_info[1],
164
+ round((op_type_time_info[0] / total_time) * 100, 2)
165
+ ]
165
166
  csv_writer.writerow(type_info)
166
167
 
167
168
  def _parse_aicore_detail_time(self):
@@ -201,8 +202,8 @@ class Integrator:
201
202
  if op_infos[0] == 'total':
202
203
  self._total_time = Decimal(op_infos[2])
203
204
  continue
204
- self._op_time_cache[op_infos[0]] = Decimal(op_infos[1])
205
- csv_writer.writerow([op_infos[0], op_infos[1]])
205
+ self._op_time_cache[op_infos[0]] = [Decimal(op_infos[1]), int(op_infos[3])]
206
+ csv_writer.writerow([op_infos[0], op_infos[1], op_infos[3]])
206
207
 
207
208
  def _parse_aicpu_time(self):
208
209
  """Parse the parsed AICPU operator time file."""
@@ -78,8 +78,8 @@ class MinddataProfilingAnalyzer:
78
78
  try:
79
79
  validated_dir = validate_and_normalize_path(dir_name)
80
80
  except RuntimeError as path_error:
81
- logger.warning('<%s> <%s> is invalid.', dir_type, validated_dir)
82
- raise ProfilerPathErrorException(dir_type + 'is invalid.') from path_error
81
+ logger.warning('<%s> is invalid.', dir_type)
82
+ raise ProfilerPathErrorException(dir_type + ' is invalid.') from path_error
83
83
 
84
84
  if not os.path.isdir(validated_dir):
85
85
  logger.warning('<%s> <%s> not found.', dir_type, validated_dir)
@@ -43,32 +43,19 @@ class Msadvisor:
43
43
  output_path = validate_and_normalize_path(output_path)
44
44
  logger.info("MSAdvisor is running. Log and result files are saved in %s", output_path)
45
45
 
46
- try:
47
- subprocess.run(["msadvisor", "-d", output_path, "-c", "all"],
48
- capture_output=True, check=True)
49
- logger.info("MSAdvisor process finished.")
46
+ subprocess.run(["msadvisor", "-d", output_path, "-c", "all"],
47
+ capture_output=True, check=True)
48
+ logger.info("MSAdvisor process finished.")
50
49
 
51
- # Modified recommendation file permission, only Owner can read and write.
52
- recommendation_path = os.path.join(output_path, "recommendation")
53
- recommendation_path = validate_and_normalize_path(recommendation_path)
54
- os.chmod(recommendation_path, stat.S_IRWXU)
55
- file_list = os.listdir(recommendation_path)
56
- file_list.sort(key=lambda fn: os.path.getmtime(os.path.join(recommendation_path, fn)))
57
- recommendation_path = os.path.join(recommendation_path, file_list[-1])
58
- recommendation_path = validate_and_normalize_path(recommendation_path)
59
- os.chmod(recommendation_path, stat.S_IRUSR | stat.S_IWUSR)
60
- except FileNotFoundError as err:
61
- logger.warning("MSAdvisor: command not found,"
62
- "please check if installed ascend-toolkit and set environment path correctly.")
63
- raise err
64
- except OSError as err:
65
- logger.warning("Cannot execute binary file: Exec format error.")
66
- raise err
67
- except subprocess.CalledProcessError:
68
- logger.warning("MSAdvisor running failed,"
69
- "please check MSAdvisor running log.")
70
- finally:
71
- pass
50
+ # Modified recommendation file permission, only Owner can read and write.
51
+ recommendation_path = os.path.join(output_path, "recommendation")
52
+ recommendation_path = validate_and_normalize_path(recommendation_path)
53
+ os.chmod(recommendation_path, stat.S_IRWXU)
54
+ file_list = os.listdir(recommendation_path)
55
+ file_list.sort(key=lambda fn: os.path.getmtime(os.path.join(recommendation_path, fn)))
56
+ recommendation_path = os.path.join(recommendation_path, file_list[-1])
57
+ recommendation_path = validate_and_normalize_path(recommendation_path)
58
+ os.chmod(recommendation_path, stat.S_IRUSR | stat.S_IWUSR)
72
59
 
73
60
  # Modified log file permission, only Owner can read and write.
74
61
  log_path = os.path.join(output_path, "log")
@@ -85,9 +85,7 @@ class MsadvisorParser:
85
85
  task_type = "AI_CORE"
86
86
 
87
87
  try:
88
- ts = float(op[2]) * MS_TO_US
89
- dur = float(op[3]) * MS_TO_US
90
- sid = float(op[1])
88
+ ts, dur, sid = float(op[2]) * MS_TO_US, float(op[3]) * MS_TO_US, float(op[1])
91
89
  except ValueError as err:
92
90
  logger.warning("The aicore timeline file content is abnormal. Failed to format aicore timeline file")
93
91
  raise err
@@ -192,7 +190,7 @@ class MsadvisorParser:
192
190
  if tid == 1:
193
191
  self._time_start = op.get("ts")
194
192
  total_duration = op.get("ts") - self._time_start
195
- if total_duration > 1*MIN_TO_US or tid > 10000:
193
+ if total_duration > 1 * MIN_TO_US or tid > 10000:
196
194
  self._time_end = op.get("ts")
197
195
  break
198
196
  if tid > 1:
@@ -36,7 +36,7 @@ class OPComputeTimeParser:
36
36
  """
37
37
 
38
38
  _dst_file_title = 'title:op compute time'
39
- _dst_file_column_title = 'op_name compute_time(ms) stream_id'
39
+ _dst_file_column_title = 'op_name compute_time(ms) stream_id execution_times'
40
40
  _dst_file_column_title += '\n------------ --------------- ---------'
41
41
 
42
42
  def __init__(self, hwts_output_file, output_filename, op_task_info,
@@ -77,8 +77,7 @@ class OPComputeTimeParser:
77
77
  op_duration_str = str(item.duration / factor)
78
78
  if op_name in op_name_time_dict.keys():
79
79
  op_name_time_dict[op_name] += op_duration
80
- if item.task_id == op_name_task_dict[op_name]:
81
- op_name_count_dict[op_name] += 1
80
+ op_name_count_dict[op_name] += 1
82
81
  op_name_start_time[op_name].append(
83
82
  (op_start_time_str, op_duration_str)
84
83
  )
@@ -120,7 +119,7 @@ class OPComputeTimeParser:
120
119
  raise ValueError("The number of operations can not be 0.")
121
120
  avg_time = time / op_name_count_dict.get(op_name)
122
121
  total_time += avg_time
123
- result_data += ("%s %s %s\n" % (op_name, str(avg_time), stream_id))
122
+ result_data += ("%s %s %s %s\n" % (op_name, str(avg_time), stream_id, op_name_count_dict.get(op_name)))
124
123
  result_data += ("total op %s 0" % (str(total_time)))
125
124
 
126
125
  timeline_data = []
@@ -225,25 +224,25 @@ class OPComputeTimeParser:
225
224
  """
226
225
  tmp_result_data = []
227
226
  op_map_list = self._get_op_task_id_map()
227
+ tmp_op_dict = dict()
228
228
 
229
229
  cur_index = 0
230
230
  length = len(op_map_list)
231
231
  min_cycle_counter = float("inf")
232
232
  while cur_index < length:
233
- if cur_index + 1 == length:
234
- break
235
-
236
- op_start = op_map_list[cur_index]
237
- op_end = op_map_list[cur_index + 1]
238
- if op_start.status == "Start" and op_end.status == "End" \
239
- and op_start.op_name == op_end.op_name:
240
- op_start.duration = op_end.cycle_counter - op_start.cycle_counter
241
- tmp_result_data.append(op_start)
242
- cur_index += 2
243
- if not op_start.op_name.startswith("assign"):
244
- min_cycle_counter = min(min_cycle_counter, op_start.cycle_counter)
245
- else:
246
- cur_index += 1
233
+ op_time = op_map_list[cur_index]
234
+ if op_time.status == "Start":
235
+ tmp_op_dict[op_time.op_name] = op_time
236
+ elif op_time.status == "End" and op_time.op_name in tmp_op_dict:
237
+ op_start = tmp_op_dict.get(op_time.op_name, None)
238
+ if op_start:
239
+ op_start.duration = op_time.cycle_counter - op_start.cycle_counter
240
+ tmp_result_data.append(op_start)
241
+ del tmp_op_dict[op_time.op_name]
242
+ if not op_time.op_name.startswith("assign"):
243
+ min_cycle_counter = min(min_cycle_counter, op_time.cycle_counter)
244
+
245
+ cur_index += 1
247
246
 
248
247
  # Update the value of minimum cycle counter.
249
248
  self._min_cycle_counter = min_cycle_counter / 1e5 # Convert the time unit from 10ns to 1ms
@@ -17,6 +17,7 @@ import json
17
17
  import os
18
18
  import stat
19
19
 
20
+ from mindspore.version import __version__ as ms_version
20
21
  from mindspore.profiler.common.validator.validate_path import validate_and_normalize_path
21
22
 
22
23
 
@@ -34,9 +35,9 @@ class ProfilerInfo:
34
35
  @staticmethod
35
36
  def init_info(context_mode, rank_id):
36
37
  """Profiler info initialization must include context_mode, rank_id and output_path."""
37
- ProfilerInfo._profiler_info_dict = dict()
38
38
  ProfilerInfo._profiler_info_dict["context_mode"] = context_mode
39
39
  ProfilerInfo._profiler_info_dict["rank_id"] = rank_id
40
+ ProfilerInfo._profiler_info_dict["ms_version"] = ms_version
40
41
  ProfilerInfo._file_name = ProfilerInfo._file_name.format(rank_id)
41
42
 
42
43
  @staticmethod