mindspore 2.2.14__cp39-cp39-win_amd64.whl → 2.4.0__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.
- mindspore/.commit_id +1 -1
- mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
- mindspore/Newtonsoft.Json.dll +0 -0
- mindspore/__init__.py +8 -5
- mindspore/_c_dataengine.cp39-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp39-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp39-win_amd64.pyd +0 -0
- mindspore/_checkparam.py +124 -25
- mindspore/_extends/builtin_operations.py +2 -1
- mindspore/_extends/graph_kernel/model/graph_parallel.py +16 -6
- mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +3 -16
- mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +16 -4
- mindspore/_extends/parallel_compile/akg_compiler/compiler.py +1 -0
- mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +96 -0
- mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +2 -1
- mindspore/_extends/parallel_compile/akg_compiler/util.py +5 -2
- mindspore/_extends/parse/__init__.py +18 -14
- mindspore/_extends/parse/compile_config.py +299 -0
- mindspore/_extends/parse/namespace.py +2 -2
- mindspore/_extends/parse/parser.py +182 -68
- mindspore/_extends/parse/resources.py +45 -14
- mindspore/_extends/parse/standard_method.py +192 -252
- mindspore/{ops/_op_impl/tbe/atomic_addr_clean.py → _extends/pijit/__init__.py} +6 -16
- mindspore/_extends/pijit/pijit_func_white_list.py +669 -0
- mindspore/_extends/remote/kernel_build_server.py +2 -0
- mindspore/_profiler.py +30 -0
- mindspore/amp.py +67 -26
- mindspore/atlprov.dll +0 -0
- mindspore/avcodec-59.dll +0 -0
- mindspore/avdevice-59.dll +0 -0
- mindspore/avfilter-8.dll +0 -0
- mindspore/avformat-59.dll +0 -0
- mindspore/avutil-57.dll +0 -0
- mindspore/boost/adasum.py +1 -1
- mindspore/boost/base.py +1 -1
- mindspore/boost/boost_cell_wrapper.py +2 -2
- mindspore/boost/grad_freeze.py +2 -2
- mindspore/boost/group_loss_scale_manager.py +1 -1
- mindspore/boost/less_batch_normalization.py +9 -6
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/common/__init__.py +20 -7
- mindspore/common/_jit_fallback_utils.py +2 -3
- mindspore/common/_pijit_context.py +190 -0
- mindspore/common/_register_for_adapter.py +7 -0
- mindspore/common/_register_for_recompute.py +48 -0
- mindspore/common/_register_for_tensor.py +10 -10
- mindspore/common/_stub_tensor.py +7 -1
- mindspore/common/_tensor_overload.py +139 -0
- mindspore/common/_utils.py +5 -17
- mindspore/common/api.py +449 -129
- mindspore/common/auto_dynamic_shape.py +27 -14
- mindspore/common/dtype.py +17 -10
- mindspore/common/dump.py +8 -11
- mindspore/common/file_system.py +48 -0
- mindspore/common/generator.py +254 -0
- mindspore/common/hook_handle.py +65 -30
- mindspore/common/initializer.py +1 -1
- mindspore/common/jit_config.py +34 -14
- mindspore/common/lazy_inline.py +72 -19
- mindspore/common/mindir_util.py +12 -2
- mindspore/common/mutable.py +79 -14
- mindspore/common/no_inline.py +54 -0
- mindspore/common/np_dtype.py +25 -0
- mindspore/common/parameter.py +73 -21
- mindspore/common/recompute.py +292 -0
- mindspore/common/seed.py +9 -9
- mindspore/common/sparse_tensor.py +276 -24
- mindspore/common/symbol.py +122 -0
- mindspore/common/tensor.py +668 -514
- mindspore/communication/__init__.py +6 -11
- mindspore/communication/_comm_helper.py +43 -3
- mindspore/communication/comm_func.py +1395 -0
- mindspore/communication/management.py +117 -104
- mindspore/config/op_info.config +22 -54
- mindspore/context.py +455 -71
- mindspore/dataset/__init__.py +5 -5
- mindspore/dataset/audio/__init__.py +6 -6
- mindspore/dataset/audio/transforms.py +711 -158
- mindspore/dataset/callback/ds_callback.py +2 -2
- mindspore/dataset/core/config.py +7 -0
- mindspore/dataset/core/validator_helpers.py +7 -0
- mindspore/dataset/engine/cache_client.py +2 -2
- mindspore/dataset/engine/datasets.py +201 -116
- mindspore/dataset/engine/datasets_audio.py +14 -14
- mindspore/dataset/engine/datasets_standard_format.py +83 -3
- mindspore/dataset/engine/datasets_text.py +39 -39
- mindspore/dataset/engine/datasets_user_defined.py +230 -141
- mindspore/dataset/engine/datasets_vision.py +78 -74
- mindspore/dataset/engine/iterators.py +29 -0
- mindspore/dataset/engine/obs/util.py +7 -0
- mindspore/dataset/engine/offload.py +5 -7
- mindspore/dataset/engine/queue.py +138 -66
- mindspore/dataset/engine/serializer_deserializer.py +2 -2
- mindspore/dataset/engine/validators.py +41 -15
- mindspore/dataset/text/__init__.py +2 -5
- mindspore/dataset/text/transforms.py +408 -121
- mindspore/dataset/text/utils.py +9 -9
- mindspore/dataset/transforms/__init__.py +0 -3
- mindspore/dataset/transforms/transforms.py +261 -76
- mindspore/dataset/utils/browse_dataset.py +9 -9
- mindspore/dataset/utils/line_reader.py +2 -0
- mindspore/dataset/vision/__init__.py +7 -10
- mindspore/dataset/vision/c_transforms.py +10 -10
- mindspore/dataset/vision/py_transforms_util.py +1 -1
- mindspore/dataset/vision/transforms.py +2844 -549
- mindspore/dataset/vision/utils.py +161 -10
- mindspore/dataset/vision/validators.py +16 -3
- mindspore/dnnl.dll +0 -0
- mindspore/dpcmi.dll +0 -0
- mindspore/{rewrite/ast_creator_register.py → experimental/es/__init__.py} +5 -20
- mindspore/experimental/es/embedding_service.py +883 -0
- mindspore/experimental/es/embedding_service_layer.py +581 -0
- mindspore/experimental/llm_boost/__init__.py +21 -0
- mindspore/experimental/llm_boost/atb/__init__.py +23 -0
- mindspore/experimental/llm_boost/atb/boost_base.py +211 -0
- mindspore/experimental/llm_boost/atb/llama_boost.py +115 -0
- mindspore/experimental/llm_boost/atb/qwen_boost.py +101 -0
- mindspore/experimental/llm_boost/register.py +129 -0
- mindspore/experimental/llm_boost/utils.py +31 -0
- mindspore/experimental/optim/__init__.py +12 -2
- mindspore/experimental/optim/adadelta.py +161 -0
- mindspore/experimental/optim/adagrad.py +168 -0
- mindspore/experimental/optim/adam.py +35 -34
- mindspore/experimental/optim/adamax.py +170 -0
- mindspore/experimental/optim/adamw.py +124 -15
- mindspore/experimental/optim/asgd.py +153 -0
- mindspore/experimental/optim/lr_scheduler.py +66 -121
- mindspore/experimental/optim/nadam.py +157 -0
- mindspore/experimental/optim/optimizer.py +18 -8
- mindspore/experimental/optim/radam.py +194 -0
- mindspore/experimental/optim/rmsprop.py +154 -0
- mindspore/experimental/optim/rprop.py +164 -0
- mindspore/experimental/optim/sgd.py +28 -19
- mindspore/hal/__init__.py +40 -0
- mindspore/hal/_ascend.py +57 -0
- mindspore/hal/_base.py +57 -0
- mindspore/hal/_cpu.py +56 -0
- mindspore/hal/_gpu.py +57 -0
- mindspore/hal/contiguous_tensors_handle.py +175 -0
- mindspore/hal/device.py +356 -0
- mindspore/hal/event.py +179 -0
- mindspore/hal/memory.py +326 -0
- mindspore/hal/stream.py +357 -0
- mindspore/include/api/data_type.h +2 -2
- mindspore/include/api/dual_abi_helper.h +16 -3
- mindspore/include/api/model.h +4 -3
- mindspore/include/api/model_group.h +13 -1
- mindspore/include/api/status.h +14 -0
- mindspore/include/api/types.h +10 -10
- mindspore/include/c_api/model_c.h +173 -0
- mindspore/include/c_api/types_c.h +19 -0
- mindspore/include/dataset/config.h +2 -2
- mindspore/include/dataset/constants.h +2 -2
- mindspore/include/dataset/execute.h +3 -5
- mindspore/include/dataset/vision.h +58 -2
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +3 -3
- mindspore/mindrecord/__init__.py +5 -1
- mindspore/mindrecord/config.py +809 -0
- mindspore/mindrecord/filereader.py +25 -0
- mindspore/mindrecord/filewriter.py +138 -103
- mindspore/mindrecord/mindpage.py +40 -6
- mindspore/mindrecord/shardutils.py +3 -2
- mindspore/mindrecord/shardwriter.py +7 -0
- mindspore/mindrecord/tools/cifar100_to_mr.py +8 -13
- mindspore/mindrecord/tools/cifar10_to_mr.py +9 -15
- mindspore/mindrecord/tools/csv_to_mr.py +4 -9
- mindspore/mindrecord/tools/imagenet_to_mr.py +3 -8
- mindspore/mindrecord/tools/mnist_to_mr.py +7 -12
- mindspore/mindrecord/tools/tfrecord_to_mr.py +1 -6
- mindspore/mindspore_backend.dll +0 -0
- mindspore/mindspore_common.dll +0 -0
- mindspore/mindspore_core.dll +0 -0
- mindspore/mindspore_glog.dll +0 -0
- mindspore/mindspore_np_dtype.dll +0 -0
- mindspore/mindspore_ops.dll +0 -0
- mindspore/mint/__init__.py +1586 -0
- mindspore/mint/distributed/__init__.py +31 -0
- mindspore/mint/distributed/distributed.py +254 -0
- mindspore/{rewrite/ast_transformers → mint/linalg}/__init__.py +9 -4
- mindspore/mint/nn/__init__.py +757 -0
- mindspore/mint/nn/functional.py +679 -0
- mindspore/mint/nn/layer/__init__.py +39 -0
- mindspore/mint/nn/layer/activation.py +133 -0
- mindspore/mint/nn/layer/normalization.py +477 -0
- mindspore/mint/nn/layer/pooling.py +110 -0
- mindspore/mint/optim/__init__.py +24 -0
- mindspore/mint/optim/adamw.py +206 -0
- mindspore/mint/special/__init__.py +63 -0
- mindspore/msobj140.dll +0 -0
- mindspore/mspdb140.dll +0 -0
- mindspore/mspdbcore.dll +0 -0
- mindspore/mspdbst.dll +0 -0
- mindspore/mspft140.dll +0 -0
- mindspore/msvcdis140.dll +0 -0
- mindspore/msvcp140_1.dll +0 -0
- mindspore/msvcp140_2.dll +0 -0
- mindspore/msvcp140_atomic_wait.dll +0 -0
- mindspore/msvcp140_codecvt_ids.dll +0 -0
- mindspore/multiprocessing/__init__.py +73 -0
- mindspore/nn/cell.py +461 -323
- mindspore/nn/dynamic_lr.py +2 -2
- mindspore/nn/layer/activation.py +292 -135
- mindspore/nn/layer/basic.py +288 -83
- mindspore/nn/layer/channel_shuffle.py +3 -16
- mindspore/nn/layer/container.py +3 -3
- mindspore/nn/layer/conv.py +75 -66
- mindspore/nn/layer/embedding.py +221 -45
- mindspore/nn/layer/image.py +4 -7
- mindspore/nn/layer/math.py +1 -1
- mindspore/nn/layer/normalization.py +150 -68
- mindspore/nn/layer/padding.py +64 -87
- mindspore/nn/layer/pooling.py +175 -12
- mindspore/nn/layer/rnn_cells.py +6 -16
- mindspore/nn/layer/rnns.py +6 -5
- mindspore/nn/layer/thor_layer.py +1 -2
- mindspore/nn/layer/timedistributed.py +1 -1
- mindspore/nn/layer/transformer.py +55 -53
- mindspore/nn/learning_rate_schedule.py +6 -5
- mindspore/nn/loss/__init__.py +2 -2
- mindspore/nn/loss/loss.py +145 -88
- mindspore/nn/optim/__init__.py +2 -1
- mindspore/nn/optim/ada_grad.py +4 -2
- mindspore/nn/optim/adadelta.py +4 -2
- mindspore/nn/optim/adafactor.py +1 -1
- mindspore/nn/optim/adam.py +102 -181
- mindspore/nn/optim/adamax.py +4 -2
- mindspore/nn/optim/adasum.py +3 -3
- mindspore/nn/optim/asgd.py +4 -2
- mindspore/nn/optim/ftrl.py +31 -61
- mindspore/nn/optim/lamb.py +5 -3
- mindspore/nn/optim/lars.py +2 -2
- mindspore/nn/optim/lazyadam.py +6 -4
- mindspore/nn/optim/momentum.py +13 -25
- mindspore/nn/optim/optimizer.py +6 -3
- mindspore/nn/optim/proximal_ada_grad.py +4 -2
- mindspore/nn/optim/rmsprop.py +9 -3
- mindspore/nn/optim/rprop.py +4 -2
- mindspore/nn/optim/sgd.py +5 -3
- mindspore/nn/optim/tft_wrapper.py +127 -0
- mindspore/nn/optim/thor.py +2 -2
- mindspore/nn/probability/distribution/_utils/custom_ops.py +2 -2
- mindspore/nn/probability/distribution/beta.py +2 -2
- mindspore/nn/probability/distribution/categorical.py +4 -6
- mindspore/nn/probability/distribution/cauchy.py +2 -2
- mindspore/nn/probability/distribution/exponential.py +2 -2
- mindspore/nn/probability/distribution/geometric.py +1 -1
- mindspore/nn/probability/distribution/gumbel.py +2 -2
- mindspore/nn/probability/distribution/logistic.py +1 -1
- mindspore/nn/probability/distribution/poisson.py +2 -2
- mindspore/nn/probability/distribution/uniform.py +2 -2
- mindspore/nn/reinforcement/_tensors_queue.py +13 -1
- mindspore/nn/wrap/__init__.py +2 -1
- mindspore/nn/wrap/cell_wrapper.py +46 -12
- mindspore/nn/wrap/grad_reducer.py +148 -8
- mindspore/nn/wrap/loss_scale.py +44 -7
- mindspore/numpy/__init__.py +2 -0
- mindspore/numpy/array_creations.py +67 -68
- mindspore/numpy/array_ops.py +70 -66
- mindspore/numpy/dtypes.py +3 -3
- mindspore/numpy/fft.py +966 -0
- mindspore/numpy/logic_ops.py +11 -10
- mindspore/numpy/math_ops.py +147 -152
- mindspore/numpy/utils.py +3 -0
- mindspore/numpy/utils_const.py +4 -4
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +9 -6
- mindspore/ops/_grad_experimental/grad_array_ops.py +4 -129
- mindspore/ops/_grad_experimental/grad_comm_ops.py +135 -36
- mindspore/ops/_grad_experimental/grad_math_ops.py +61 -298
- mindspore/ops/_grad_experimental/grad_nn_ops.py +0 -53
- mindspore/ops/_grad_experimental/grad_quant_ops.py +3 -3
- mindspore/ops/_grad_experimental/grad_sparse.py +1 -1
- mindspore/ops/_grad_experimental/grad_sparse_ops.py +3 -3
- mindspore/ops/_op_impl/__init__.py +0 -1
- mindspore/ops/_op_impl/aicpu/gamma.py +2 -0
- mindspore/ops/_op_impl/aicpu/generate_eod_mask.py +1 -1
- mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +1 -3
- mindspore/ops/_op_impl/aicpu/poisson.py +2 -0
- mindspore/ops/_op_impl/cpu/__init__.py +1 -3
- mindspore/ops/_op_impl/cpu/adam.py +2 -2
- mindspore/ops/_op_impl/cpu/adam_weight_decay.py +3 -2
- mindspore/ops/_op_impl/cpu/maximum_grad.py +16 -14
- mindspore/ops/_op_impl/cpu/minimum_grad.py +8 -0
- mindspore/ops/_vmap/vmap_array_ops.py +162 -101
- mindspore/ops/_vmap/vmap_base.py +8 -1
- mindspore/ops/_vmap/vmap_grad_math_ops.py +95 -9
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +143 -58
- mindspore/ops/_vmap/vmap_image_ops.py +70 -13
- mindspore/ops/_vmap/vmap_math_ops.py +147 -59
- mindspore/ops/_vmap/vmap_nn_ops.py +292 -117
- mindspore/ops/_vmap/vmap_other_ops.py +1 -1
- mindspore/ops/auto_generate/__init__.py +31 -0
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +309 -0
- mindspore/ops/auto_generate/gen_arg_dtype_cast.py +252 -0
- mindspore/ops/auto_generate/gen_arg_handler.py +197 -0
- mindspore/ops/auto_generate/gen_extend_func.py +1701 -0
- mindspore/ops/auto_generate/gen_ops_def.py +8482 -0
- mindspore/ops/auto_generate/gen_ops_prim.py +16704 -0
- mindspore/ops/auto_generate/pyboost_inner_prim.py +549 -0
- mindspore/ops/composite/__init__.py +5 -2
- mindspore/ops/composite/base.py +201 -66
- mindspore/ops/composite/math_ops.py +10 -49
- mindspore/ops/composite/multitype_ops/_compile_utils.py +192 -618
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +25 -134
- mindspore/ops/composite/multitype_ops/add_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/bitwise_and_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/bitwise_or_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/bitwise_xor_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/div_impl.py +8 -0
- mindspore/ops/composite/multitype_ops/equal_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +8 -0
- mindspore/ops/composite/multitype_ops/getitem_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/greater_equal_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/greater_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/in_impl.py +8 -2
- mindspore/ops/composite/multitype_ops/left_shift_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/less_equal_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/less_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/logic_not_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/logical_and_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/logical_or_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/mod_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/mul_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/negative_impl.py +9 -3
- mindspore/ops/composite/multitype_ops/not_equal_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/not_in_impl.py +8 -3
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +2 -2
- mindspore/ops/composite/multitype_ops/pow_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/right_shift_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +32 -21
- mindspore/ops/composite/multitype_ops/sub_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +6 -3
- mindspore/ops/deprecated.py +14 -3
- mindspore/ops/function/__init__.py +53 -11
- mindspore/ops/function/array_func.py +1269 -1821
- mindspore/ops/function/clip_func.py +19 -31
- mindspore/ops/function/debug_func.py +114 -5
- mindspore/ops/function/fft_func.py +44 -0
- mindspore/ops/function/grad/grad_func.py +30 -22
- mindspore/ops/function/image_func.py +27 -21
- mindspore/ops/function/linalg_func.py +35 -68
- mindspore/ops/function/math_func.py +1170 -2697
- mindspore/ops/function/nn_func.py +2116 -1128
- mindspore/ops/function/other_func.py +8 -8
- mindspore/ops/function/parameter_func.py +5 -93
- mindspore/ops/function/random_func.py +435 -113
- mindspore/ops/function/reshard_func.py +104 -0
- mindspore/ops/function/sparse_func.py +4 -4
- mindspore/ops/function/sparse_unary_func.py +9 -16
- mindspore/ops/function/spectral_func.py +1 -1
- mindspore/ops/function/vmap_func.py +16 -15
- mindspore/ops/functional.py +355 -346
- mindspore/ops/op_info_register.py +18 -45
- mindspore/ops/operations/__init__.py +38 -24
- mindspore/ops/operations/_grad_ops.py +21 -927
- mindspore/ops/operations/_infer_ops.py +19 -0
- mindspore/ops/operations/_inner_ops.py +173 -607
- mindspore/ops/operations/_rl_inner_ops.py +2 -2
- mindspore/ops/operations/_scalar_ops.py +5 -480
- mindspore/ops/operations/_sequence_ops.py +6 -36
- mindspore/ops/operations/_tensor_array.py +8 -8
- mindspore/ops/operations/array_ops.py +106 -2837
- mindspore/ops/operations/comm_ops.py +799 -127
- mindspore/ops/operations/custom_ops.py +124 -119
- mindspore/ops/operations/debug_ops.py +142 -41
- mindspore/ops/operations/image_ops.py +1 -217
- mindspore/ops/operations/inner_ops.py +5 -40
- mindspore/ops/operations/linalg_ops.py +1 -49
- mindspore/ops/operations/manually_defined/__init__.py +24 -0
- mindspore/ops/operations/manually_defined/_inner.py +73 -0
- mindspore/ops/operations/manually_defined/ops_def.py +2271 -0
- mindspore/ops/operations/math_ops.py +666 -4972
- mindspore/ops/operations/nn_ops.py +205 -2213
- mindspore/ops/operations/other_ops.py +60 -49
- mindspore/ops/operations/random_ops.py +50 -54
- mindspore/ops/operations/reshard_ops.py +53 -0
- mindspore/ops/operations/sparse_ops.py +4 -4
- mindspore/ops/primitive.py +216 -103
- mindspore/ops_generate/__init__.py +27 -0
- mindspore/ops_generate/arg_dtype_cast.py +252 -0
- mindspore/ops_generate/arg_handler.py +197 -0
- mindspore/ops_generate/gen_aclnn_implement.py +263 -0
- mindspore/ops_generate/gen_constants.py +36 -0
- mindspore/ops_generate/gen_ops.py +1099 -0
- mindspore/ops_generate/gen_ops_inner_prim.py +131 -0
- mindspore/ops_generate/gen_pyboost_func.py +1052 -0
- mindspore/ops_generate/gen_utils.py +209 -0
- mindspore/ops_generate/op_proto.py +145 -0
- mindspore/ops_generate/pyboost_utils.py +367 -0
- mindspore/ops_generate/template.py +261 -0
- mindspore/parallel/__init__.py +8 -4
- mindspore/parallel/_auto_parallel_context.py +100 -10
- mindspore/parallel/_cell_wrapper.py +99 -9
- mindspore/parallel/_cost_model_context.py +1 -1
- mindspore/parallel/_dp_allreduce_fusion.py +159 -159
- mindspore/parallel/_parallel_serialization.py +67 -23
- mindspore/parallel/_ps_context.py +1 -1
- mindspore/parallel/_recovery_context.py +1 -1
- mindspore/parallel/_tensor.py +99 -22
- mindspore/parallel/_transformer/__init__.py +1 -1
- mindspore/parallel/_transformer/layers.py +1 -1
- mindspore/parallel/_transformer/loss.py +1 -1
- mindspore/parallel/_transformer/moe.py +1 -1
- mindspore/parallel/_transformer/op_parallel_config.py +1 -1
- mindspore/parallel/_transformer/transformer.py +2 -2
- mindspore/parallel/_utils.py +173 -6
- mindspore/parallel/algo_parameter_config.py +8 -10
- mindspore/parallel/checkpoint_transform.py +204 -38
- mindspore/parallel/cluster/__init__.py +15 -0
- mindspore/parallel/cluster/process_entity/__init__.py +18 -0
- mindspore/parallel/cluster/process_entity/_api.py +352 -0
- mindspore/parallel/cluster/process_entity/_utils.py +101 -0
- mindspore/parallel/cluster/run.py +136 -0
- mindspore/parallel/mpi/__init__.py +1 -1
- mindspore/parallel/mpi/_mpi_config.py +1 -1
- mindspore/parallel/parameter_broadcast.py +151 -0
- mindspore/parallel/shard.py +279 -37
- mindspore/parallel/transform_safetensors.py +993 -0
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +4 -2
- mindspore/profiler/common/constant.py +29 -0
- mindspore/profiler/common/process_pool.py +41 -0
- mindspore/profiler/common/registry.py +47 -0
- mindspore/profiler/common/singleton.py +28 -0
- mindspore/profiler/common/util.py +153 -0
- mindspore/profiler/dynamic_profiler.py +694 -0
- mindspore/profiler/envprofiling.py +18 -20
- mindspore/{_extends/parallel_compile/tbe_compiler → profiler/parser/ascend_analysis}/__init__.py +1 -1
- mindspore/profiler/parser/ascend_analysis/constant.py +71 -0
- mindspore/profiler/parser/ascend_analysis/file_manager.py +180 -0
- mindspore/profiler/parser/ascend_analysis/function_event.py +185 -0
- mindspore/profiler/parser/ascend_analysis/fwk_cann_parser.py +136 -0
- mindspore/profiler/parser/ascend_analysis/fwk_file_parser.py +131 -0
- mindspore/profiler/parser/ascend_analysis/msprof_timeline_parser.py +104 -0
- mindspore/profiler/parser/ascend_analysis/path_manager.py +313 -0
- mindspore/profiler/parser/ascend_analysis/profiler_info_parser.py +123 -0
- mindspore/profiler/parser/ascend_analysis/tlv_decoder.py +86 -0
- mindspore/profiler/parser/ascend_analysis/trace_event_manager.py +75 -0
- mindspore/profiler/parser/ascend_cluster_generator.py +14 -9
- mindspore/profiler/parser/ascend_communicate_generator.py +0 -1
- mindspore/profiler/parser/ascend_flops_generator.py +20 -4
- mindspore/profiler/parser/ascend_hccl_generator.py +29 -278
- mindspore/profiler/parser/ascend_integrate_generator.py +42 -0
- mindspore/profiler/parser/ascend_memory_generator.py +185 -0
- mindspore/profiler/parser/ascend_msprof_exporter.py +148 -146
- mindspore/profiler/parser/ascend_msprof_generator.py +73 -283
- mindspore/profiler/parser/ascend_op_generator.py +92 -42
- mindspore/profiler/parser/ascend_timeline_generator.py +298 -133
- mindspore/profiler/parser/base_timeline_generator.py +25 -25
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +25 -12
- mindspore/profiler/parser/framework_parser.py +4 -393
- mindspore/profiler/parser/gpu_analysis/__init__.py +14 -0
- mindspore/profiler/parser/gpu_analysis/function_event.py +44 -0
- mindspore/profiler/parser/gpu_analysis/fwk_file_parser.py +89 -0
- mindspore/profiler/parser/gpu_analysis/profiler_info_parser.py +72 -0
- mindspore/profiler/parser/integrator.py +3 -1
- mindspore/profiler/parser/memory_usage_parser.py +0 -154
- mindspore/profiler/parser/minddata_parser.py +72 -3
- mindspore/profiler/parser/profiler_info.py +94 -7
- mindspore/profiler/profiler.py +153 -0
- mindspore/profiler/profiling.py +631 -508
- mindspore/rewrite/__init__.py +2 -14
- mindspore/rewrite/api/node.py +122 -36
- mindspore/rewrite/api/pattern_engine.py +2 -3
- mindspore/rewrite/api/scoped_value.py +16 -15
- mindspore/rewrite/api/symbol_tree.py +45 -29
- mindspore/rewrite/ast_helpers/__init__.py +3 -6
- mindspore/rewrite/ast_helpers/ast_converter.py +143 -0
- mindspore/rewrite/ast_helpers/ast_finder.py +48 -0
- mindspore/rewrite/ast_helpers/ast_flattener.py +268 -0
- mindspore/rewrite/ast_helpers/ast_modifier.py +160 -92
- mindspore/rewrite/common/__init__.py +1 -2
- mindspore/rewrite/common/config.py +24 -0
- mindspore/rewrite/common/{rewrite_elog.py → error_log.py} +39 -39
- mindspore/rewrite/{namer.py → common/namer.py} +63 -18
- mindspore/rewrite/common/namespace.py +118 -0
- mindspore/rewrite/node/__init__.py +5 -5
- mindspore/rewrite/node/call_function.py +23 -7
- mindspore/rewrite/node/cell_container.py +7 -3
- mindspore/rewrite/node/control_flow.py +53 -28
- mindspore/rewrite/node/node.py +212 -196
- mindspore/rewrite/node/node_manager.py +51 -22
- mindspore/rewrite/node/node_topological_manager.py +3 -23
- mindspore/rewrite/parsers/__init__.py +12 -0
- mindspore/rewrite/parsers/arguments_parser.py +8 -9
- mindspore/rewrite/parsers/assign_parser.py +637 -413
- mindspore/rewrite/parsers/attribute_parser.py +3 -4
- mindspore/rewrite/parsers/class_def_parser.py +115 -148
- mindspore/rewrite/parsers/constant_parser.py +5 -5
- mindspore/rewrite/parsers/container_parser.py +4 -6
- mindspore/rewrite/parsers/expr_parser.py +55 -0
- mindspore/rewrite/parsers/for_parser.py +31 -98
- mindspore/rewrite/parsers/function_def_parser.py +13 -5
- mindspore/rewrite/parsers/if_parser.py +28 -10
- mindspore/rewrite/parsers/module_parser.py +8 -182
- mindspore/rewrite/parsers/parser.py +1 -5
- mindspore/rewrite/parsers/parser_register.py +1 -1
- mindspore/rewrite/parsers/return_parser.py +5 -10
- mindspore/rewrite/parsers/while_parser.py +59 -0
- mindspore/rewrite/sparsify/utils.py +1 -1
- mindspore/rewrite/symbol_tree/__init__.py +20 -0
- mindspore/rewrite/{symbol_tree.py → symbol_tree/symbol_tree.py} +705 -186
- mindspore/rewrite/{symbol_tree_builder.py → symbol_tree/symbol_tree_builder.py} +8 -8
- mindspore/rewrite/{symbol_tree_dumper.py → symbol_tree/symbol_tree_dumper.py} +4 -4
- mindspore/run_check/_check_version.py +40 -115
- mindspore/run_check/run_check.py +1 -1
- mindspore/safeguard/rewrite_obfuscation.py +597 -263
- mindspore/swresample-4.dll +0 -0
- mindspore/swscale-6.dll +0 -0
- mindspore/tbbmalloc.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/__init__.py +7 -5
- mindspore/train/_utils.py +204 -4
- mindspore/train/amp.py +335 -295
- mindspore/train/anf_ir_pb2.py +14 -2
- mindspore/train/callback/__init__.py +5 -2
- mindspore/train/callback/_backup_and_restore.py +5 -5
- mindspore/train/callback/_callback.py +4 -4
- mindspore/train/callback/_checkpoint.py +220 -43
- mindspore/train/callback/_cluster_monitor.py +201 -0
- mindspore/train/callback/_early_stop.py +2 -2
- mindspore/train/callback/_flops_collector.py +239 -0
- mindspore/train/callback/_landscape.py +15 -9
- mindspore/train/callback/_loss_monitor.py +5 -5
- mindspore/train/callback/_on_request_exit.py +136 -33
- mindspore/train/callback/_reduce_lr_on_plateau.py +2 -2
- mindspore/train/callback/_summary_collector.py +12 -12
- mindspore/train/callback/_tft_register.py +352 -0
- mindspore/train/callback/_time_monitor.py +3 -3
- mindspore/train/data_sink.py +6 -5
- mindspore/train/dataset_helper.py +66 -23
- mindspore/train/loss_scale_manager.py +2 -2
- mindspore/train/metrics/accuracy.py +7 -7
- mindspore/train/metrics/confusion_matrix.py +8 -6
- mindspore/train/metrics/cosine_similarity.py +6 -4
- mindspore/train/metrics/error.py +2 -2
- mindspore/train/metrics/metric.py +3 -3
- mindspore/train/metrics/perplexity.py +2 -1
- mindspore/train/metrics/roc.py +4 -4
- mindspore/train/metrics/topk.py +2 -2
- mindspore/train/mind_ir_pb2.py +116 -37
- mindspore/train/model.py +382 -76
- mindspore/train/serialization.py +787 -288
- mindspore/train/summary/_summary_adapter.py +1 -1
- mindspore/train/summary/summary_record.py +51 -28
- mindspore/train/train_thor/convert_utils.py +3 -3
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +21 -0
- mindspore/utils/utils.py +60 -0
- mindspore/vcmeta.dll +0 -0
- mindspore/vcruntime140.dll +0 -0
- mindspore/vcruntime140_1.dll +0 -0
- mindspore/version.py +1 -1
- {mindspore-2.2.14.dist-info → mindspore-2.4.0.dist-info}/METADATA +8 -4
- mindspore-2.4.0.dist-info/RECORD +1406 -0
- {mindspore-2.2.14.dist-info → mindspore-2.4.0.dist-info}/entry_points.txt +1 -0
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +0 -662
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +0 -377
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +0 -201
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +0 -515
- mindspore/gen_ops.py +0 -273
- mindspore/include/c_api/ms/abstract.h +0 -67
- mindspore/include/c_api/ms/attribute.h +0 -197
- mindspore/include/c_api/ms/base/handle_types.h +0 -43
- mindspore/include/c_api/ms/base/macros.h +0 -32
- mindspore/include/c_api/ms/base/status.h +0 -33
- mindspore/include/c_api/ms/base/types.h +0 -282
- mindspore/include/c_api/ms/context.h +0 -102
- mindspore/include/c_api/ms/graph.h +0 -160
- mindspore/include/c_api/ms/node.h +0 -606
- mindspore/include/c_api/ms/tensor.h +0 -161
- mindspore/include/c_api/ms/value.h +0 -84
- mindspore/mindspore_shared_lib.dll +0 -0
- mindspore/nn/layer/flash_attention.py +0 -189
- mindspore/ops/_op_impl/aicpu/strided_slice_v2.py +0 -93
- mindspore/ops/_op_impl/aicpu/strided_slice_v2_grad.py +0 -66
- mindspore/ops/_op_impl/cpu/concat.py +0 -39
- mindspore/ops/_op_impl/cpu/tensor_shape.py +0 -42
- mindspore/ops/_op_impl/tbe/__init__.py +0 -47
- mindspore/ops/_op_impl/tbe/abs.py +0 -38
- mindspore/ops/_op_impl/tbe/abs_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/abs_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/abs_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/accumulate_n_v2.py +0 -41
- mindspore/ops/_op_impl/tbe/accumulate_n_v2_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/acos.py +0 -37
- mindspore/ops/_op_impl/tbe/acos_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/acos_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/acos_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/acosh.py +0 -37
- mindspore/ops/_op_impl/tbe/acosh_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/acosh_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/acosh_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/act_ulq_clamp_max_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/act_ulq_clamp_min_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/acts_ulq.py +0 -45
- mindspore/ops/_op_impl/tbe/acts_ulq_input_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/adam_apply_one.py +0 -50
- mindspore/ops/_op_impl/tbe/adam_apply_one_assign.py +0 -53
- mindspore/ops/_op_impl/tbe/adam_apply_one_ds.py +0 -51
- mindspore/ops/_op_impl/tbe/adam_apply_one_with_decay.py +0 -54
- mindspore/ops/_op_impl/tbe/adam_apply_one_with_decay_assign.py +0 -54
- mindspore/ops/_op_impl/tbe/adam_apply_one_with_decay_ds.py +0 -55
- mindspore/ops/_op_impl/tbe/adaptive_max_pool2d.py +0 -37
- mindspore/ops/_op_impl/tbe/add.py +0 -42
- mindspore/ops/_op_impl/tbe/add_ds.py +0 -43
- mindspore/ops/_op_impl/tbe/add_n.py +0 -39
- mindspore/ops/_op_impl/tbe/add_n_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/addcdiv.py +0 -41
- mindspore/ops/_op_impl/tbe/addcdiv_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/addcmul.py +0 -43
- mindspore/ops/_op_impl/tbe/addcmul_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/apply_ada_max.py +0 -68
- mindspore/ops/_op_impl/tbe/apply_ada_max_ds.py +0 -69
- mindspore/ops/_op_impl/tbe/apply_adadelta.py +0 -66
- mindspore/ops/_op_impl/tbe/apply_adadelta_ds.py +0 -67
- mindspore/ops/_op_impl/tbe/apply_adagrad.py +0 -55
- mindspore/ops/_op_impl/tbe/apply_adagrad_d_a.py +0 -67
- mindspore/ops/_op_impl/tbe/apply_adagrad_ds.py +0 -56
- mindspore/ops/_op_impl/tbe/apply_adagrad_v2.py +0 -48
- mindspore/ops/_op_impl/tbe/apply_adagrad_v2_ds.py +0 -49
- mindspore/ops/_op_impl/tbe/apply_adam.py +0 -79
- mindspore/ops/_op_impl/tbe/apply_adam_ds.py +0 -80
- mindspore/ops/_op_impl/tbe/apply_adam_with_amsgrad.py +0 -60
- mindspore/ops/_op_impl/tbe/apply_adam_with_amsgrad_ds.py +0 -61
- mindspore/ops/_op_impl/tbe/apply_add_sign.py +0 -65
- mindspore/ops/_op_impl/tbe/apply_add_sign_ds.py +0 -66
- mindspore/ops/_op_impl/tbe/apply_centered_rms_prop.py +0 -77
- mindspore/ops/_op_impl/tbe/apply_centered_rms_prop_ds.py +0 -78
- mindspore/ops/_op_impl/tbe/apply_ftrl.py +0 -67
- mindspore/ops/_op_impl/tbe/apply_ftrl_ds.py +0 -68
- mindspore/ops/_op_impl/tbe/apply_gradient_descent.py +0 -44
- mindspore/ops/_op_impl/tbe/apply_gradient_descent_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/apply_keras_momentum.py +0 -49
- mindspore/ops/_op_impl/tbe/apply_momentum.py +0 -64
- mindspore/ops/_op_impl/tbe/apply_momentum_ds.py +0 -65
- mindspore/ops/_op_impl/tbe/apply_power_sign.py +0 -65
- mindspore/ops/_op_impl/tbe/apply_power_sign_ds.py +0 -66
- mindspore/ops/_op_impl/tbe/apply_proximal_adagrad.py +0 -57
- mindspore/ops/_op_impl/tbe/apply_proximal_adagrad_ds.py +0 -58
- mindspore/ops/_op_impl/tbe/apply_proximal_gradient_descent.py +0 -54
- mindspore/ops/_op_impl/tbe/apply_proximal_gradient_descent_ds.py +0 -55
- mindspore/ops/_op_impl/tbe/apply_rms_prop.py +0 -52
- mindspore/ops/_op_impl/tbe/approximate_equal.py +0 -39
- mindspore/ops/_op_impl/tbe/approximate_equal_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/arg_max.py +0 -38
- mindspore/ops/_op_impl/tbe/arg_max_with_value.py +0 -38
- mindspore/ops/_op_impl/tbe/arg_max_with_value_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/arg_min.py +0 -38
- mindspore/ops/_op_impl/tbe/arg_min_v2_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/arg_min_with_value.py +0 -38
- mindspore/ops/_op_impl/tbe/arg_min_with_value_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/asin.py +0 -37
- mindspore/ops/_op_impl/tbe/asin_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/asin_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/asin_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/asinh.py +0 -37
- mindspore/ops/_op_impl/tbe/asinh_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/asinh_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/asinh_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/assign.py +0 -79
- mindspore/ops/_op_impl/tbe/assign_add.py +0 -59
- mindspore/ops/_op_impl/tbe/assign_add_ds.py +0 -60
- mindspore/ops/_op_impl/tbe/assign_ds.py +0 -80
- mindspore/ops/_op_impl/tbe/assign_sub.py +0 -55
- mindspore/ops/_op_impl/tbe/assign_sub_ds.py +0 -56
- mindspore/ops/_op_impl/tbe/atan.py +0 -37
- mindspore/ops/_op_impl/tbe/atan2.py +0 -38
- mindspore/ops/_op_impl/tbe/atan2_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/atan_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/atan_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/atan_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/atanh.py +0 -37
- mindspore/ops/_op_impl/tbe/atanh_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/avg_pool.py +0 -43
- mindspore/ops/_op_impl/tbe/avg_pool_3d.py +0 -44
- mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +0 -45
- mindspore/ops/_op_impl/tbe/avg_pool_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/avg_pool_grad.py +0 -42
- mindspore/ops/_op_impl/tbe/avg_pool_grad_vm.py +0 -42
- mindspore/ops/_op_impl/tbe/basic_lstm_cell.py +0 -57
- mindspore/ops/_op_impl/tbe/basic_lstm_cell_c_state_grad.py +0 -50
- mindspore/ops/_op_impl/tbe/basic_lstm_cell_c_state_grad_v2.py +0 -51
- mindspore/ops/_op_impl/tbe/basic_lstm_cell_input_grad.py +0 -42
- mindspore/ops/_op_impl/tbe/basic_lstm_cell_weight_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/batch_matmul.py +0 -42
- mindspore/ops/_op_impl/tbe/batch_matmul_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/batch_matmul_v2.py +0 -47
- mindspore/ops/_op_impl/tbe/batch_to_space.py +0 -38
- mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +0 -38
- mindspore/ops/_op_impl/tbe/batch_to_space_nd_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/batch_to_space_nd_v2.py +0 -41
- mindspore/ops/_op_impl/tbe/batchnorm.py +0 -58
- mindspore/ops/_op_impl/tbe/batchnorm_grad.py +0 -58
- mindspore/ops/_op_impl/tbe/bce_with_logits_loss.py +0 -42
- mindspore/ops/_op_impl/tbe/bessel_i0e.py +0 -37
- mindspore/ops/_op_impl/tbe/bessel_i0e_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/bessel_i1e.py +0 -37
- mindspore/ops/_op_impl/tbe/bessel_i1e_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/bias_add.py +0 -38
- mindspore/ops/_op_impl/tbe/bias_add_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/bias_add_grad.py +0 -53
- mindspore/ops/_op_impl/tbe/binary_cross_entropy.py +0 -39
- mindspore/ops/_op_impl/tbe/binary_cross_entropy_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/binary_cross_entropy_grad.py +0 -44
- mindspore/ops/_op_impl/tbe/binary_cross_entropy_grad_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/bitwise_and.py +0 -39
- mindspore/ops/_op_impl/tbe/bitwise_and_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/bitwise_or.py +0 -39
- mindspore/ops/_op_impl/tbe/bitwise_or_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/bitwise_xor.py +0 -39
- mindspore/ops/_op_impl/tbe/bitwise_xor_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/bn_infer.py +0 -43
- mindspore/ops/_op_impl/tbe/bn_infer_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/bn_infer_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/bn_infer_grad_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/bn_inference.py +0 -50
- mindspore/ops/_op_impl/tbe/bn_training_reduce.py +0 -38
- mindspore/ops/_op_impl/tbe/bn_training_reduce_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/bn_training_reduce_grad.py +0 -46
- mindspore/ops/_op_impl/tbe/bn_training_reduce_grad_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/bn_training_update.py +0 -52
- mindspore/ops/_op_impl/tbe/bn_training_update_ds.py +0 -53
- mindspore/ops/_op_impl/tbe/bn_training_update_grad.py +0 -44
- mindspore/ops/_op_impl/tbe/bn_training_update_grad_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/bn_training_update_v2.py +0 -48
- mindspore/ops/_op_impl/tbe/bn_training_update_v3.py +0 -51
- mindspore/ops/_op_impl/tbe/bounding_box_decode.py +0 -41
- mindspore/ops/_op_impl/tbe/bounding_box_decode_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/bounding_box_encode.py +0 -38
- mindspore/ops/_op_impl/tbe/broadcast_to.py +0 -40
- mindspore/ops/_op_impl/tbe/broadcast_to_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/cast.py +0 -55
- mindspore/ops/_op_impl/tbe/cast_ds.py +0 -58
- mindspore/ops/_op_impl/tbe/cdist.py +0 -38
- mindspore/ops/_op_impl/tbe/cdist_grad.py +0 -42
- mindspore/ops/_op_impl/tbe/ceil.py +0 -37
- mindspore/ops/_op_impl/tbe/ceil_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/celu.py +0 -39
- mindspore/ops/_op_impl/tbe/centralization.py +0 -39
- mindspore/ops/_op_impl/tbe/check_valid.py +0 -38
- mindspore/ops/_op_impl/tbe/check_valid_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/clip_by_norm_no_div_sum.py +0 -41
- mindspore/ops/_op_impl/tbe/clip_by_norm_no_div_sum_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/clip_by_value.py +0 -41
- mindspore/ops/_op_impl/tbe/clip_by_value_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/concat.py +0 -40
- mindspore/ops/_op_impl/tbe/concat_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/confusion_matrix.py +0 -63
- mindspore/ops/_op_impl/tbe/confusion_mul_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/confusion_softmax_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/confusion_transpose_d.py +0 -39
- mindspore/ops/_op_impl/tbe/conv2d.py +0 -47
- mindspore/ops/_op_impl/tbe/conv2d_backprop_filter.py +0 -42
- mindspore/ops/_op_impl/tbe/conv2d_backprop_filter_ds.py +0 -43
- mindspore/ops/_op_impl/tbe/conv2d_backprop_input.py +0 -42
- mindspore/ops/_op_impl/tbe/conv2d_backprop_input_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/conv2d_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/conv2d_transpose.py +0 -48
- mindspore/ops/_op_impl/tbe/conv3d.py +0 -45
- mindspore/ops/_op_impl/tbe/conv3d_backprop_filter.py +0 -42
- mindspore/ops/_op_impl/tbe/conv3d_backprop_input.py +0 -42
- mindspore/ops/_op_impl/tbe/conv3d_transpose.py +0 -47
- mindspore/ops/_op_impl/tbe/conv3d_transpose_ds.py +0 -48
- mindspore/ops/_op_impl/tbe/cos.py +0 -37
- mindspore/ops/_op_impl/tbe/cos_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/cosh.py +0 -37
- mindspore/ops/_op_impl/tbe/cosh_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/ctc_loss_v2.py +0 -42
- mindspore/ops/_op_impl/tbe/ctc_loss_v2_grad.py +0 -44
- mindspore/ops/_op_impl/tbe/cum_sum.py +0 -42
- mindspore/ops/_op_impl/tbe/cum_sum_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/cummin.py +0 -41
- mindspore/ops/_op_impl/tbe/cumprod.py +0 -42
- mindspore/ops/_op_impl/tbe/data_format_dim_map.py +0 -38
- mindspore/ops/_op_impl/tbe/data_format_dim_map_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/deformable_offsets.py +0 -45
- mindspore/ops/_op_impl/tbe/deformable_offsets_grad.py +0 -48
- mindspore/ops/_op_impl/tbe/depth_to_space_ds.py +0 -49
- mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +0 -44
- mindspore/ops/_op_impl/tbe/depthwise_conv2d_backprop_filter.py +0 -41
- mindspore/ops/_op_impl/tbe/depthwise_conv2d_backprop_input.py +0 -41
- mindspore/ops/_op_impl/tbe/diag.py +0 -38
- mindspore/ops/_op_impl/tbe/diag_part.py +0 -38
- mindspore/ops/_op_impl/tbe/dilation.py +0 -40
- mindspore/ops/_op_impl/tbe/div.py +0 -41
- mindspore/ops/_op_impl/tbe/div_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/div_no_nan.py +0 -41
- mindspore/ops/_op_impl/tbe/div_no_nan_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/dropout_do_mask.py +0 -38
- mindspore/ops/_op_impl/tbe/dropout_do_mask_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/dropout_do_mask_v3.py +0 -39
- mindspore/ops/_op_impl/tbe/dynamic_atomic_addr_clean.py +0 -34
- mindspore/ops/_op_impl/tbe/dynamic_gru_v2.py +0 -95
- mindspore/ops/_op_impl/tbe/dynamic_rnn.py +0 -82
- mindspore/ops/_op_impl/tbe/elu.py +0 -38
- mindspore/ops/_op_impl/tbe/elu_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/elu_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/elu_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/equal.py +0 -42
- mindspore/ops/_op_impl/tbe/equal_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/erf.py +0 -37
- mindspore/ops/_op_impl/tbe/erf_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/erfc.py +0 -37
- mindspore/ops/_op_impl/tbe/erfc_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/erfinv.py +0 -36
- mindspore/ops/_op_impl/tbe/exp.py +0 -40
- mindspore/ops/_op_impl/tbe/exp_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/expand_dims.py +0 -38
- mindspore/ops/_op_impl/tbe/expm1.py +0 -37
- mindspore/ops/_op_impl/tbe/expm1_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/extract_image_patches.py +0 -41
- mindspore/ops/_op_impl/tbe/extract_volume_patches.py +0 -39
- mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars.py +0 -39
- mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars_gradient.py +0 -43
- mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars_per_channel.py +0 -39
- mindspore/ops/_op_impl/tbe/fake_quant_with_min_max_vars_per_channel_gradient.py +0 -43
- mindspore/ops/_op_impl/tbe/fast_gelu.py +0 -37
- mindspore/ops/_op_impl/tbe/fast_gelu_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/fast_gelu_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/fast_gelu_grad_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/fill.py +0 -56
- mindspore/ops/_op_impl/tbe/fill_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/flatten.py +0 -48
- mindspore/ops/_op_impl/tbe/floor.py +0 -37
- mindspore/ops/_op_impl/tbe/floor_div.py +0 -41
- mindspore/ops/_op_impl/tbe/floor_div_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/floor_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/floor_mod.py +0 -39
- mindspore/ops/_op_impl/tbe/floor_mod_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/fused_dbn_dw.py +0 -52
- mindspore/ops/_op_impl/tbe/fused_mul_add.py +0 -38
- mindspore/ops/_op_impl/tbe/fused_mul_add_n.py +0 -48
- mindspore/ops/_op_impl/tbe/fused_mul_add_n_l2loss.py +0 -53
- mindspore/ops/_op_impl/tbe/fused_mul_apply_momentum.py +0 -57
- mindspore/ops/_op_impl/tbe/fused_mul_apply_momentum_extern.py +0 -67
- mindspore/ops/_op_impl/tbe/gather_nd.py +0 -52
- mindspore/ops/_op_impl/tbe/gather_nd_ds.py +0 -48
- mindspore/ops/_op_impl/tbe/gather_v2.py +0 -56
- mindspore/ops/_op_impl/tbe/gather_v2_ds.py +0 -68
- mindspore/ops/_op_impl/tbe/gelu.py +0 -37
- mindspore/ops/_op_impl/tbe/gelu_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/gelu_grad.py +0 -42
- mindspore/ops/_op_impl/tbe/gelu_grad_ds.py +0 -43
- mindspore/ops/_op_impl/tbe/ger.py +0 -43
- mindspore/ops/_op_impl/tbe/ger_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/greater.py +0 -43
- mindspore/ops/_op_impl/tbe/greater_equal.py +0 -41
- mindspore/ops/_op_impl/tbe/greater_equal_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/gru_v2_hidden_grad.py +0 -51
- mindspore/ops/_op_impl/tbe/gru_v2_hidden_grad_cell.py +0 -52
- mindspore/ops/_op_impl/tbe/hard_swish.py +0 -37
- mindspore/ops/_op_impl/tbe/hard_swish_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/hard_swish_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/hard_swish_grad_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/histogram_fixed_width.py +0 -40
- mindspore/ops/_op_impl/tbe/hshrink.py +0 -33
- mindspore/ops/_op_impl/tbe/hshrink_grad.py +0 -37
- mindspore/ops/_op_impl/tbe/hsigmoid.py +0 -45
- mindspore/ops/_op_impl/tbe/hsigmoid_grad.py +0 -39
- mindspore/ops/_op_impl/tbe/ifmr.py +0 -47
- mindspore/ops/_op_impl/tbe/ifmr_ds.py +0 -48
- mindspore/ops/_op_impl/tbe/im2col.py +0 -42
- mindspore/ops/_op_impl/tbe/in_top_k.py +0 -37
- mindspore/ops/_op_impl/tbe/inplace_add.py +0 -39
- mindspore/ops/_op_impl/tbe/inplace_index_add.py +0 -46
- mindspore/ops/_op_impl/tbe/inplace_sub.py +0 -39
- mindspore/ops/_op_impl/tbe/inplace_update.py +0 -39
- mindspore/ops/_op_impl/tbe/inplace_update_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/inv.py +0 -38
- mindspore/ops/_op_impl/tbe/inv_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/inv_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/inv_grad_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/invert.py +0 -37
- mindspore/ops/_op_impl/tbe/invert_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/iou.py +0 -38
- mindspore/ops/_op_impl/tbe/iou_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/is_close.py +0 -40
- mindspore/ops/_op_impl/tbe/kl_div_loss.py +0 -38
- mindspore/ops/_op_impl/tbe/kl_div_loss_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/kl_div_loss_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/l2_loss.py +0 -36
- mindspore/ops/_op_impl/tbe/l2_loss_ds.py +0 -37
- mindspore/ops/_op_impl/tbe/l2_normalize.py +0 -38
- mindspore/ops/_op_impl/tbe/l2_normalize_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/lamb_apply_optimizer_assign.py +0 -55
- mindspore/ops/_op_impl/tbe/lamb_apply_weight_assign.py +0 -42
- mindspore/ops/_op_impl/tbe/lamb_next_mv.py +0 -59
- mindspore/ops/_op_impl/tbe/lamb_next_mv_with_decay.py +0 -59
- mindspore/ops/_op_impl/tbe/lamb_next_right.py +0 -44
- mindspore/ops/_op_impl/tbe/lamb_update_with_lr.py +0 -48
- mindspore/ops/_op_impl/tbe/lamb_update_with_lr_v2.py +0 -44
- mindspore/ops/_op_impl/tbe/lars_update.py +0 -50
- mindspore/ops/_op_impl/tbe/lars_update_ds.py +0 -51
- mindspore/ops/_op_impl/tbe/layer_norm.py +0 -46
- mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop.py +0 -44
- mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_v2.py +0 -40
- mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_v2_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/layer_norm_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/layer_norm_grad.py +0 -48
- mindspore/ops/_op_impl/tbe/layer_norm_x_backprop.py +0 -43
- mindspore/ops/_op_impl/tbe/layer_norm_x_backprop_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/layer_norm_x_backprop_v2.py +0 -45
- mindspore/ops/_op_impl/tbe/layer_norm_x_backprop_v2_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/lerp.py +0 -38
- mindspore/ops/_op_impl/tbe/less.py +0 -41
- mindspore/ops/_op_impl/tbe/less_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/less_equal.py +0 -41
- mindspore/ops/_op_impl/tbe/less_equal_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/log.py +0 -40
- mindspore/ops/_op_impl/tbe/log1p.py +0 -37
- mindspore/ops/_op_impl/tbe/log1p_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/log_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/logical_and.py +0 -37
- mindspore/ops/_op_impl/tbe/logical_and_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/logical_not.py +0 -36
- mindspore/ops/_op_impl/tbe/logical_not_ds.py +0 -37
- mindspore/ops/_op_impl/tbe/logical_or.py +0 -37
- mindspore/ops/_op_impl/tbe/logical_or_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/logsoftmax.py +0 -37
- mindspore/ops/_op_impl/tbe/logsoftmax_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/logsoftmax_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/logsoftmax_grad_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/lp_norm.py +0 -40
- mindspore/ops/_op_impl/tbe/lp_norm_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/lrn.py +0 -41
- mindspore/ops/_op_impl/tbe/lrn_grad.py +0 -42
- mindspore/ops/_op_impl/tbe/lstm_input_grad.py +0 -51
- mindspore/ops/_op_impl/tbe/masked_fill.py +0 -40
- mindspore/ops/_op_impl/tbe/masked_fill_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/matmul.py +0 -53
- mindspore/ops/_op_impl/tbe/matmul_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/matmul_v2.py +0 -50
- mindspore/ops/_op_impl/tbe/matrix_diag.py +0 -45
- mindspore/ops/_op_impl/tbe/matrix_diag_part.py +0 -45
- mindspore/ops/_op_impl/tbe/matrix_set_diag.py +0 -46
- mindspore/ops/_op_impl/tbe/max_pool.py +0 -39
- mindspore/ops/_op_impl/tbe/max_pool3d.py +0 -44
- mindspore/ops/_op_impl/tbe/max_pool3d_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/max_pool3d_grad_grad.py +0 -44
- mindspore/ops/_op_impl/tbe/max_pool_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/max_pool_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/max_pool_grad_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/max_pool_grad_grad_with_argmax.py +0 -41
- mindspore/ops/_op_impl/tbe/max_pool_grad_with_argmax.py +0 -42
- mindspore/ops/_op_impl/tbe/max_pool_with_argmax.py +0 -40
- mindspore/ops/_op_impl/tbe/maximum.py +0 -39
- mindspore/ops/_op_impl/tbe/maximum_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/maximum_grad.py +0 -46
- mindspore/ops/_op_impl/tbe/maximum_grad_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/mem_set.py +0 -38
- mindspore/ops/_op_impl/tbe/minimum.py +0 -40
- mindspore/ops/_op_impl/tbe/minimum_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/minimum_grad.py +0 -46
- mindspore/ops/_op_impl/tbe/minimum_grad_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/mish.py +0 -37
- mindspore/ops/_op_impl/tbe/mod.py +0 -41
- mindspore/ops/_op_impl/tbe/mod_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/mul.py +0 -37
- mindspore/ops/_op_impl/tbe/mul_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/mul_no_nan.py +0 -39
- mindspore/ops/_op_impl/tbe/mul_no_nan_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/multilabel_margin_loss.py +0 -39
- mindspore/ops/_op_impl/tbe/neg.py +0 -39
- mindspore/ops/_op_impl/tbe/neg_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/new_im2col.py +0 -40
- mindspore/ops/_op_impl/tbe/nll_loss.py +0 -41
- mindspore/ops/_op_impl/tbe/nll_loss_grad.py +0 -44
- mindspore/ops/_op_impl/tbe/nms_with_mask.py +0 -39
- mindspore/ops/_op_impl/tbe/not_equal.py +0 -41
- mindspore/ops/_op_impl/tbe/not_equal_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/npu_alloc_float_status.py +0 -34
- mindspore/ops/_op_impl/tbe/npu_clear_float_status.py +0 -35
- mindspore/ops/_op_impl/tbe/npu_clear_float_status_v2.py +0 -35
- mindspore/ops/_op_impl/tbe/npu_get_float_status.py +0 -35
- mindspore/ops/_op_impl/tbe/npu_get_float_status_v2.py +0 -35
- mindspore/ops/_op_impl/tbe/one_hot.py +0 -48
- mindspore/ops/_op_impl/tbe/one_hot_ds.py +0 -45
- mindspore/ops/_op_impl/tbe/ones_like.py +0 -40
- mindspore/ops/_op_impl/tbe/ones_like_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/p_s_r_o_i_pooling.py +0 -40
- mindspore/ops/_op_impl/tbe/p_s_r_o_i_pooling_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/pack.py +0 -58
- mindspore/ops/_op_impl/tbe/pack_ds.py +0 -59
- mindspore/ops/_op_impl/tbe/pad_d.py +0 -40
- mindspore/ops/_op_impl/tbe/pad_d_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/parallel_concat.py +0 -70
- mindspore/ops/_op_impl/tbe/parallel_resize_bilinear.py +0 -45
- mindspore/ops/_op_impl/tbe/parallel_resize_bilinear_grad.py +0 -44
- mindspore/ops/_op_impl/tbe/pdist.py +0 -36
- mindspore/ops/_op_impl/tbe/pooling.py +0 -46
- mindspore/ops/_op_impl/tbe/population_count.py +0 -38
- mindspore/ops/_op_impl/tbe/pow.py +0 -41
- mindspore/ops/_op_impl/tbe/pow_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/prelu.py +0 -37
- mindspore/ops/_op_impl/tbe/prelu_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/prelu_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/range.py +0 -39
- mindspore/ops/_op_impl/tbe/real_div.py +0 -38
- mindspore/ops/_op_impl/tbe/real_div_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/reciprocal.py +0 -36
- mindspore/ops/_op_impl/tbe/reciprocal_ds.py +0 -37
- mindspore/ops/_op_impl/tbe/reciprocal_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/reciprocal_grad_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/reduce_all.py +0 -38
- mindspore/ops/_op_impl/tbe/reduce_all_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/reduce_any.py +0 -38
- mindspore/ops/_op_impl/tbe/reduce_any_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/reduce_max.py +0 -43
- mindspore/ops/_op_impl/tbe/reduce_max_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/reduce_mean.py +0 -40
- mindspore/ops/_op_impl/tbe/reduce_mean_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/reduce_min.py +0 -41
- mindspore/ops/_op_impl/tbe/reduce_min_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/reduce_prod.py +0 -42
- mindspore/ops/_op_impl/tbe/reduce_prod_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/reduce_std.py +0 -44
- mindspore/ops/_op_impl/tbe/reduce_sum.py +0 -39
- mindspore/ops/_op_impl/tbe/reduce_sum_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/relu.py +0 -39
- mindspore/ops/_op_impl/tbe/relu6.py +0 -38
- mindspore/ops/_op_impl/tbe/relu6_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/relu6_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/relu6_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/relu_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/relu_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/relu_grad_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/relu_grad_v2.py +0 -40
- mindspore/ops/_op_impl/tbe/relu_grad_v2_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/relu_v2.py +0 -40
- mindspore/ops/_op_impl/tbe/relu_v2_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/renorm.py +0 -39
- mindspore/ops/_op_impl/tbe/resize_bilinear.py +0 -40
- mindspore/ops/_op_impl/tbe/resize_bilinear_grad.py +0 -41
- mindspore/ops/_op_impl/tbe/resize_bilinear_v2.py +0 -43
- mindspore/ops/_op_impl/tbe/resize_nearest_neighbor.py +0 -40
- mindspore/ops/_op_impl/tbe/resize_nearest_neighbor_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/resize_nearest_neighbor_grad.py +0 -39
- mindspore/ops/_op_impl/tbe/resize_nearest_neighbor_grad_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/reverse_v2_d.py +0 -37
- mindspore/ops/_op_impl/tbe/rint.py +0 -37
- mindspore/ops/_op_impl/tbe/rint_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/roi_align.py +0 -43
- mindspore/ops/_op_impl/tbe/roi_align_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/roi_align_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/roi_align_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/roll.py +0 -42
- mindspore/ops/_op_impl/tbe/round.py +0 -38
- mindspore/ops/_op_impl/tbe/round_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/rsqrt.py +0 -37
- mindspore/ops/_op_impl/tbe/rsqrt_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/rsqrt_grad.py +0 -40
- mindspore/ops/_op_impl/tbe/rsqrt_grad_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/scatter_add.py +0 -44
- mindspore/ops/_op_impl/tbe/scatter_div.py +0 -46
- mindspore/ops/_op_impl/tbe/scatter_max.py +0 -45
- mindspore/ops/_op_impl/tbe/scatter_min.py +0 -45
- mindspore/ops/_op_impl/tbe/scatter_mul.py +0 -44
- mindspore/ops/_op_impl/tbe/scatter_nd.py +0 -41
- mindspore/ops/_op_impl/tbe/scatter_nd_add.py +0 -45
- mindspore/ops/_op_impl/tbe/scatter_nd_d.py +0 -41
- mindspore/ops/_op_impl/tbe/scatter_nd_ds.py +0 -49
- mindspore/ops/_op_impl/tbe/scatter_nd_sub.py +0 -47
- mindspore/ops/_op_impl/tbe/scatter_nd_sub_ds.py +0 -48
- mindspore/ops/_op_impl/tbe/scatter_nd_update.py +0 -47
- mindspore/ops/_op_impl/tbe/scatter_nd_update_ds.py +0 -48
- mindspore/ops/_op_impl/tbe/scatter_non_aliasing_add.py +0 -39
- mindspore/ops/_op_impl/tbe/scatter_non_aliasing_add_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/scatter_sub.py +0 -47
- mindspore/ops/_op_impl/tbe/scatter_sub_ds.py +0 -48
- mindspore/ops/_op_impl/tbe/scatter_update.py +0 -43
- mindspore/ops/_op_impl/tbe/select.py +0 -38
- mindspore/ops/_op_impl/tbe/select_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/selu.py +0 -39
- mindspore/ops/_op_impl/tbe/selu_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/sgd.py +0 -62
- mindspore/ops/_op_impl/tbe/sigmoid.py +0 -37
- mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits.py +0 -41
- mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits_grad.py +0 -42
- mindspore/ops/_op_impl/tbe/sigmoid_cross_entropy_with_logits_grad_ds.py +0 -43
- mindspore/ops/_op_impl/tbe/sigmoid_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/sigmoid_grad.py +0 -39
- mindspore/ops/_op_impl/tbe/sigmoid_grad_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/sign.py +0 -38
- mindspore/ops/_op_impl/tbe/sign_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/sin.py +0 -37
- mindspore/ops/_op_impl/tbe/sin_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/sinh.py +0 -37
- mindspore/ops/_op_impl/tbe/sinh_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/slice.py +0 -58
- mindspore/ops/_op_impl/tbe/smooth_l1_loss.py +0 -45
- mindspore/ops/_op_impl/tbe/smooth_l1_loss_ds.py +0 -46
- mindspore/ops/_op_impl/tbe/smooth_l1_loss_grad.py +0 -46
- mindspore/ops/_op_impl/tbe/smooth_l1_loss_grad_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/soft_margin_loss.py +0 -38
- mindspore/ops/_op_impl/tbe/soft_margin_loss_grad.py +0 -39
- mindspore/ops/_op_impl/tbe/soft_shrink.py +0 -36
- mindspore/ops/_op_impl/tbe/soft_shrink_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/softmax.py +0 -37
- mindspore/ops/_op_impl/tbe/softmax_cross_entropy_with_logits.py +0 -38
- mindspore/ops/_op_impl/tbe/softmax_cross_entropy_with_logits_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/softmax_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/softmax_grad_ext.py +0 -42
- mindspore/ops/_op_impl/tbe/softmax_v2_with_dropout_do_mask_v3.py +0 -39
- mindspore/ops/_op_impl/tbe/softplus.py +0 -37
- mindspore/ops/_op_impl/tbe/softplus_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/softplus_grad.py +0 -38
- mindspore/ops/_op_impl/tbe/softplus_grad_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/softsign.py +0 -37
- mindspore/ops/_op_impl/tbe/softsign_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/sort.py +0 -38
- mindspore/ops/_op_impl/tbe/sort_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/space_to_batch.py +0 -38
- mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +0 -38
- mindspore/ops/_op_impl/tbe/space_to_depth.py +0 -47
- mindspore/ops/_op_impl/tbe/sparse_apply_adadelta.py +0 -56
- mindspore/ops/_op_impl/tbe/sparse_apply_adagrad.py +0 -45
- mindspore/ops/_op_impl/tbe/sparse_apply_adagrad_ds.py +0 -46
- mindspore/ops/_op_impl/tbe/sparse_apply_adagrad_v2.py +0 -46
- mindspore/ops/_op_impl/tbe/sparse_apply_adagrad_v2_ds.py +0 -47
- mindspore/ops/_op_impl/tbe/sparse_apply_ftrl_d.py +0 -53
- mindspore/ops/_op_impl/tbe/sparse_apply_ftrl_d_ds.py +0 -50
- mindspore/ops/_op_impl/tbe/sparse_apply_ftrl_v2.py +0 -50
- mindspore/ops/_op_impl/tbe/sparse_apply_proximal_adagrad.py +0 -66
- mindspore/ops/_op_impl/tbe/sparse_apply_proximal_adagrad_ds.py +0 -67
- mindspore/ops/_op_impl/tbe/sparse_apply_r_m_s_prop.py +0 -57
- mindspore/ops/_op_impl/tbe/sparse_apply_r_m_s_prop_ds.py +0 -58
- mindspore/ops/_op_impl/tbe/sparse_gather_v2.py +0 -56
- mindspore/ops/_op_impl/tbe/sparse_gather_v2_ds.py +0 -58
- mindspore/ops/_op_impl/tbe/split_d.py +0 -38
- mindspore/ops/_op_impl/tbe/split_d_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/split_v.py +0 -39
- mindspore/ops/_op_impl/tbe/splitv.py +0 -39
- mindspore/ops/_op_impl/tbe/sqrt.py +0 -37
- mindspore/ops/_op_impl/tbe/sqrt_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/sqrt_grad.py +0 -43
- mindspore/ops/_op_impl/tbe/sqrt_grad_ds.py +0 -44
- mindspore/ops/_op_impl/tbe/square.py +0 -38
- mindspore/ops/_op_impl/tbe/square_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/square_sum_all.py +0 -40
- mindspore/ops/_op_impl/tbe/square_sum_all_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/square_sum_v1.py +0 -38
- mindspore/ops/_op_impl/tbe/square_sum_v1_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/square_sum_v2.py +0 -39
- mindspore/ops/_op_impl/tbe/squared_difference.py +0 -39
- mindspore/ops/_op_impl/tbe/squared_difference_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/squeeze.py +0 -37
- mindspore/ops/_op_impl/tbe/strided_read.py +0 -38
- mindspore/ops/_op_impl/tbe/strided_slice_d.py +0 -44
- mindspore/ops/_op_impl/tbe/strided_slice_ds.py +0 -71
- mindspore/ops/_op_impl/tbe/strided_slice_grad_d.py +0 -51
- mindspore/ops/_op_impl/tbe/strided_slice_grad_ds.py +0 -57
- mindspore/ops/_op_impl/tbe/strided_write.py +0 -38
- mindspore/ops/_op_impl/tbe/sub.py +0 -39
- mindspore/ops/_op_impl/tbe/sub_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/tan.py +0 -38
- mindspore/ops/_op_impl/tbe/tan_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/tanh.py +0 -37
- mindspore/ops/_op_impl/tbe/tanh_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/tanh_grad.py +0 -39
- mindspore/ops/_op_impl/tbe/tanh_grad_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/tensor_move.py +0 -49
- mindspore/ops/_op_impl/tbe/tensor_move_ds.py +0 -50
- mindspore/ops/_op_impl/tbe/tensor_scatter_update.py +0 -41
- mindspore/ops/_op_impl/tbe/tile.py +0 -37
- mindspore/ops/_op_impl/tbe/tile_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/top_k.py +0 -42
- mindspore/ops/_op_impl/tbe/top_k_ds.py +0 -43
- mindspore/ops/_op_impl/tbe/trans_data.py +0 -167
- mindspore/ops/_op_impl/tbe/trans_data_ds.py +0 -180
- mindspore/ops/_op_impl/tbe/trans_data_rnn.py +0 -44
- mindspore/ops/_op_impl/tbe/transpose.py +0 -60
- mindspore/ops/_op_impl/tbe/transpose_d.py +0 -47
- mindspore/ops/_op_impl/tbe/transpose_nod.py +0 -60
- mindspore/ops/_op_impl/tbe/trunc.py +0 -39
- mindspore/ops/_op_impl/tbe/truncate_div.py +0 -41
- mindspore/ops/_op_impl/tbe/truncate_div_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/truncate_mod.py +0 -41
- mindspore/ops/_op_impl/tbe/truncate_mod_ds.py +0 -42
- mindspore/ops/_op_impl/tbe/unpack.py +0 -38
- mindspore/ops/_op_impl/tbe/unpack_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/unsorted_segment_max.py +0 -49
- mindspore/ops/_op_impl/tbe/unsorted_segment_max_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/unsorted_segment_min.py +0 -49
- mindspore/ops/_op_impl/tbe/unsorted_segment_min_ds.py +0 -40
- mindspore/ops/_op_impl/tbe/unsorted_segment_prod.py +0 -49
- mindspore/ops/_op_impl/tbe/unsorted_segment_prod_ds.py +0 -38
- mindspore/ops/_op_impl/tbe/unsorted_segment_sum.py +0 -38
- mindspore/ops/_op_impl/tbe/unsorted_segment_sum_ds.py +0 -41
- mindspore/ops/_op_impl/tbe/wts_arq.py +0 -40
- mindspore/ops/_op_impl/tbe/xdivy.py +0 -38
- mindspore/ops/_op_impl/tbe/xdivy_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/xlogy.py +0 -38
- mindspore/ops/_op_impl/tbe/xlogy_ds.py +0 -39
- mindspore/ops/_op_impl/tbe/zeros_like.py +0 -41
- mindspore/ops/_op_impl/tbe/zeros_like_ds.py +0 -42
- mindspore/ops/_tracefunc.py +0 -241
- mindspore/ops/arg_dtype_cast.py +0 -54
- mindspore/ops/silent_check.py +0 -162
- mindspore/profiler/parser/msadvisor_analyzer.py +0 -82
- mindspore/profiler/parser/msadvisor_parser.py +0 -240
- mindspore/rewrite/api/tree_node_helper.py +0 -60
- mindspore/rewrite/ast_helpers/ast_creator.py +0 -115
- mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +0 -267
- mindspore/rewrite/ast_transformers/remove_return_out_of_if.py +0 -228
- mindspore/rewrite/namespace.py +0 -53
- mindspore-2.2.14.dist-info/RECORD +0 -1924
- {mindspore-2.2.14.dist-info → mindspore-2.4.0.dist-info}/WHEEL +0 -0
- {mindspore-2.2.14.dist-info → mindspore-2.4.0.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# This is the Python adaptation and derivative work of Myia (https://github.com/mila-iqia/myia/).
|
|
2
2
|
#
|
|
3
|
-
# Copyright 2020-
|
|
3
|
+
# Copyright 2020-2024 Huawei Technologies Co., Ltd
|
|
4
4
|
#
|
|
5
5
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
6
|
# you may not use this file except in compliance with the License.
|
|
@@ -25,6 +25,8 @@ import mindspore.common._monad as monad
|
|
|
25
25
|
from mindspore.common.sparse_tensor import RowTensorInner
|
|
26
26
|
from mindspore.ops.composite.base import _append, _insert, _pop, _list_clear, _reverse, \
|
|
27
27
|
_extend, _dict_setitem, _dict_clear, _haskey, _update, _fromkeys
|
|
28
|
+
from mindspore.ops.operations._sequence_ops import TensorToTuple
|
|
29
|
+
from mindspore.ops.auto_generate import trace_v2_op, inplace_addmm_op
|
|
28
30
|
|
|
29
31
|
from ... import _checkparam as validator
|
|
30
32
|
from ..._checkparam import check_is_number, check_reshape_shp, check_axis_in_range, \
|
|
@@ -34,13 +36,14 @@ from ...ops import operations as P
|
|
|
34
36
|
from ...ops import composite
|
|
35
37
|
from ...ops.operations import array_ops
|
|
36
38
|
from ...ops.composite import MultitypeFuncGraph, env_get, hyper_add, \
|
|
37
|
-
zeros_like, ones_like, repeat_elements
|
|
39
|
+
zeros_like, ones_like, repeat_elements, multitype_ops
|
|
38
40
|
from ...ops.composite.multitype_ops import _constexpr_utils as const_utils
|
|
39
41
|
from ...ops.composite.multitype_ops import _compile_utils as compile_utils
|
|
40
42
|
from ...ops.operations.math_ops import Median
|
|
41
43
|
from ...ops.operations._inner_ops import Format
|
|
42
44
|
from ...ops.operations import _csr_ops
|
|
43
45
|
from ...ops.operations import _map_tensor_ops
|
|
46
|
+
from ...ops.operations._sequence_ops import TensorToScalar
|
|
44
47
|
from ...ops.primitive import constexpr, _primexpr
|
|
45
48
|
from ...common import dtype as mstype
|
|
46
49
|
from ...ops.operations._sequence_ops import ListAppend, ListInsert, SequenceMax, SequenceMin, \
|
|
@@ -67,6 +70,38 @@ itemsize_map = {mstype.bool_: 1, mstype.int8: 1, mstype.uint8: 1,
|
|
|
67
70
|
|
|
68
71
|
nan_tensor = Tensor(float('nan'), dtype=mstype.float32)
|
|
69
72
|
|
|
73
|
+
_map = composite.HyperMap()
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
def hypermap_dynamic_tuple(func, *inputs):
|
|
77
|
+
"""Make hypermap for dynamic shape tuple."""
|
|
78
|
+
iter_len = len(inputs[0])
|
|
79
|
+
i = 0
|
|
80
|
+
ret = F.make_tuple()
|
|
81
|
+
while i < iter_len:
|
|
82
|
+
cur_input = F.make_tuple()
|
|
83
|
+
for m in inputs:
|
|
84
|
+
cur_input = cur_input + F.make_tuple(m[i])
|
|
85
|
+
new_out = _map(func, *cur_input)
|
|
86
|
+
ret = ret + F.make_tuple(new_out)
|
|
87
|
+
i = i + 1
|
|
88
|
+
return ret
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def hypermap_dynamic_list(func, *inputs):
|
|
92
|
+
"""Make hypermap for dynamic shape list."""
|
|
93
|
+
iter_len = len(inputs[0])
|
|
94
|
+
i = 0
|
|
95
|
+
ret = F.make_list()
|
|
96
|
+
while i < iter_len:
|
|
97
|
+
cur_input = F.make_tuple()
|
|
98
|
+
for m in inputs:
|
|
99
|
+
cur_input = cur_input + F.make_tuple(m[i])
|
|
100
|
+
new_out = _map(func, *cur_input)
|
|
101
|
+
ret = ret + F.make_list(new_out)
|
|
102
|
+
i = i + 1
|
|
103
|
+
return ret
|
|
104
|
+
|
|
70
105
|
|
|
71
106
|
def mean(x, axis=None, keep_dims=False):
|
|
72
107
|
"""
|
|
@@ -99,7 +134,7 @@ def ndimension(x):
|
|
|
99
134
|
return len(x.shape)
|
|
100
135
|
|
|
101
136
|
|
|
102
|
-
def prod(input, axis=None, keep_dims=False):
|
|
137
|
+
def prod(input, axis=None, keep_dims=False, dtype=None):
|
|
103
138
|
"""
|
|
104
139
|
Reduces a dimension of a tensor by product all elements in the dimension.
|
|
105
140
|
|
|
@@ -108,6 +143,7 @@ def prod(input, axis=None, keep_dims=False):
|
|
|
108
143
|
axis (Union[None, int, tuple(int), list(int)]): Dimensions of reduction,
|
|
109
144
|
when axis is None or empty tuple, reduce all dimensions. Default: ``None``.
|
|
110
145
|
keep_dims (bool): Whether to keep the reduced dimensions. Default: False.
|
|
146
|
+
dtype (:class:`mindspore.dtype`): The desired data type of returned Tensor. Default: ``None`` .
|
|
111
147
|
|
|
112
148
|
Returns:
|
|
113
149
|
Tensor, has the same data type as input tensor.
|
|
@@ -123,7 +159,7 @@ def prod(input, axis=None, keep_dims=False):
|
|
|
123
159
|
>>> print(output)
|
|
124
160
|
6.0
|
|
125
161
|
"""
|
|
126
|
-
return F.prod(input, axis, keep_dims)
|
|
162
|
+
return F.prod(input, axis, keep_dims, dtype)
|
|
127
163
|
|
|
128
164
|
|
|
129
165
|
def addcdiv(input, tensor1, tensor2, value=1):
|
|
@@ -549,8 +585,17 @@ def transpose(x, *axis):
|
|
|
549
585
|
return F.transpose(x, perm)
|
|
550
586
|
|
|
551
587
|
|
|
588
|
+
def T(x):
|
|
589
|
+
"""
|
|
590
|
+
Return the transposed tensor.
|
|
591
|
+
"""
|
|
592
|
+
if x.ndim <= 1:
|
|
593
|
+
return x
|
|
594
|
+
return transpose(x)
|
|
595
|
+
|
|
596
|
+
|
|
552
597
|
# `tensor.T` is used as a property in graph mode
|
|
553
|
-
T_ =
|
|
598
|
+
T_ = T
|
|
554
599
|
|
|
555
600
|
|
|
556
601
|
def reshape(x, *shape):
|
|
@@ -1405,51 +1450,7 @@ def diagonal(x, offset=0, axis1=0, axis2=1):
|
|
|
1405
1450
|
if ndim < 2:
|
|
1406
1451
|
const_utils.raise_value_error(
|
|
1407
1452
|
'diagonal requires an array of at least two dimensions')
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
axes = check_axis_valid((axis1, axis2), ndim)
|
|
1411
|
-
perm = ()
|
|
1412
|
-
for i in range(ndim):
|
|
1413
|
-
if i not in axes:
|
|
1414
|
-
perm += (i,)
|
|
1415
|
-
perm += axes
|
|
1416
|
-
x = x.transpose(perm)
|
|
1417
|
-
|
|
1418
|
-
shape = x.shape
|
|
1419
|
-
n, m = shape[-2:]
|
|
1420
|
-
|
|
1421
|
-
e = F.eye(n, m, dtype)
|
|
1422
|
-
if offset >= m or offset <= -n:
|
|
1423
|
-
zero_shape = shape[:-2] + (0,)
|
|
1424
|
-
return F.zeros(zero_shape, dtype)
|
|
1425
|
-
if offset != 0:
|
|
1426
|
-
e = e.astype(mstype.float32)
|
|
1427
|
-
if offset > 0:
|
|
1428
|
-
e_left = F.fill(dtype, (n, offset), 0)
|
|
1429
|
-
e_right = e[..., 0:m - offset:1]
|
|
1430
|
-
e = P.Concat(1)((e_left, e_right)).astype(dtype)
|
|
1431
|
-
elif offset < 0:
|
|
1432
|
-
e_upper = F.fill(dtype, (-offset, m), 0)
|
|
1433
|
-
e_lower = e[0:n + offset:1, ...]
|
|
1434
|
-
e = P.Concat(0)((e_upper, e_lower)).astype(dtype)
|
|
1435
|
-
e = F.broadcast_to(e, shape)
|
|
1436
|
-
|
|
1437
|
-
prod_val = F.tensor_mul(x, e)
|
|
1438
|
-
res = F.reduce_sum(prod_val.astype(mstype.float32), -1)
|
|
1439
|
-
|
|
1440
|
-
begin = ()
|
|
1441
|
-
for _ in range(ndim - 2):
|
|
1442
|
-
begin += (0,)
|
|
1443
|
-
last_dim_begin = max_(0, -offset)
|
|
1444
|
-
begin += (last_dim_begin,)
|
|
1445
|
-
size = res.shape[:-1]
|
|
1446
|
-
last_dim_end = min_(
|
|
1447
|
-
shape[-2], max_(0, shape[-1] - offset)) - last_dim_begin
|
|
1448
|
-
if last_dim_end <= 0:
|
|
1449
|
-
return empty_compile(dtype, (0,))
|
|
1450
|
-
size += (last_dim_end,)
|
|
1451
|
-
res = F.tensor_slice(res, begin, size)
|
|
1452
|
-
return res.astype(dtype)
|
|
1453
|
+
return F.diagonal(x, offset, axis1, axis2)
|
|
1453
1454
|
|
|
1454
1455
|
|
|
1455
1456
|
def diagonal_scatter(input, src, offset, dim1=0, dim2=1):
|
|
@@ -1630,17 +1631,7 @@ def trace(x, offset=0, axis1=0, axis2=1, dtype=None):
|
|
|
1630
1631
|
>>> print(x.trace())
|
|
1631
1632
|
3.0
|
|
1632
1633
|
"""
|
|
1633
|
-
|
|
1634
|
-
return F.trace(x)
|
|
1635
|
-
d = x.diagonal(offset, axis1=axis1, axis2=axis2)
|
|
1636
|
-
shape = d.shape
|
|
1637
|
-
if dtype is None:
|
|
1638
|
-
dtype = d.dtype
|
|
1639
|
-
dtype = check_astype_dtype_const(dtype)
|
|
1640
|
-
if shape[-1] == 0:
|
|
1641
|
-
return F.fill(dtype, shape[:-1], 0)
|
|
1642
|
-
res = F.reduce_sum(d.astype(mstype.float32), -1)
|
|
1643
|
-
return res.astype(dtype)
|
|
1634
|
+
return trace_v2_op(x, offset, axis1, axis2, dtype)
|
|
1644
1635
|
|
|
1645
1636
|
|
|
1646
1637
|
def take(x, indices, axis=None, mode='clip'):
|
|
@@ -1826,7 +1817,7 @@ def searchsorted(x, v, side='left', sorter=None):
|
|
|
1826
1817
|
no suitable index, return either 0 or N (where N is the length of `a`).
|
|
1827
1818
|
sorter (Union[int, float, bool, list, tuple, Tensor]): 1-D optional array of
|
|
1828
1819
|
integer indices that sort array `a` into ascending order. They are typically
|
|
1829
|
-
the result of argsort.
|
|
1820
|
+
the result of argsort. CPU and GPU can only use default values
|
|
1830
1821
|
|
|
1831
1822
|
Returns:
|
|
1832
1823
|
Tensor, array of insertion points with the same shape as `v`.
|
|
@@ -1844,39 +1835,24 @@ def searchsorted(x, v, side='left', sorter=None):
|
|
|
1844
1835
|
2
|
|
1845
1836
|
"""
|
|
1846
1837
|
|
|
1847
|
-
def get_log2_size(size):
|
|
1848
|
-
"""Get log2 size"""
|
|
1849
|
-
log2_res = F.log2(F.cast(size, mstype.float32))
|
|
1850
|
-
ceil_res = F.ceil(log2_res)
|
|
1851
|
-
cast_res = F.cast(ceil_res, mstype.int64)
|
|
1852
|
-
return cast_res
|
|
1853
|
-
|
|
1854
1838
|
if side not in ('left', 'right'):
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
if not
|
|
1839
|
+
raise ValueError(f"For 'Tensor.searchsorted', the argument 'side' should be one of in "
|
|
1840
|
+
f"['left', 'right'], but got {side}.")
|
|
1841
|
+
if not isinstance(v, Tensor):
|
|
1858
1842
|
v = const_utils.make_tensor(v)
|
|
1859
|
-
shape = v.shape
|
|
1860
1843
|
if sorter is not None:
|
|
1861
|
-
if sorter
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
while index < loop_num:
|
|
1874
|
-
mid = (i - F.neg_tensor(j)) // 2
|
|
1875
|
-
mask = less_op(v, F.gather_nd(a, mid.reshape(mid.shape + (1,))))
|
|
1876
|
-
i = F.select(mask, i, mid)
|
|
1877
|
-
j = F.select(mask, mid, j)
|
|
1878
|
-
index += 1
|
|
1879
|
-
return j
|
|
1844
|
+
if not isinstance(sorter, (int, list, tuple, Tensor)):
|
|
1845
|
+
raise TypeError("For Tensor.searchsorted, the type of the argument 'sorter' must be one of 'int', "
|
|
1846
|
+
"'list', 'tuple', 'Tensor', but got {}.".format(type(sorter)))
|
|
1847
|
+
if not isinstance(sorter, Tensor):
|
|
1848
|
+
sorter = const_utils.make_tensor(sorter)
|
|
1849
|
+
if sorter.size != x.size:
|
|
1850
|
+
raise ValueError('The size of sorter must be the same as the Tensor')
|
|
1851
|
+
|
|
1852
|
+
dtype = mstype.int32
|
|
1853
|
+
right = (side == 'right')
|
|
1854
|
+
search_sorted_ = P.SearchSorted(dtype, right)
|
|
1855
|
+
return search_sorted_(x, v, sorter)
|
|
1880
1856
|
|
|
1881
1857
|
|
|
1882
1858
|
def fill(x, value):
|
|
@@ -2307,6 +2283,10 @@ def hypot(x, other):
|
|
|
2307
2283
|
return F.hypot(x, other)
|
|
2308
2284
|
|
|
2309
2285
|
|
|
2286
|
+
def softmax(input, axis, dtype=None):
|
|
2287
|
+
return F.softmax(input, axis, dtype=dtype)
|
|
2288
|
+
|
|
2289
|
+
|
|
2310
2290
|
def soft_shrink(input, lambd=0.5):
|
|
2311
2291
|
"""Apply the soft shrink function for a tensor. Calculates the output according to the input elements."""
|
|
2312
2292
|
return F.soft_shrink(input, lambd)
|
|
@@ -2342,31 +2322,6 @@ def itemset(data, *args):
|
|
|
2342
2322
|
return compile_utils.tensor_itemset(data, *args)
|
|
2343
2323
|
|
|
2344
2324
|
|
|
2345
|
-
def ms_iter(xs):
|
|
2346
|
-
"""Implementation of `iter`."""
|
|
2347
|
-
return xs.__ms_iter__
|
|
2348
|
-
|
|
2349
|
-
|
|
2350
|
-
def ms_next(it):
|
|
2351
|
-
"""Implementation of `next`."""
|
|
2352
|
-
return it.__ms_next__
|
|
2353
|
-
|
|
2354
|
-
|
|
2355
|
-
def hasnext(it):
|
|
2356
|
-
"""Implementation of `hasnext`."""
|
|
2357
|
-
return it.__ms_hasnext__
|
|
2358
|
-
|
|
2359
|
-
|
|
2360
|
-
def str_next(xs):
|
|
2361
|
-
"""Next string."""
|
|
2362
|
-
return xs[0], xs[1:]
|
|
2363
|
-
|
|
2364
|
-
|
|
2365
|
-
def str_hasnext(xs):
|
|
2366
|
-
"""Whether the string is empty or not."""
|
|
2367
|
-
return len(xs) > 0
|
|
2368
|
-
|
|
2369
|
-
|
|
2370
2325
|
@constexpr
|
|
2371
2326
|
def cast_to_str(data):
|
|
2372
2327
|
return str(data)
|
|
@@ -2402,7 +2357,8 @@ def bool_func(*data):
|
|
|
2402
2357
|
tensor_shape = F.shape(data)
|
|
2403
2358
|
tensor_shape_len = len(tensor_shape)
|
|
2404
2359
|
if tensor_shape_len == 0 or (tensor_shape_len == 1 and tensor_shape[0] == 1):
|
|
2405
|
-
|
|
2360
|
+
data = F.cast(data, mstype.bool_)
|
|
2361
|
+
return TensorToScalar()(data)
|
|
2406
2362
|
raise ValueError("The truth value of an array with more than one element is ambiguous.")
|
|
2407
2363
|
if not F.isconstant(data):
|
|
2408
2364
|
if hasattr(data, "__bool__"):
|
|
@@ -2439,6 +2395,14 @@ def int_func(*data):
|
|
|
2439
2395
|
if not F.isconstant(target):
|
|
2440
2396
|
if base != 10:
|
|
2441
2397
|
const_utils.raise_type_error("int() does not support non-constant input when 'base' is specified.")
|
|
2398
|
+
if isinstance(target, Tensor):
|
|
2399
|
+
tensor_shape = F.shape(target)
|
|
2400
|
+
tensor_shape_len = len(tensor_shape)
|
|
2401
|
+
if tensor_shape_len == 0 or (tensor_shape_len == 1 and tensor_shape[0] == 1):
|
|
2402
|
+
target = F.cast(target, mstype.int64)
|
|
2403
|
+
return TensorToScalar()(target)
|
|
2404
|
+
raise ValueError(f"Can not convert Tensor with more than one element to Scalar, "
|
|
2405
|
+
f"while the data's shape is : {tensor_shape}")
|
|
2442
2406
|
return F.scalar_cast(target, mstype.int64)
|
|
2443
2407
|
if isinstance(target, (CSRTensor, COOTensor, RowTensorInner)):
|
|
2444
2408
|
const_utils.raise_type_error(
|
|
@@ -2462,6 +2426,14 @@ def float_func(*data):
|
|
|
2462
2426
|
return 0.0
|
|
2463
2427
|
data = data[0]
|
|
2464
2428
|
if not F.isconstant(data):
|
|
2429
|
+
if isinstance(data, Tensor):
|
|
2430
|
+
tensor_shape = F.shape(data)
|
|
2431
|
+
tensor_shape_len = len(tensor_shape)
|
|
2432
|
+
if tensor_shape_len == 0 or (tensor_shape_len == 1 and tensor_shape[0] == 1):
|
|
2433
|
+
data = F.cast(data, mstype.float32)
|
|
2434
|
+
return TensorToScalar()(data)
|
|
2435
|
+
raise ValueError(f"Can not convert Tensor with more than one element to Scalar, "
|
|
2436
|
+
f"while the data's shape is: {tensor_shape}")
|
|
2465
2437
|
return F.scalar_cast(data, mstype.float32)
|
|
2466
2438
|
if isinstance(data, (CSRTensor, COOTensor, RowTensorInner)):
|
|
2467
2439
|
const_utils.raise_type_error(
|
|
@@ -2469,21 +2441,11 @@ def float_func(*data):
|
|
|
2469
2441
|
return cast_to_float(data)
|
|
2470
2442
|
|
|
2471
2443
|
|
|
2472
|
-
def list_func(
|
|
2444
|
+
def list_func(data):
|
|
2473
2445
|
"""Implementation of `list`."""
|
|
2474
|
-
data_len = len(data)
|
|
2475
|
-
if data_len >= 2:
|
|
2476
|
-
const_utils.raise_type_error("list() requires 0 or 1 arguments.")
|
|
2477
|
-
if data_len == 0:
|
|
2478
|
-
return F.make_list()
|
|
2479
|
-
data = data[0]
|
|
2480
2446
|
if isinstance(data, (CSRTensor, COOTensor, RowTensorInner)):
|
|
2481
|
-
|
|
2447
|
+
raise TypeError(
|
|
2482
2448
|
"list() does not support single sparse tensor input.")
|
|
2483
|
-
if not isinstance(data, Tensor) and not hasattr(data, "__ms_iter__"):
|
|
2484
|
-
data_type = F.typeof(data)
|
|
2485
|
-
const_utils.raise_type_error(
|
|
2486
|
-
str(data_type) + " object is not iterable.")
|
|
2487
2449
|
if isinstance(data, dict):
|
|
2488
2450
|
data = data.keys()
|
|
2489
2451
|
if isinstance(data, (tuple, list)) and F.is_sequence_shape_unknown(data):
|
|
@@ -2492,24 +2454,15 @@ def list_func(*data):
|
|
|
2492
2454
|
return ret
|
|
2493
2455
|
else:
|
|
2494
2456
|
ret = F.make_list()
|
|
2495
|
-
for i in
|
|
2496
|
-
ret = ret + F.make_list(
|
|
2457
|
+
for i in data:
|
|
2458
|
+
ret = ret + F.make_list(i)
|
|
2497
2459
|
return ret
|
|
2498
2460
|
|
|
2499
2461
|
|
|
2500
|
-
def tuple_func(
|
|
2462
|
+
def tuple_func(data):
|
|
2501
2463
|
"""Implementation of `tuple`."""
|
|
2502
|
-
data_len = len(data)
|
|
2503
|
-
if data_len >= 2:
|
|
2504
|
-
raise TypeError("tuple() requires 0 or 1 arguments.")
|
|
2505
|
-
if data_len == 0:
|
|
2506
|
-
return F.make_tuple()
|
|
2507
|
-
data = data[0]
|
|
2508
2464
|
if isinstance(data, (CSRTensor, COOTensor, RowTensorInner)):
|
|
2509
2465
|
raise TypeError("tuple() does not support single sparse tensor input.")
|
|
2510
|
-
if not isinstance(data, Tensor) and not hasattr(data, "__ms_iter__"):
|
|
2511
|
-
data_type = F.typeof(data)
|
|
2512
|
-
raise TypeError(str(data_type) + " object is not iterable.")
|
|
2513
2466
|
if isinstance(data, dict):
|
|
2514
2467
|
data = data.keys()
|
|
2515
2468
|
if isinstance(data, (tuple, list)) and F.is_sequence_shape_unknown(data):
|
|
@@ -2518,11 +2471,23 @@ def tuple_func(*data):
|
|
|
2518
2471
|
return ret
|
|
2519
2472
|
else:
|
|
2520
2473
|
ret = F.make_tuple()
|
|
2521
|
-
for i in
|
|
2522
|
-
ret = ret + F.make_tuple(
|
|
2474
|
+
for i in data:
|
|
2475
|
+
ret = ret + F.make_tuple(i)
|
|
2523
2476
|
return ret
|
|
2524
2477
|
|
|
2525
2478
|
|
|
2479
|
+
def ms_zip(*data):
|
|
2480
|
+
"""Packs elements in the corresponding positions in multiple sequences into tuples."""
|
|
2481
|
+
x = ()
|
|
2482
|
+
for i in data:
|
|
2483
|
+
if isinstance(i, Tensor):
|
|
2484
|
+
if len(F.shape(i)) == 0:
|
|
2485
|
+
raise TypeError("Cannot iterate over a scalar tensor.")
|
|
2486
|
+
i = tuple(i)
|
|
2487
|
+
x = x + (i,)
|
|
2488
|
+
return composite.zip_operation(*x)
|
|
2489
|
+
|
|
2490
|
+
|
|
2526
2491
|
def max_tensor(*data):
|
|
2527
2492
|
"""Get the max of tensor inputs."""
|
|
2528
2493
|
if len(data) == 1:
|
|
@@ -2543,8 +2508,7 @@ def get_max_min_data_len(*data):
|
|
|
2543
2508
|
if isinstance(data, (dict, list, tuple)):
|
|
2544
2509
|
len_data = len(data)
|
|
2545
2510
|
else:
|
|
2546
|
-
|
|
2547
|
-
"max() or min() does not support the data type.")
|
|
2511
|
+
raise TypeError("max() or min() does not support the data type.")
|
|
2548
2512
|
return len_data
|
|
2549
2513
|
|
|
2550
2514
|
|
|
@@ -2556,8 +2520,7 @@ def get_tensor_num(data):
|
|
|
2556
2520
|
tensor_shape = F.shape(input_data)
|
|
2557
2521
|
tensor_shape_len = len(tensor_shape)
|
|
2558
2522
|
if tensor_shape_len != 0 and not (tensor_shape_len == 1 and tensor_shape[0] == 1):
|
|
2559
|
-
|
|
2560
|
-
"The truth value of an array with more than one element is ambiguous.")
|
|
2523
|
+
raise ValueError("The truth value of an array with more than one element is ambiguous.")
|
|
2561
2524
|
tensor_num = tensor_num + 1
|
|
2562
2525
|
return tensor_num
|
|
2563
2526
|
|
|
@@ -2577,9 +2540,9 @@ def check_sequence_all_variable_scalar(x, str_info):
|
|
|
2577
2540
|
"""Check whether x can be used in SequenceMax and SequenceMin"""
|
|
2578
2541
|
if F.is_sequence_shape_unknown(x):
|
|
2579
2542
|
if F.is_dynamic_sequence_element_unknown(x):
|
|
2580
|
-
|
|
2543
|
+
raise ValueError(str_info + "() arg is an empty sequence.")
|
|
2581
2544
|
if not isinstance(x[0], (int, float)):
|
|
2582
|
-
|
|
2545
|
+
raise ValueError(
|
|
2583
2546
|
"When the input to " + str_info + "() is dynamic length sequence, only support scalar type input")
|
|
2584
2547
|
return True
|
|
2585
2548
|
contain_variable_scalar = False
|
|
@@ -2591,74 +2554,53 @@ def check_sequence_all_variable_scalar(x, str_info):
|
|
|
2591
2554
|
return contain_variable_scalar
|
|
2592
2555
|
|
|
2593
2556
|
|
|
2594
|
-
def get_data_type_str(input_data):
|
|
2595
|
-
"""Get the type of input."""
|
|
2596
|
-
if isinstance(input_data, (int, float, bool)):
|
|
2597
|
-
return "variable " + str(F.typeof(input_data))
|
|
2598
|
-
return str(F.typeof(input_data))
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
def check_isconstant(input_data, func_name):
|
|
2602
|
-
"""Check the input data of func is constant."""
|
|
2603
|
-
if not F.isconstant(input_data):
|
|
2604
|
-
const_utils.raise_type_error("The input of " + func_name + " only support Tensor, List, Tuple, constant Scalar,"
|
|
2605
|
-
" but got " + get_data_type_str(input_data))
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
2557
|
def ms_max_one_element(x):
|
|
2609
2558
|
"""Implementation of `max` which inputs has only one element."""
|
|
2610
2559
|
if isinstance(x, Tensor):
|
|
2611
2560
|
tensor_shape = F.shape(x)
|
|
2612
2561
|
tensor_shape_len = len(tensor_shape)
|
|
2613
2562
|
if tensor_shape_len == 0:
|
|
2614
|
-
|
|
2615
|
-
"Cannot iterate over a scalar tensor.")
|
|
2563
|
+
raise TypeError("Cannot iterate over a scalar tensor.")
|
|
2616
2564
|
if tensor_shape_len >= 2:
|
|
2617
|
-
|
|
2618
|
-
"The truth value of an array with more than one element is ambiguous.")
|
|
2565
|
+
raise ValueError("The truth value of an array with more than one element is ambiguous.")
|
|
2619
2566
|
return x.max()
|
|
2620
2567
|
# Deal with Tensor in tuple or list
|
|
2621
2568
|
if isinstance(x, (list, tuple)):
|
|
2622
2569
|
if check_sequence_all_variable_scalar(x, "max"):
|
|
2623
2570
|
return SequenceMax()(x)
|
|
2624
2571
|
if len(x) == 0:
|
|
2625
|
-
|
|
2572
|
+
raise ValueError("max() arg is an empty sequence.")
|
|
2626
2573
|
tensor_num = get_tensor_num(x)
|
|
2627
|
-
if tensor_num == len(x):
|
|
2574
|
+
if F.isconstant(tensor_num) and F.isconstant(len(x)) and tensor_num == len(x):
|
|
2628
2575
|
return max_tensor(x)
|
|
2629
2576
|
if tensor_num != 0:
|
|
2630
|
-
|
|
2631
|
-
"max() cannot contain both tensor and non-tensor type.")
|
|
2577
|
+
return F._py_interpret("max(x)", {}, {"x": x})
|
|
2632
2578
|
if exist_tensor(x):
|
|
2633
|
-
|
|
2634
|
-
|
|
2635
|
-
|
|
2636
|
-
|
|
2579
|
+
raise TypeError("max() cannot support tensor in list or tuple nested now.")
|
|
2580
|
+
if not isinstance(x, (int, float, bool)):
|
|
2581
|
+
return F._py_interpret("max(x)", {}, {"x": x})
|
|
2582
|
+
raise TypeError("The object is not iterable.")
|
|
2637
2583
|
|
|
2638
2584
|
|
|
2639
2585
|
def ms_max(*data):
|
|
2640
2586
|
"""Implementation of `max`."""
|
|
2641
2587
|
len_data = get_max_min_data_len(data)
|
|
2642
|
-
if len_data <= 0:
|
|
2643
|
-
|
|
2588
|
+
if len_data <= 0: # pylint: disable=no-else-raise
|
|
2589
|
+
raise TypeError("max() requires 1 argument at least.")
|
|
2644
2590
|
elif len_data == 1:
|
|
2645
2591
|
x = data[0]
|
|
2646
2592
|
return ms_max_one_element(x)
|
|
2647
2593
|
elif len_data >= 2:
|
|
2648
2594
|
tensor_num = get_tensor_num(data)
|
|
2649
2595
|
# All inputs is Tensor
|
|
2650
|
-
if tensor_num == len_data:
|
|
2596
|
+
if F.isconstant(tensor_num) and F.isconstant(len_data) and tensor_num == len_data:
|
|
2651
2597
|
return max_tensor(*data)
|
|
2652
2598
|
if tensor_num != 0:
|
|
2653
|
-
|
|
2654
|
-
"max() cannot contain both tensor and non-tensor type.")
|
|
2599
|
+
return F._py_interpret("max(data)", {}, {"data": data})
|
|
2655
2600
|
# exist tensor in list/tuple
|
|
2656
2601
|
if exist_tensor(data):
|
|
2657
|
-
|
|
2658
|
-
|
|
2659
|
-
for input_data in data:
|
|
2660
|
-
check_isconstant(input_data, "max()")
|
|
2661
|
-
return max_(*data)
|
|
2602
|
+
raise ValueError("The truth value of an array with more than one element is ambiguous.")
|
|
2603
|
+
return F._py_interpret("max(data)", {}, {"data": data})
|
|
2662
2604
|
|
|
2663
2605
|
|
|
2664
2606
|
def min_tensor(*data):
|
|
@@ -2694,71 +2636,62 @@ def ms_min_one_element(x):
|
|
|
2694
2636
|
tensor_shape = F.shape(x)
|
|
2695
2637
|
tensor_shape_len = len(tensor_shape)
|
|
2696
2638
|
if tensor_shape_len == 0:
|
|
2697
|
-
|
|
2698
|
-
"Cannot iterate over a scalar tensor.")
|
|
2639
|
+
raise TypeError("Cannot iterate over a scalar tensor.")
|
|
2699
2640
|
if tensor_shape_len >= 2:
|
|
2700
|
-
|
|
2701
|
-
"The truth value of an array with more than one element is ambiguous.")
|
|
2641
|
+
raise ValueError("The truth value of an array with more than one element is ambiguous.")
|
|
2702
2642
|
return x.min()
|
|
2703
2643
|
# Deal with Tensor in tuple or list
|
|
2704
2644
|
if isinstance(x, (list, tuple)):
|
|
2705
2645
|
if check_sequence_all_variable_scalar(x, "min"):
|
|
2706
2646
|
return SequenceMin()(x)
|
|
2707
2647
|
if len(x) == 0:
|
|
2708
|
-
|
|
2648
|
+
raise ValueError("min() arg is an empty sequence.")
|
|
2709
2649
|
tensor_num = get_tensor_num(x)
|
|
2710
|
-
if tensor_num == len(x):
|
|
2650
|
+
if F.isconstant(tensor_num) and F.isconstant(len(x)) and tensor_num == len(x):
|
|
2711
2651
|
return min_tensor(x)
|
|
2712
2652
|
if tensor_num != 0:
|
|
2713
|
-
|
|
2714
|
-
"min() cannot contain both tensor and non-tensor type.")
|
|
2653
|
+
return F._py_interpret("min(x)", {}, {"x": x})
|
|
2715
2654
|
if exist_tensor(x):
|
|
2716
|
-
|
|
2717
|
-
|
|
2718
|
-
|
|
2719
|
-
|
|
2655
|
+
raise TypeError("min() cannot support tensor in list or tuple nested now.")
|
|
2656
|
+
if not isinstance(x, (int, float, bool)):
|
|
2657
|
+
return F._py_interpret("min(x)", {}, {"x": x})
|
|
2658
|
+
raise TypeError("The object is not iterable.")
|
|
2720
2659
|
|
|
2721
2660
|
|
|
2722
2661
|
def ms_min(*data):
|
|
2723
2662
|
"""Implementation of `min`."""
|
|
2724
2663
|
len_data = get_max_min_data_len(data)
|
|
2725
|
-
if len_data <= 0:
|
|
2726
|
-
|
|
2664
|
+
if len_data <= 0: # pylint: disable=no-else-raise
|
|
2665
|
+
raise TypeError("min() requires 1 argument at least.")
|
|
2727
2666
|
elif len_data == 1:
|
|
2728
2667
|
x = data[0]
|
|
2729
2668
|
return ms_min_one_element(x)
|
|
2730
2669
|
elif len_data >= 2:
|
|
2731
2670
|
tensor_num = get_tensor_num(data)
|
|
2732
2671
|
# All inputs is Tensor
|
|
2733
|
-
if tensor_num == len_data:
|
|
2672
|
+
if F.isconstant(tensor_num) and F.isconstant(len_data) and tensor_num == len_data:
|
|
2734
2673
|
return min_tensor(*data)
|
|
2735
2674
|
if tensor_num != 0:
|
|
2736
|
-
|
|
2737
|
-
"min() cannot contain both tensor and non-tensor type.")
|
|
2675
|
+
return F._py_interpret("min(data)", {}, {"data": data})
|
|
2738
2676
|
# exist tensor in list/tuple
|
|
2739
2677
|
if exist_tensor(data):
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
for input_data in data:
|
|
2743
|
-
check_isconstant(input_data, "min()")
|
|
2744
|
-
return min_(*data)
|
|
2678
|
+
raise ValueError("The truth value of an array with more than one element is ambiguous.")
|
|
2679
|
+
return F._py_interpret("min(data)", {}, {"data": data})
|
|
2745
2680
|
|
|
2746
2681
|
|
|
2747
2682
|
def ms_sum(*data):
|
|
2748
2683
|
"""Implementation of `sum`."""
|
|
2749
2684
|
len_data = len(data)
|
|
2750
2685
|
if len_data <= 0 or len_data > 2:
|
|
2751
|
-
|
|
2686
|
+
raise TypeError("sum() requires 1 or 2 arguments.")
|
|
2752
2687
|
x = data[0]
|
|
2753
|
-
if
|
|
2688
|
+
if isinstance(x, (int, float, bool)):
|
|
2754
2689
|
data_type = F.typeof(x)
|
|
2755
|
-
|
|
2756
|
-
str(data_type) + " object is not iterable.")
|
|
2690
|
+
raise TypeError(str(data_type) + " object is not iterable.")
|
|
2757
2691
|
if isinstance(x, Tensor):
|
|
2758
2692
|
tensor_shape = F.shape(x)
|
|
2759
2693
|
if len(tensor_shape) == 0:
|
|
2760
|
-
|
|
2761
|
-
"Cannot iterate over a scalar tensor.")
|
|
2694
|
+
raise TypeError("Cannot iterate over a scalar tensor.")
|
|
2762
2695
|
if isinstance(x, dict):
|
|
2763
2696
|
x = x.keys()
|
|
2764
2697
|
result = 0
|
|
@@ -2779,7 +2712,7 @@ def ms_len(data):
|
|
|
2779
2712
|
|
|
2780
2713
|
def floor(x):
|
|
2781
2714
|
"""Rounds a tensor down to the closest integer element-wise."""
|
|
2782
|
-
return
|
|
2715
|
+
return F.floor(x)
|
|
2783
2716
|
|
|
2784
2717
|
|
|
2785
2718
|
def floor_divide(input, other):
|
|
@@ -2950,7 +2883,7 @@ def select(x, condition, y):
|
|
|
2950
2883
|
input_y = F.cast(input_y, mstype.int32)
|
|
2951
2884
|
else:
|
|
2952
2885
|
input_y = F.cast(input_y, mstype.float32)
|
|
2953
|
-
return F.select(condition, x,
|
|
2886
|
+
return F.select(condition, x, input_y)
|
|
2954
2887
|
|
|
2955
2888
|
|
|
2956
2889
|
def view(x, *shape):
|
|
@@ -3093,7 +3026,7 @@ def tensor_scatter_mul(input_x, indices, updates):
|
|
|
3093
3026
|
`indices`, with values from `updates`. When multiple value are given for the same index,
|
|
3094
3027
|
the output result will be the division of values.
|
|
3095
3028
|
"""
|
|
3096
|
-
return F.
|
|
3029
|
+
return F.tensor_scatter_mul(input_x, indices, updates)
|
|
3097
3030
|
|
|
3098
3031
|
|
|
3099
3032
|
def tensor_sactter_div(input_x, indices, updates):
|
|
@@ -3143,11 +3076,11 @@ def negative(input):
|
|
|
3143
3076
|
return F.neg(input)
|
|
3144
3077
|
|
|
3145
3078
|
|
|
3146
|
-
def nonzero(input):
|
|
3079
|
+
def nonzero(input, as_tuple=False):
|
|
3147
3080
|
"""
|
|
3148
3081
|
Return a Tensor of the positions of all non-zero values.
|
|
3149
3082
|
"""
|
|
3150
|
-
return F.nonzero(input)
|
|
3083
|
+
return F.nonzero(input, as_tuple)
|
|
3151
3084
|
|
|
3152
3085
|
|
|
3153
3086
|
def new_zeros(x, size, *, dtype=None):
|
|
@@ -3249,7 +3182,7 @@ def random_categorical(x, num_sample, seed=0, dtype=mstype.int64):
|
|
|
3249
3182
|
@constexpr
|
|
3250
3183
|
def empty_tensor(dtype):
|
|
3251
3184
|
"""Return empty tensor"""
|
|
3252
|
-
return
|
|
3185
|
+
return Tensor_([], dtype)
|
|
3253
3186
|
|
|
3254
3187
|
|
|
3255
3188
|
@constexpr
|
|
@@ -3523,26 +3456,16 @@ def triu(input, diagonal=0):
|
|
|
3523
3456
|
#############
|
|
3524
3457
|
|
|
3525
3458
|
|
|
3526
|
-
def
|
|
3527
|
-
"""
|
|
3528
|
-
return xs[0], xs[1:]
|
|
3529
|
-
|
|
3530
|
-
|
|
3531
|
-
def tuple_hasnext(xs):
|
|
3532
|
-
"""Whether the tuple is empty or not."""
|
|
3459
|
+
def ms_hasnext(xs):
|
|
3460
|
+
"""Whether the input has next element"""
|
|
3533
3461
|
return len(xs) > 0
|
|
3534
3462
|
|
|
3535
3463
|
|
|
3536
|
-
def
|
|
3537
|
-
"""
|
|
3464
|
+
def ms_next(xs):
|
|
3465
|
+
"""Get next element and res elements"""
|
|
3538
3466
|
return xs[0], xs[1:]
|
|
3539
3467
|
|
|
3540
3468
|
|
|
3541
|
-
def list_hasnext(xs):
|
|
3542
|
-
"""Whether the list is empty or not."""
|
|
3543
|
-
return len(xs) > 0
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
3469
|
def dict_next(xs):
|
|
3547
3470
|
"""Next array."""
|
|
3548
3471
|
keys = xs.keys()
|
|
@@ -3551,23 +3474,7 @@ def dict_next(xs):
|
|
|
3551
3474
|
for i in range(1, len(keys)):
|
|
3552
3475
|
new_keys.append(keys[i])
|
|
3553
3476
|
new_values.append(xs[keys[i]])
|
|
3554
|
-
|
|
3555
|
-
return keys[0], new_dict.fromkeys(new_keys, new_values)
|
|
3556
|
-
|
|
3557
|
-
|
|
3558
|
-
def dict_hasnext(xs):
|
|
3559
|
-
"""Whether the dict is empty or not."""
|
|
3560
|
-
return len(xs) > 0
|
|
3561
|
-
|
|
3562
|
-
|
|
3563
|
-
def array_next(xs):
|
|
3564
|
-
"""Next array."""
|
|
3565
|
-
return xs[0], xs[1:]
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
def array_hasnext(xs):
|
|
3569
|
-
"""Whether the array is empty or not."""
|
|
3570
|
-
return len(xs) > 0
|
|
3477
|
+
return keys[0], F.make_dict(new_keys, new_values)
|
|
3571
3478
|
|
|
3572
3479
|
|
|
3573
3480
|
def list_append(self_, list_item):
|
|
@@ -3930,6 +3837,20 @@ def addmm(x, mat1, mat2, *, beta=1, alpha=1):
|
|
|
3930
3837
|
return F.addmm(x, mat1, mat2, beta=beta, alpha=alpha)
|
|
3931
3838
|
|
|
3932
3839
|
|
|
3840
|
+
def addmm_(self, mat1, mat2, *, beta=1, alpha=1):
|
|
3841
|
+
r"""
|
|
3842
|
+
For details, please refer to :func:`mindspore.ops.addmm`.
|
|
3843
|
+
|
|
3844
|
+
.. note::
|
|
3845
|
+
The output results are directly updated in the Tensor.
|
|
3846
|
+
|
|
3847
|
+
.. warning::
|
|
3848
|
+
This is an experimental API that is subject to change or deletion.
|
|
3849
|
+
|
|
3850
|
+
"""
|
|
3851
|
+
return inplace_addmm_op(self, mat1, mat2, beta=beta, alpha=alpha)
|
|
3852
|
+
|
|
3853
|
+
|
|
3933
3854
|
def addmv(x, mat, vec, beta=1, alpha=1):
|
|
3934
3855
|
r"""
|
|
3935
3856
|
Multiplies matrix `mat` and vector `vec`. The vector `x` is added to the final result.
|
|
@@ -4152,7 +4073,7 @@ def expand(input, size):
|
|
|
4152
4073
|
r"""
|
|
4153
4074
|
Returns a new view of the self tensor with singleton dimensions expanded to a larger size.
|
|
4154
4075
|
"""
|
|
4155
|
-
size =
|
|
4076
|
+
size = TensorToTuple()(size)
|
|
4156
4077
|
return F.broadcast_to(input, size)
|
|
4157
4078
|
|
|
4158
4079
|
|
|
@@ -4470,6 +4391,13 @@ def amax(input, axis=None, keep_dims=False):
|
|
|
4470
4391
|
return F.amax(input, axis, keep_dims)
|
|
4471
4392
|
|
|
4472
4393
|
|
|
4394
|
+
def uniform(input, from_=0., to=1., generator=None):
|
|
4395
|
+
r"""
|
|
4396
|
+
Generates random numbers in the half-open interval [from_, to).
|
|
4397
|
+
"""
|
|
4398
|
+
return F.uniform_ext(input, from_, to, generator)
|
|
4399
|
+
|
|
4400
|
+
|
|
4473
4401
|
def amin(input, axis=None, keep_dims=False):
|
|
4474
4402
|
r"""
|
|
4475
4403
|
For details, please refer to :func:`mindspore.ops.amin`.
|
|
@@ -4533,3 +4461,15 @@ def outer(input, vec2):
|
|
|
4533
4461
|
For details, please refer to :func:`mindspore.ops.vec2`.
|
|
4534
4462
|
"""
|
|
4535
4463
|
return F.outer(input, vec2)
|
|
4464
|
+
|
|
4465
|
+
def sigmoid(input):
|
|
4466
|
+
r"""
|
|
4467
|
+
For details, please refer to :func:`mindspore.ops.sigmoid`.
|
|
4468
|
+
"""
|
|
4469
|
+
return F.sigmoid(input)
|
|
4470
|
+
|
|
4471
|
+
def _getitem(data, index):
|
|
4472
|
+
return multitype_ops.getitem(data, index)
|
|
4473
|
+
|
|
4474
|
+
def _setitem(data, index, value):
|
|
4475
|
+
return multitype_ops.setitem(data, index, value)
|