mindspore 2.1.0__cp38-cp38-manylinux1_x86_64.whl → 2.2.11__cp38-cp38-manylinux1_x86_64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/__init__.py +4 -1
- mindspore/_akg/akg/build_module.py +5 -6
- mindspore/_akg/akg/composite/build_module.py +139 -22
- mindspore/_akg/akg/composite/split_stitch.py +10 -11
- mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
- mindspore/_akg/akg/tvm/api.py +4 -3
- mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
- mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
- mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
- mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
- mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
- mindspore/_akg/akg/tvm/build_module.py +16 -1
- mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
- mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
- mindspore/_akg/akg/tvm/ir_builder.py +1 -1
- mindspore/_akg/akg/tvm/module.py +1 -2
- mindspore/_akg/akg/tvm/stmt.py +2 -2
- mindspore/_akg/akg/utils/ascend_profilier/cann_file_parser.py +76 -0
- mindspore/_akg/akg/utils/ascend_profilier/file_manager.py +56 -0
- mindspore/_akg/akg/utils/ascend_profilier/op_summary_bean.py +23 -0
- mindspore/_akg/akg/utils/ascend_profilier/op_summary_headers.py +8 -0
- mindspore/_akg/akg/utils/ascend_profilier/op_summary_parser.py +42 -0
- mindspore/_akg/akg/utils/ascend_profilier/path_manager.py +65 -0
- mindspore/_akg/akg/utils/composite_op_helper.py +16 -12
- mindspore/_akg/akg/utils/dump_ascend_meta.py +22 -3
- mindspore/_akg/akg/utils/kernel_exec.py +98 -274
- mindspore/_akg/akg/utils/result_analysis.py +4 -24
- mindspore/_akg/akg/utils/tbe_codegen_utils.py +219 -0
- mindspore/_akg/akg/utils/util.py +56 -1
- mindspore/_c_dataengine.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/_c_expression.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/_c_mindrecord.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/_check_jit_forbidden_api.py +3 -1
- mindspore/_checkparam.py +23 -29
- mindspore/_extends/graph_kernel/__init__.py +0 -1
- mindspore/_extends/graph_kernel/model/graph_split.py +84 -76
- mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
- mindspore/_extends/graph_kernel/splitter.py +4 -11
- mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +122 -15
- mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +84 -67
- mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
- mindspore/_extends/parallel_compile/akg_compiler/util.py +10 -7
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +2 -2
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +6 -5
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
- mindspore/_extends/parse/__init__.py +13 -15
- mindspore/_extends/parse/namespace.py +7 -33
- mindspore/_extends/parse/parser.py +67 -72
- mindspore/_extends/parse/resources.py +1 -1
- mindspore/_extends/parse/standard_method.py +86 -106
- mindspore/_extends/parse/trope.py +1 -1
- mindspore/_extends/remote/kernel_build_server.py +25 -7
- mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
- mindspore/_install_custom.py +43 -0
- mindspore/_mindspore_offline_debug.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/amp.py +47 -11
- mindspore/bin/cache_admin +0 -0
- mindspore/bin/cache_server +0 -0
- mindspore/boost/boost.py +1 -8
- mindspore/boost/boost_cell_wrapper.py +3 -2
- mindspore/boost/grad_accumulation.py +1 -1
- mindspore/boost/group_loss_scale_manager.py +8 -7
- mindspore/common/__init__.py +5 -3
- mindspore/common/_jit_fallback_utils.py +6 -0
- mindspore/common/_register_for_adapter.py +2 -0
- mindspore/common/_register_for_tensor.py +2 -2
- mindspore/common/_stub_tensor.py +13 -0
- mindspore/common/_utils.py +29 -0
- mindspore/common/api.py +174 -259
- mindspore/common/auto_dynamic_shape.py +494 -0
- mindspore/common/dtype.py +18 -11
- mindspore/common/dump.py +6 -4
- mindspore/common/initializer.py +14 -14
- mindspore/common/jit_config.py +33 -15
- mindspore/common/lazy_inline.py +126 -7
- mindspore/common/mindir_util.py +101 -0
- mindspore/common/parameter.py +51 -41
- mindspore/common/seed.py +4 -4
- mindspore/common/sparse_tensor.py +13 -14
- mindspore/common/tensor.py +243 -165
- mindspore/communication/__init__.py +7 -4
- mindspore/communication/_comm_helper.py +83 -4
- mindspore/communication/management.py +152 -84
- mindspore/config/op_info.config +14 -3
- mindspore/config/super_bar_config.json +4 -2
- mindspore/context.py +152 -61
- mindspore/dataset/__init__.py +5 -5
- mindspore/dataset/audio/__init__.py +2 -2
- mindspore/dataset/audio/transforms.py +52 -52
- mindspore/dataset/callback/ds_callback.py +16 -2
- mindspore/dataset/core/config.py +68 -51
- mindspore/dataset/engine/cache_client.py +33 -7
- mindspore/dataset/engine/datasets.py +250 -112
- mindspore/dataset/engine/datasets_audio.py +43 -211
- mindspore/dataset/engine/datasets_standard_format.py +16 -35
- mindspore/dataset/engine/datasets_text.py +43 -67
- mindspore/dataset/engine/datasets_user_defined.py +86 -100
- mindspore/dataset/engine/datasets_vision.py +219 -1029
- mindspore/dataset/engine/iterators.py +11 -4
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +4 -0
- mindspore/dataset/engine/obs/util.py +3 -0
- mindspore/dataset/engine/samplers.py +1 -1
- mindspore/dataset/engine/validators.py +19 -5
- mindspore/dataset/text/__init__.py +3 -3
- mindspore/dataset/text/transforms.py +101 -127
- mindspore/dataset/text/utils.py +205 -138
- mindspore/dataset/transforms/__init__.py +1 -1
- mindspore/dataset/transforms/py_transforms_util.py +40 -12
- mindspore/dataset/transforms/transforms.py +95 -40
- mindspore/dataset/utils/browse_dataset.py +8 -2
- mindspore/dataset/utils/line_reader.py +17 -19
- mindspore/dataset/vision/__init__.py +3 -3
- mindspore/dataset/vision/c_transforms.py +6 -3
- mindspore/dataset/vision/transforms.py +409 -287
- mindspore/dataset/vision/utils.py +13 -14
- mindspore/dataset/vision/validators.py +11 -1
- mindspore/experimental/map_parameter.py +14 -0
- mindspore/{nn/optim_ex → experimental/optim}/__init__.py +30 -29
- mindspore/{nn/optim_ex → experimental/optim}/adam.py +60 -67
- mindspore/{nn/optim_ex → experimental/optim}/adamw.py +181 -203
- mindspore/experimental/optim/lr_scheduler.py +1427 -0
- mindspore/{nn/optim_ex → experimental/optim}/optimizer.py +252 -259
- mindspore/{nn/optim_ex → experimental/optim}/sgd.py +147 -152
- mindspore/gen_ops.py +273 -0
- mindspore/include/OWNERS +0 -1
- mindspore/include/api/data_type.h +2 -1
- mindspore/include/api/graph.h +0 -15
- mindspore/include/api/kernel.h +2 -0
- mindspore/include/api/kernel_api.h +37 -12
- mindspore/include/api/model.h +17 -14
- mindspore/include/api/status.h +8 -3
- mindspore/include/api/types.h +37 -4
- mindspore/include/c_api/ms/abstract.h +67 -0
- mindspore/include/c_api/ms/attribute.h +197 -0
- mindspore/include/c_api/ms/base/handle_types.h +43 -0
- mindspore/include/c_api/ms/base/macros.h +32 -0
- mindspore/include/c_api/ms/base/status.h +33 -0
- mindspore/include/c_api/ms/base/types.h +282 -0
- mindspore/include/c_api/ms/context.h +102 -0
- mindspore/include/c_api/ms/graph.h +160 -0
- mindspore/include/c_api/ms/node.h +606 -0
- mindspore/include/c_api/ms/tensor.h +161 -0
- mindspore/include/c_api/ms/value.h +84 -0
- mindspore/include/dataset/constants.h +6 -5
- mindspore/include/dataset/execute.h +23 -13
- mindspore/include/dataset/text.h +26 -26
- mindspore/include/dataset/transforms.h +13 -13
- mindspore/include/dataset/vision.h +60 -60
- mindspore/include/dataset/vision_ascend.h +5 -6
- mindspore/include/dataset/vision_lite.h +17 -17
- mindspore/include/mindapi/base/type_id.h +1 -0
- mindspore/include/mindapi/base/types.h +1 -0
- mindspore/lib/libdnnl.so.2 +0 -0
- mindspore/lib/libjemalloc.so.2 +0 -0
- mindspore/lib/libmindspore.so +0 -0
- mindspore/lib/libmindspore_backend.so +0 -0
- mindspore/lib/libmindspore_common.so +0 -0
- mindspore/lib/libmindspore_core.so +0 -0
- mindspore/lib/libmindspore_glog.so.0 +0 -0
- mindspore/lib/libmindspore_gpr.so.15 +0 -0
- mindspore/lib/libmindspore_grpc++.so.1 +0 -0
- mindspore/lib/libmindspore_grpc.so.15 +0 -0
- mindspore/lib/libmindspore_shared_lib.so +0 -0
- mindspore/lib/libnnacl.so +0 -0
- mindspore/lib/libopencv_core.so.4.5 +0 -0
- mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
- mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
- mindspore/lib/libps_cache.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend310/aic-ascend310-ops-info.json +123 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json +123 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json +158 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json +37 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/add_dsl.py +46 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/add_tik.py +51 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/kv_cache_mgr.py +241 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/matmul_tik.py +212 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/add_dsl.py +46 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/add_tik.py +51 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/kv_cache_mgr.py +241 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/matmul_tik.py +212 -0
- mindspore/lib/plugin/ascend/custom_aicore_ops/op_proto/libop_proto.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +8998 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
- mindspore/lib/plugin/ascend/libakg.so +0 -0
- mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
- mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
- mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
- mindspore/lib/plugin/cpu/libakg.so +0 -0
- mindspore/lib/plugin/gpu/libcuda_ops.so.10 +0 -0
- mindspore/lib/plugin/gpu/libcuda_ops.so.11 +0 -0
- mindspore/lib/plugin/gpu10.1/libakg.so +0 -0
- mindspore/lib/plugin/gpu10.1/libnccl.so.2 +0 -0
- mindspore/lib/plugin/gpu11.1/libakg.so +0 -0
- mindspore/lib/plugin/gpu11.1/libnccl.so.2 +0 -0
- mindspore/lib/plugin/gpu11.6/libakg.so +0 -0
- mindspore/lib/plugin/gpu11.6/libnccl.so.2 +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
- mindspore/lib/plugin/libmindspore_gpu.so.10.1 +0 -0
- mindspore/lib/plugin/libmindspore_gpu.so.11.1 +0 -0
- mindspore/lib/plugin/libmindspore_gpu.so.11.6 +0 -0
- mindspore/mindrecord/tools/imagenet_to_mr.py +1 -1
- mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
- mindspore/nn/__init__.py +0 -2
- mindspore/nn/cell.py +313 -74
- mindspore/nn/dynamic_lr.py +21 -21
- mindspore/nn/layer/activation.py +22 -30
- mindspore/nn/layer/basic.py +15 -13
- mindspore/nn/layer/channel_shuffle.py +1 -1
- mindspore/nn/layer/container.py +271 -9
- mindspore/nn/layer/conv.py +323 -204
- mindspore/nn/layer/dense.py +8 -5
- mindspore/nn/layer/embedding.py +33 -27
- mindspore/nn/layer/flash_attention.py +61 -95
- mindspore/nn/layer/image.py +8 -6
- mindspore/nn/layer/math.py +16 -25
- mindspore/nn/layer/normalization.py +107 -66
- mindspore/nn/layer/padding.py +1 -1
- mindspore/nn/layer/pooling.py +131 -109
- mindspore/nn/layer/rnn_cells.py +27 -22
- mindspore/nn/layer/rnns.py +13 -16
- mindspore/nn/layer/thor_layer.py +1 -1
- mindspore/nn/layer/transformer.py +221 -154
- mindspore/nn/learning_rate_schedule.py +9 -1
- mindspore/nn/loss/loss.py +235 -174
- mindspore/nn/optim/ada_grad.py +2 -1
- mindspore/nn/optim/adadelta.py +1 -0
- mindspore/nn/optim/adafactor.py +2 -1
- mindspore/nn/optim/adam.py +7 -4
- mindspore/nn/optim/adamax.py +3 -2
- mindspore/nn/optim/adasum.py +2 -2
- mindspore/nn/optim/asgd.py +2 -3
- mindspore/nn/optim/ftrl.py +6 -5
- mindspore/nn/optim/lamb.py +7 -4
- mindspore/nn/optim/lars.py +1 -1
- mindspore/nn/optim/lazyadam.py +5 -3
- mindspore/nn/optim/momentum.py +2 -1
- mindspore/nn/optim/optimizer.py +53 -4
- mindspore/nn/optim/proximal_ada_grad.py +3 -4
- mindspore/nn/optim/rmsprop.py +4 -3
- mindspore/nn/optim/rprop.py +23 -12
- mindspore/nn/optim/sgd.py +26 -11
- mindspore/nn/optim/thor.py +9 -7
- mindspore/nn/probability/bijector/bijector.py +5 -5
- mindspore/nn/probability/bijector/power_transform.py +27 -27
- mindspore/nn/probability/bijector/softplus.py +3 -3
- mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -3
- mindspore/nn/probability/distribution/bernoulli.py +5 -5
- mindspore/nn/probability/distribution/beta.py +3 -3
- mindspore/nn/probability/distribution/categorical.py +7 -7
- mindspore/nn/probability/distribution/cauchy.py +0 -1
- mindspore/nn/probability/distribution/distribution.py +3 -3
- mindspore/nn/probability/distribution/gamma.py +3 -3
- mindspore/nn/probability/distribution/geometric.py +4 -4
- mindspore/nn/probability/distribution/gumbel.py +4 -4
- mindspore/nn/probability/distribution/log_normal.py +2 -2
- mindspore/nn/probability/distribution/logistic.py +2 -2
- mindspore/nn/probability/distribution/poisson.py +4 -4
- mindspore/nn/probability/distribution/transformed_distribution.py +3 -3
- mindspore/nn/probability/distribution/uniform.py +6 -6
- mindspore/nn/wrap/__init__.py +4 -2
- mindspore/nn/wrap/cell_wrapper.py +87 -34
- mindspore/nn/wrap/grad_reducer.py +8 -5
- mindspore/nn/wrap/loss_scale.py +105 -42
- mindspore/numpy/array_creations.py +1 -2
- mindspore/numpy/array_ops.py +3 -2
- mindspore/numpy/utils_const.py +5 -5
- mindspore/offline_debug/convert_async.py +2 -2
- mindspore/ops/_grad_experimental/__init__.py +0 -5
- mindspore/ops/_grad_experimental/grad_array_ops.py +2 -3
- mindspore/ops/_grad_experimental/grad_comm_ops.py +15 -2
- mindspore/ops/_grad_experimental/grad_debug_ops.py +0 -37
- mindspore/ops/_grad_experimental/grad_implementations.py +11 -1
- mindspore/ops/_grad_experimental/grad_inner_ops.py +2 -216
- mindspore/ops/_grad_experimental/grad_math_ops.py +19 -199
- mindspore/ops/_grad_experimental/grad_sparse.py +15 -0
- mindspore/ops/_grad_experimental/grad_sparse_ops.py +3 -3
- mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
- mindspore/ops/_op_impl/aicpu/__init__.py +14 -2
- mindspore/ops/_op_impl/aicpu/add.py +3 -3
- mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
- mindspore/ops/_op_impl/{_custom_op/flash_attention/constants.py → aicpu/eps.py} +18 -27
- mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
- mindspore/ops/_op_impl/aicpu/linear_sum_assignment.py +21 -2
- mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
- mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/multinomial.py +3 -3
- mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
- mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
- mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
- mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
- mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
- mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
- mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
- mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -5
- mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -5
- mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
- mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
- mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
- mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
- mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
- mindspore/ops/_op_impl/tbe/__init__.py +4 -4
- mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
- mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
- mindspore/ops/_primitive_cache.py +1 -1
- mindspore/ops/_tracefunc.py +45 -13
- mindspore/ops/_utils/utils.py +6 -1
- mindspore/ops/_vmap/vmap_array_ops.py +3 -3
- mindspore/ops/_vmap/vmap_base.py +3 -3
- mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
- mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
- mindspore/ops/_vmap/vmap_math_ops.py +5 -2
- mindspore/ops/_vmap/vmap_nn_ops.py +61 -7
- mindspore/ops/arg_dtype_cast.py +54 -0
- mindspore/ops/composite/base.py +37 -10
- mindspore/ops/composite/math_ops.py +5 -4
- mindspore/ops/composite/multitype_ops/_compile_utils.py +275 -73
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +16 -9
- mindspore/ops/composite/multitype_ops/add_impl.py +43 -4
- mindspore/ops/composite/multitype_ops/getitem_impl.py +42 -4
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
- mindspore/ops/deprecated.py +304 -0
- mindspore/ops/function/__init__.py +4 -1
- mindspore/ops/function/array_func.py +174 -193
- mindspore/ops/function/clip_func.py +81 -13
- mindspore/ops/function/debug_func.py +1 -1
- mindspore/ops/function/grad/grad_func.py +18 -9
- mindspore/ops/function/image_func.py +10 -4
- mindspore/ops/function/linalg_func.py +5 -5
- mindspore/ops/function/math_func.py +575 -386
- mindspore/ops/function/nn_func.py +568 -260
- mindspore/ops/function/random_func.py +88 -57
- mindspore/ops/function/sparse_func.py +1 -1
- mindspore/ops/function/sparse_unary_func.py +14 -12
- mindspore/ops/function/vmap_func.py +6 -5
- mindspore/ops/functional.py +15 -10
- mindspore/ops/op_info_register.py +244 -25
- mindspore/ops/operations/__init__.py +31 -19
- mindspore/ops/operations/_grad_ops.py +71 -7
- mindspore/ops/operations/_inner_ops.py +350 -17
- mindspore/ops/operations/_quant_ops.py +4 -8
- mindspore/ops/operations/_sequence_ops.py +42 -0
- mindspore/ops/operations/array_ops.py +68 -282
- mindspore/ops/operations/comm_ops.py +107 -59
- mindspore/ops/operations/custom_ops.py +94 -70
- mindspore/ops/operations/debug_ops.py +8 -4
- mindspore/ops/operations/image_ops.py +18 -12
- mindspore/ops/operations/inner_ops.py +26 -3
- mindspore/ops/operations/math_ops.py +192 -144
- mindspore/ops/operations/nn_ops.py +857 -489
- mindspore/ops/operations/other_ops.py +0 -22
- mindspore/ops/operations/random_ops.py +53 -111
- mindspore/ops/operations/sparse_ops.py +3 -1
- mindspore/ops/primitive.py +24 -18
- mindspore/parallel/_auto_parallel_context.py +68 -8
- mindspore/parallel/_cost_model_context.py +2 -2
- mindspore/parallel/_offload_context.py +17 -3
- mindspore/parallel/_parallel_serialization.py +12 -5
- mindspore/parallel/_ps_context.py +12 -0
- mindspore/parallel/_tensor.py +18 -13
- mindspore/parallel/_transformer/layers.py +5 -3
- mindspore/parallel/_transformer/loss.py +1 -0
- mindspore/parallel/_transformer/moe.py +2 -2
- mindspore/parallel/_transformer/op_parallel_config.py +12 -1
- mindspore/parallel/_transformer/transformer.py +23 -3
- mindspore/parallel/_utils.py +11 -7
- mindspore/parallel/algo_parameter_config.py +85 -5
- mindspore/parallel/checkpoint_transform.py +19 -12
- mindspore/parallel/shard.py +21 -14
- mindspore/profiler/common/struct_type.py +3 -3
- mindspore/profiler/common/util.py +4 -2
- mindspore/profiler/envprofiling.py +1 -1
- mindspore/profiler/parser/aicpu_data_parser.py +5 -3
- mindspore/profiler/parser/ascend_flops_generator.py +2 -2
- mindspore/profiler/parser/ascend_fpbp_generator.py +1 -1
- mindspore/profiler/parser/ascend_hccl_generator.py +249 -12
- mindspore/profiler/parser/ascend_msprof_exporter.py +150 -255
- mindspore/profiler/parser/ascend_msprof_generator.py +204 -17
- mindspore/profiler/parser/ascend_op_generator.py +6 -6
- mindspore/profiler/parser/ascend_steptrace_generator.py +6 -4
- mindspore/profiler/parser/ascend_timeline_generator.py +14 -187
- mindspore/profiler/parser/base_timeline_generator.py +10 -8
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +16 -12
- mindspore/profiler/parser/flops_parser.py +15 -11
- mindspore/profiler/parser/framework_parser.py +38 -22
- mindspore/profiler/parser/hccl_parser.py +16 -12
- mindspore/profiler/parser/integrator.py +22 -11
- mindspore/profiler/parser/memory_usage_parser.py +2 -2
- mindspore/profiler/parser/minddata_analyzer.py +12 -14
- mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
- mindspore/profiler/parser/msadvisor_parser.py +8 -4
- mindspore/profiler/parser/op_intermediate_parser.py +5 -2
- mindspore/profiler/parser/optime_parser.py +1 -1
- mindspore/profiler/parser/profiler_info.py +21 -2
- mindspore/profiler/parser/step_trace_parser.py +11 -14
- mindspore/profiler/profiling.py +179 -89
- mindspore/rewrite/api/node.py +102 -19
- mindspore/rewrite/api/node_type.py +5 -1
- mindspore/rewrite/api/pattern_engine.py +1 -1
- mindspore/rewrite/api/scoped_value.py +9 -17
- mindspore/rewrite/api/symbol_tree.py +131 -47
- mindspore/rewrite/ast_helpers/__init__.py +2 -1
- mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
- mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
- mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +93 -46
- mindspore/rewrite/common/rewrite_elog.py +5 -1
- mindspore/rewrite/namer.py +33 -24
- mindspore/rewrite/namespace.py +14 -5
- mindspore/{_extends/graph_kernel/expanders/complex → rewrite/node}/__init__.py +9 -9
- mindspore/rewrite/node/call_function.py +79 -0
- mindspore/rewrite/node/cell_container.py +135 -0
- mindspore/rewrite/node/control_flow.py +88 -0
- mindspore/rewrite/{node.py → node/node.py} +273 -234
- mindspore/rewrite/node/node_manager.py +254 -0
- mindspore/rewrite/{topological_manager.py → node/node_topological_manager.py} +13 -46
- mindspore/rewrite/parsers/arguments_parser.py +22 -21
- mindspore/rewrite/parsers/assign_parser.py +216 -221
- mindspore/rewrite/parsers/attribute_parser.py +9 -7
- mindspore/rewrite/parsers/class_def_parser.py +174 -113
- mindspore/rewrite/parsers/constant_parser.py +9 -6
- mindspore/rewrite/parsers/container_parser.py +9 -7
- mindspore/rewrite/parsers/for_parser.py +42 -21
- mindspore/rewrite/parsers/function_def_parser.py +24 -16
- mindspore/rewrite/parsers/if_parser.py +28 -24
- mindspore/rewrite/parsers/module_parser.py +196 -25
- mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
- mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
- mindspore/rewrite/parsers/return_parser.py +6 -6
- mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
- mindspore/rewrite/sparsify/utils.py +1 -1
- mindspore/rewrite/symbol_tree.py +523 -578
- mindspore/rewrite/symbol_tree_builder.py +9 -193
- mindspore/rewrite/symbol_tree_dumper.py +2 -2
- mindspore/run_check/_check_version.py +6 -4
- mindspore/{ops/bprop_mindir → safeguard}/__init__.py +4 -3
- mindspore/safeguard/rewrite_obfuscation.py +541 -0
- mindspore/scipy/linalg.py +1 -1
- mindspore/scipy/ops.py +55 -5
- mindspore/scipy/optimize/__init__.py +3 -2
- mindspore/scipy/optimize/linear_sum_assignment.py +38 -33
- mindspore/scipy/optimize/minimize.py +7 -3
- mindspore/train/_utils.py +7 -3
- mindspore/train/amp.py +323 -123
- mindspore/train/anf_ir_pb2.py +14 -2
- mindspore/train/callback/_backup_and_restore.py +2 -12
- mindspore/train/callback/_callback.py +29 -4
- mindspore/train/callback/_checkpoint.py +23 -8
- mindspore/train/callback/_early_stop.py +2 -2
- mindspore/train/callback/_landscape.py +4 -4
- mindspore/train/callback/_loss_monitor.py +2 -2
- mindspore/train/callback/_on_request_exit.py +2 -2
- mindspore/train/callback/_reduce_lr_on_plateau.py +3 -4
- mindspore/train/callback/_summary_collector.py +15 -8
- mindspore/train/callback/_time_monitor.py +58 -5
- mindspore/train/data_sink.py +5 -11
- mindspore/train/dataset_helper.py +84 -57
- mindspore/train/loss_scale_manager.py +2 -2
- mindspore/train/metrics/__init__.py +3 -3
- mindspore/train/metrics/cosine_similarity.py +1 -1
- mindspore/train/metrics/hausdorff_distance.py +3 -2
- mindspore/train/metrics/mean_surface_distance.py +3 -2
- mindspore/train/metrics/metric.py +39 -19
- mindspore/train/metrics/roc.py +2 -2
- mindspore/train/metrics/root_mean_square_surface_distance.py +4 -3
- mindspore/train/mind_ir_pb2.py +85 -36
- mindspore/train/model.py +187 -47
- mindspore/train/serialization.py +487 -161
- mindspore/train/summary/_summary_adapter.py +1 -1
- mindspore/train/summary/_writer_pool.py +3 -2
- mindspore/train/summary/summary_record.py +37 -17
- mindspore/train/train_thor/convert_utils.py +3 -3
- mindspore/train/train_thor/dataset_helper.py +1 -1
- mindspore/version.py +1 -1
- {mindspore-2.1.0.dist-info → mindspore-2.2.11.dist-info}/METADATA +8 -8
- {mindspore-2.1.0.dist-info → mindspore-2.2.11.dist-info}/RECORD +488 -539
- {mindspore-2.1.0.dist-info → mindspore-2.2.11.dist-info}/entry_points.txt +0 -1
- mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
- mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
- mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
- mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
- mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
- mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
- mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
- mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
- mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
- mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
- mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
- mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
- mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
- mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
- mindspore/_akg/akg/tvm/rpc/base.py +0 -182
- mindspore/_akg/akg/tvm/rpc/client.py +0 -436
- mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
- mindspore/_akg/akg/tvm/rpc/server.py +0 -413
- mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
- mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
- mindspore/_extends/graph_kernel/expander.py +0 -80
- mindspore/_extends/graph_kernel/expanders/__init__.py +0 -54
- mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
- mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
- mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
- mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
- mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
- mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
- mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
- mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
- mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
- mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
- mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
- mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
- mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
- mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
- mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
- mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
- mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
- mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
- mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
- mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
- mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
- mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
- mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
- mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
- mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
- mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
- mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
- mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
- mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
- mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
- mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
- mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
- mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
- mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
- mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
- mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
- mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
- mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
- mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
- mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
- mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
- mindspore/dataset/datapreprocess/__init__.py +0 -20
- mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
- mindspore/include/api/net.h +0 -142
- mindspore/nn/lr_scheduler.py +0 -262
- mindspore/ops/_grad_experimental/grad_image_ops.py +0 -248
- mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -181
- mindspore/ops/_grad_experimental/grad_other_ops.py +0 -72
- mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
- mindspore/ops/_grad_experimental/grad_sequence_ops.py +0 -351
- mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +0 -350
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +0 -409
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +0 -578
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +0 -199
- mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +0 -446
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/__init__.py +0 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/sparse_tiling.py +0 -45
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/strategy.py +0 -67
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +0 -62
- mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
- mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
- mindspore/rewrite/node_visitor.py +0 -44
- /mindspore/{ops/_op_impl/_custom_op/flash_attention → _akg/akg/utils/ascend_profilier}/__init__.py +0 -0
- {mindspore-2.1.0.dist-info → mindspore-2.2.11.dist-info}/WHEEL +0 -0
- {mindspore-2.1.0.dist-info → mindspore-2.2.11.dist-info}/top_level.txt +0 -0
|
@@ -21,14 +21,225 @@ import inspect
|
|
|
21
21
|
import json
|
|
22
22
|
import os
|
|
23
23
|
import functools
|
|
24
|
+
import platform
|
|
25
|
+
import hashlib
|
|
26
|
+
import shutil
|
|
24
27
|
|
|
25
28
|
from mindspore._c_expression import Oplib
|
|
26
29
|
from mindspore import _checkparam as validator
|
|
30
|
+
from mindspore import log as logger
|
|
31
|
+
|
|
32
|
+
if platform.system() == "Linux":
|
|
33
|
+
import fcntl
|
|
27
34
|
|
|
28
35
|
# path of built-in op info register.
|
|
29
36
|
BUILT_IN_OPS_REGISTER_PATH = "mindspore/ops/_op_impl"
|
|
30
37
|
BUILT_IN_CUSTOM_OPS_REGISTER_PATH = "mindspore/ops/_op_impl/_custom_op"
|
|
31
38
|
|
|
39
|
+
KEY_NAME = "name"
|
|
40
|
+
ASCEND_CUSTOM_OPP_PATH = "ASCEND_CUSTOM_OPP_PATH"
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def _get_reg_info_attr(op_info, attr_name, default_value=None):
|
|
44
|
+
"""get attr value"""
|
|
45
|
+
for _, item in enumerate(op_info.get("attr", [])):
|
|
46
|
+
if item.get(KEY_NAME) == attr_name:
|
|
47
|
+
return item.get("defaultValue")
|
|
48
|
+
return default_value
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class _CustomInstaller:
|
|
52
|
+
"""save custom op registration information to a json file which will be used by GE"""
|
|
53
|
+
reg_info_hash = [] # used to avoid writing the same reg info to file multiple times
|
|
54
|
+
copied_paths = [] # used to avoid copying the same file multiple times
|
|
55
|
+
|
|
56
|
+
def __init__(self, op_info, func=None):
|
|
57
|
+
self.op_info = op_info
|
|
58
|
+
self.func = func
|
|
59
|
+
self.op_type = op_info.get("op_name") if not func else func.__name__
|
|
60
|
+
vendor_name = "ms"
|
|
61
|
+
custom_dir = os.path.join(os.path.realpath("./"), "vendors", vendor_name)
|
|
62
|
+
self._set_env(custom_dir)
|
|
63
|
+
op_impl_dir = os.path.join(custom_dir, "op_impl")
|
|
64
|
+
self.ai_core_config_dir = os.path.join(op_impl_dir, "ai_core", "tbe", "config")
|
|
65
|
+
self.ai_core_impl_dir = os.path.join(op_impl_dir, "ai_core", "tbe", vendor_name + "_impl")
|
|
66
|
+
self.ai_cpu_config_dir = os.path.join(op_impl_dir, "cpu", "config")
|
|
67
|
+
self.ai_cpu_impl_dir = os.path.join(op_impl_dir, "cpu", "aicpu_kernel", "impl")
|
|
68
|
+
|
|
69
|
+
@staticmethod
|
|
70
|
+
def _set_env(custom_opp_path):
|
|
71
|
+
"""set custom file path to env"""
|
|
72
|
+
if not os.environ.get(ASCEND_CUSTOM_OPP_PATH):
|
|
73
|
+
os.environ[ASCEND_CUSTOM_OPP_PATH] = custom_opp_path
|
|
74
|
+
else:
|
|
75
|
+
paths = os.environ[ASCEND_CUSTOM_OPP_PATH].split(':')
|
|
76
|
+
if custom_opp_path not in paths:
|
|
77
|
+
os.environ[ASCEND_CUSTOM_OPP_PATH] = custom_opp_path + ':' + os.environ[ASCEND_CUSTOM_OPP_PATH]
|
|
78
|
+
|
|
79
|
+
@staticmethod
|
|
80
|
+
def _create_dir(*dir_names):
|
|
81
|
+
"""create directory"""
|
|
82
|
+
for dir_name in dir_names:
|
|
83
|
+
if not os.path.isdir(dir_name):
|
|
84
|
+
try:
|
|
85
|
+
os.makedirs(dir_name, exist_ok=True)
|
|
86
|
+
except OSError as err:
|
|
87
|
+
if err.errno == 17: # File exists
|
|
88
|
+
pass
|
|
89
|
+
else:
|
|
90
|
+
raise err
|
|
91
|
+
|
|
92
|
+
@staticmethod
|
|
93
|
+
def _copy_file(src_path, dst_dir):
|
|
94
|
+
"""copy file"""
|
|
95
|
+
if not os.path.exists(src_path) or src_path in _CustomInstaller.copied_paths:
|
|
96
|
+
return
|
|
97
|
+
_CustomInstaller.copied_paths.append(src_path)
|
|
98
|
+
if os.path.isfile(src_path):
|
|
99
|
+
lock_file = os.path.join(dst_dir, "file.lock")
|
|
100
|
+
with os.fdopen(os.open(lock_file, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0o600), 'w') as f:
|
|
101
|
+
fcntl.flock(f.fileno(), fcntl.LOCK_EX)
|
|
102
|
+
shutil.copy(src_path, dst_dir)
|
|
103
|
+
|
|
104
|
+
def check(self):
|
|
105
|
+
"""check if the reg info need written"""
|
|
106
|
+
if platform.system() != "Linux":
|
|
107
|
+
return False
|
|
108
|
+
if not os.environ.get("MS_DEV_CUSTOM_OPP_PATH"):
|
|
109
|
+
# only process the first time import the mindspore module
|
|
110
|
+
return False
|
|
111
|
+
if self.op_info.get("target") in ["GPU", "CPU"]:
|
|
112
|
+
return False
|
|
113
|
+
sha256 = hashlib.sha256()
|
|
114
|
+
value = json.dumps(self.op_info, sort_keys=True).encode()
|
|
115
|
+
sha256.update(value)
|
|
116
|
+
hash_value = sha256.hexdigest()
|
|
117
|
+
if hash_value in _CustomInstaller.reg_info_hash:
|
|
118
|
+
return False
|
|
119
|
+
_CustomInstaller.reg_info_hash.append(hash_value)
|
|
120
|
+
return True
|
|
121
|
+
|
|
122
|
+
def _find_ai_cpu_so_path(self, so_file):
|
|
123
|
+
"""find the absolute path of so"""
|
|
124
|
+
current_path = os.path.dirname(os.path.abspath(__file__))
|
|
125
|
+
search_paths = [current_path + "/../lib", current_path + "/../lib/plugin/ascend"]
|
|
126
|
+
for path in search_paths:
|
|
127
|
+
so_path = os.path.join(path, so_file)
|
|
128
|
+
if os.path.exists(so_path):
|
|
129
|
+
return so_path
|
|
130
|
+
logger.warning("For Custom op '{}', can not find the aicpu so file '{}' in the following directories:\n{}"
|
|
131
|
+
.format(self.op_type, so_file, "\n".join(search_paths)))
|
|
132
|
+
return ""
|
|
133
|
+
|
|
134
|
+
def _gen_ai_core_reg_info(self, imply_path, func_name):
|
|
135
|
+
"""generate reg info"""
|
|
136
|
+
|
|
137
|
+
def _get_dtype_format(idx):
|
|
138
|
+
data_type = []
|
|
139
|
+
data_format = []
|
|
140
|
+
for _, dtype_format in enumerate(self.op_info.get("dtype_format", [])):
|
|
141
|
+
if not dtype_format[idx][0]:
|
|
142
|
+
data_type = None
|
|
143
|
+
else:
|
|
144
|
+
data_type.append(dtype_format[idx][0])
|
|
145
|
+
if not dtype_format[idx][1]:
|
|
146
|
+
data_format = None
|
|
147
|
+
else:
|
|
148
|
+
if dtype_format[idx][1] == "DefaultFormat":
|
|
149
|
+
data_format.append("ND")
|
|
150
|
+
else:
|
|
151
|
+
data_format.append(dtype_format[idx][1])
|
|
152
|
+
return data_type, data_format
|
|
153
|
+
|
|
154
|
+
op_info = {"opFile": {"value": os.path.splitext(os.path.basename(imply_path))[0]},
|
|
155
|
+
"opInterface": {"value": func_name}}
|
|
156
|
+
# attr
|
|
157
|
+
attrs_name = []
|
|
158
|
+
for _, item in enumerate(self.op_info.get("attr", [])):
|
|
159
|
+
attr_name = item.get(KEY_NAME)
|
|
160
|
+
attrs_name.append(attr_name)
|
|
161
|
+
key = "attr_" + attr_name
|
|
162
|
+
op_info[key] = {}
|
|
163
|
+
for k, v in item.items():
|
|
164
|
+
if k != KEY_NAME:
|
|
165
|
+
op_info[key][k] = v
|
|
166
|
+
if attrs_name:
|
|
167
|
+
op_info["attr"] = {"list": ",".join(attrs_name)}
|
|
168
|
+
# input and output
|
|
169
|
+
inputs = self.op_info.get("inputs", [])
|
|
170
|
+
outputs = self.op_info.get("outputs", [])
|
|
171
|
+
input_num = len(inputs)
|
|
172
|
+
output_num = len(outputs)
|
|
173
|
+
for i in range(input_num + output_num):
|
|
174
|
+
item = inputs[i] if i < input_num else outputs[i - input_num]
|
|
175
|
+
key = "input" if i < input_num else "output"
|
|
176
|
+
key += str(item.get("index"))
|
|
177
|
+
op_info[key] = {KEY_NAME: item.get(KEY_NAME),
|
|
178
|
+
"paramType": item.get("paramType", "required"),
|
|
179
|
+
"shape": item.get("shape", "all")}
|
|
180
|
+
dtype, formats = _get_dtype_format(i)
|
|
181
|
+
if dtype:
|
|
182
|
+
op_info[key]["dtype"] = ",".join(dtype)
|
|
183
|
+
if formats:
|
|
184
|
+
op_info[key]["format"] = ",".join(formats)
|
|
185
|
+
return op_info
|
|
186
|
+
|
|
187
|
+
@staticmethod
|
|
188
|
+
def _gen_ai_cpu_reg_info(so_file):
|
|
189
|
+
"""generate reg info"""
|
|
190
|
+
op_info = {"opInfo": {"computeCost": "100",
|
|
191
|
+
"engine": "DNN_VM_AICPU",
|
|
192
|
+
"flagAsync": "False",
|
|
193
|
+
"flagPartial": "False",
|
|
194
|
+
"functionName": "RunCpuKernel",
|
|
195
|
+
"kernelSo": so_file,
|
|
196
|
+
"opKernelLib": "CUSTAICPUKernel",
|
|
197
|
+
"userDefined": "True"}}
|
|
198
|
+
return op_info
|
|
199
|
+
|
|
200
|
+
def _save_op_info(self, dst_dir, file_name, op_info):
|
|
201
|
+
"""save op info file"""
|
|
202
|
+
repo = {}
|
|
203
|
+
save_path = os.path.join(dst_dir, file_name)
|
|
204
|
+
lock_file = os.path.join(dst_dir, "file.lock")
|
|
205
|
+
with os.fdopen(os.open(lock_file, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0o600), 'w') as f:
|
|
206
|
+
fcntl.flock(f.fileno(), fcntl.LOCK_EX)
|
|
207
|
+
if os.path.isfile(save_path):
|
|
208
|
+
with open(save_path, 'r') as fr:
|
|
209
|
+
json_str = fr.read()
|
|
210
|
+
json_str = "{}" if json_str == "" else json_str
|
|
211
|
+
repo = json.loads(json_str)
|
|
212
|
+
repo.update({self.op_type: op_info})
|
|
213
|
+
with os.fdopen(os.open(save_path, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0o600), 'w') as fw:
|
|
214
|
+
json.dump(repo, fw, sort_keys=True, indent=4, separators=(',', ':'))
|
|
215
|
+
|
|
216
|
+
def run(self):
|
|
217
|
+
"""save reg info to file"""
|
|
218
|
+
if not self.check():
|
|
219
|
+
return
|
|
220
|
+
so_name = _get_reg_info_attr(self.op_info, "cust_aicpu")
|
|
221
|
+
if so_name:
|
|
222
|
+
_CustomInstaller._create_dir(self.ai_cpu_config_dir, self.ai_cpu_impl_dir)
|
|
223
|
+
# copy so file
|
|
224
|
+
so_file = "lib" + so_name + ".so"
|
|
225
|
+
imply_path = self._find_ai_cpu_so_path(so_file)
|
|
226
|
+
self._copy_file(imply_path, self.ai_cpu_impl_dir)
|
|
227
|
+
# generate and copy reg info file
|
|
228
|
+
op_info = self._gen_ai_cpu_reg_info(so_file)
|
|
229
|
+
self._save_op_info(self.ai_cpu_config_dir, "cust_aicpu_kernel.json", op_info)
|
|
230
|
+
else:
|
|
231
|
+
_CustomInstaller._create_dir(self.ai_core_config_dir, self.ai_core_impl_dir)
|
|
232
|
+
# copy dsl file
|
|
233
|
+
imply_path = os.path.realpath(inspect.getfile(self.func))
|
|
234
|
+
self._copy_file(imply_path, self.ai_core_impl_dir)
|
|
235
|
+
# generate and copy reg info file
|
|
236
|
+
op_info = self._gen_ai_core_reg_info(imply_path, self.func.__name__)
|
|
237
|
+
self._copy_file(imply_path, self.ai_core_impl_dir)
|
|
238
|
+
for arc_name in ["ascend910", "ascend910b"]:
|
|
239
|
+
arc_dir = os.path.join(self.ai_core_config_dir, arc_name)
|
|
240
|
+
_CustomInstaller._create_dir(arc_dir)
|
|
241
|
+
self._save_op_info(arc_dir, "aic-{}-ops-info.json".format(arc_name), op_info)
|
|
242
|
+
|
|
32
243
|
|
|
33
244
|
def op_info_register(op_info):
|
|
34
245
|
r"""
|
|
@@ -125,6 +336,12 @@ def custom_info_register(*reg_info):
|
|
|
125
336
|
|
|
126
337
|
def decorator(func):
|
|
127
338
|
setattr(func, "reg_info", reg_info)
|
|
339
|
+
if reg_info:
|
|
340
|
+
used_reg_info = reg_info[0]
|
|
341
|
+
if isinstance(used_reg_info, dict):
|
|
342
|
+
# ai_cpu should be parsed inside CustomRegOp, skip it here
|
|
343
|
+
if not _get_reg_info_attr(used_reg_info, "cust_aicpu"):
|
|
344
|
+
_CustomInstaller(used_reg_info, func).run()
|
|
128
345
|
|
|
129
346
|
@functools.wraps(func)
|
|
130
347
|
def wrapper(*args, **kwargs):
|
|
@@ -140,7 +357,7 @@ class RegOp:
|
|
|
140
357
|
Base class for op info register.
|
|
141
358
|
|
|
142
359
|
Args:
|
|
143
|
-
op_name (str): Name of
|
|
360
|
+
op_name (str): Name of operator.
|
|
144
361
|
"""
|
|
145
362
|
|
|
146
363
|
def __init__(self, op_name=""):
|
|
@@ -167,7 +384,6 @@ class RegOp:
|
|
|
167
384
|
"""
|
|
168
385
|
if not isinstance(value, str):
|
|
169
386
|
raise TypeError("%s value must be str" % str(value))
|
|
170
|
-
return True
|
|
171
387
|
|
|
172
388
|
def _is_int(self, value):
|
|
173
389
|
"""
|
|
@@ -181,7 +397,6 @@ class RegOp:
|
|
|
181
397
|
"""
|
|
182
398
|
if not isinstance(value, int):
|
|
183
399
|
raise TypeError("%s value must be int" % str(value))
|
|
184
|
-
return True
|
|
185
400
|
|
|
186
401
|
def _is_bool(self, value):
|
|
187
402
|
"""
|
|
@@ -195,7 +410,6 @@ class RegOp:
|
|
|
195
410
|
"""
|
|
196
411
|
if not isinstance(value, bool):
|
|
197
412
|
raise TypeError("%s value must be bool" % str(value))
|
|
198
|
-
return True
|
|
199
413
|
|
|
200
414
|
@staticmethod
|
|
201
415
|
def _is_list(value):
|
|
@@ -210,7 +424,6 @@ class RegOp:
|
|
|
210
424
|
"""
|
|
211
425
|
if not isinstance(value, list):
|
|
212
426
|
raise TypeError("%s value must be list" % str(value))
|
|
213
|
-
return True
|
|
214
427
|
|
|
215
428
|
def _check_param(self, param_list, key_list, fn_list, kwargs):
|
|
216
429
|
"""
|
|
@@ -278,7 +491,9 @@ class RegOp:
|
|
|
278
491
|
self._is_string(arg[1])
|
|
279
492
|
if len(arg) == 3:
|
|
280
493
|
self._is_string(arg[2])
|
|
281
|
-
|
|
494
|
+
dtype_format.append(arg)
|
|
495
|
+
else:
|
|
496
|
+
dtype_format.append(arg)
|
|
282
497
|
self.dtype_format_.append(tuple(dtype_format))
|
|
283
498
|
return self
|
|
284
499
|
|
|
@@ -446,10 +661,10 @@ class AkgCpuRegOp(AkgRegOp):
|
|
|
446
661
|
|
|
447
662
|
class AiCPURegOp(CpuRegOp):
|
|
448
663
|
r"""
|
|
449
|
-
Class for AiCPU operator information
|
|
664
|
+
Class for AiCPU operator information registration.
|
|
450
665
|
|
|
451
666
|
Args:
|
|
452
|
-
op_name (str):
|
|
667
|
+
op_name (str): Name of operator.
|
|
453
668
|
|
|
454
669
|
Examples:
|
|
455
670
|
>>> from mindspore.ops import AiCPURegOp, DataType
|
|
@@ -481,14 +696,15 @@ class AiCPURegOp(CpuRegOp):
|
|
|
481
696
|
|
|
482
697
|
class TBERegOp(RegOp):
|
|
483
698
|
r"""
|
|
484
|
-
Class for TBE operator information
|
|
699
|
+
Class for TBE operator information registration. TBE (Tensor Boost Engine) is the Ascend operator development
|
|
700
|
+
tool, which is extended on the basis of the TVM framework to develop custom operators.
|
|
485
701
|
|
|
486
702
|
Args:
|
|
487
|
-
op_name (str):
|
|
703
|
+
op_name (str): Name of operator.
|
|
488
704
|
|
|
489
705
|
Examples:
|
|
490
|
-
>>>
|
|
491
|
-
>>> op_name_op_info =
|
|
706
|
+
>>> from mindspore.ops import TBERegOp, DataType
|
|
707
|
+
>>> op_name_op_info = TBERegOp("OpName") \
|
|
492
708
|
... .fusion_type("ELEMWISE") \
|
|
493
709
|
... .async_flag(False) \
|
|
494
710
|
... .binfile_name("op_name.so") \
|
|
@@ -505,14 +721,14 @@ class TBERegOp(RegOp):
|
|
|
505
721
|
... .input(0, "x2", None, "required", None) \
|
|
506
722
|
... .input(1, "axis", None, "required", None) \
|
|
507
723
|
... .output(0, "y", True, "required", "all") \
|
|
508
|
-
... .real_input_index([1, 0])
|
|
509
|
-
... .input_to_attr_index([2])
|
|
510
|
-
... .unknown_shape_formats(["ND", "ND", "ND", "ND"])
|
|
724
|
+
... .real_input_index([1, 0]) \
|
|
725
|
+
... .input_to_attr_index([2]) \
|
|
726
|
+
... .unknown_shape_formats(["ND", "ND", "ND", "ND"]) \
|
|
511
727
|
... .reshape_type("NC") \
|
|
512
728
|
... .is_dynamic_format(True) \
|
|
513
|
-
... .dtype_format(DataType.F16_None, DataType.F16_None) \
|
|
514
|
-
... .dtype_format(DataType.F32_None, DataType.F32_None) \
|
|
515
|
-
... .dtype_format(DataType.I32_None, DataType.I32_None) \
|
|
729
|
+
... .dtype_format(DataType.F16_None, DataType.F16_None, DataType.F16_None, DataType.F16_None) \
|
|
730
|
+
... .dtype_format(DataType.F32_None, DataType.F32_None, DataType.F32_None, DataType.F32_None) \
|
|
731
|
+
... .dtype_format(DataType.I32_None, DataType.I32_None, DataType.I32_None, DataType.I32_None) \
|
|
516
732
|
... .get_op_info()
|
|
517
733
|
>>>
|
|
518
734
|
"""
|
|
@@ -706,7 +922,8 @@ class TBERegOp(RegOp):
|
|
|
706
922
|
Args:
|
|
707
923
|
pattern (str): Value of op pattern, e.g. "broadcast", "reduce". Default: ``None`` .
|
|
708
924
|
"""
|
|
709
|
-
if pattern is not None
|
|
925
|
+
if pattern is not None:
|
|
926
|
+
self._is_string(pattern)
|
|
710
927
|
self.op_pattern_ = pattern
|
|
711
928
|
return self
|
|
712
929
|
|
|
@@ -830,7 +1047,7 @@ class CustomRegOp(RegOp):
|
|
|
830
1047
|
|
|
831
1048
|
Tutorial Examples:
|
|
832
1049
|
- `Custom Operators (Custom-based) - Defining Custom Operator of aicpu Type
|
|
833
|
-
<https://mindspore.cn/tutorials/experts/en/r2.
|
|
1050
|
+
<https://mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html#
|
|
834
1051
|
defining-custom-operator-of-aicpu-type>`_
|
|
835
1052
|
"""
|
|
836
1053
|
param_list = [index, name, param_type]
|
|
@@ -870,7 +1087,7 @@ class CustomRegOp(RegOp):
|
|
|
870
1087
|
|
|
871
1088
|
Tutorial Examples:
|
|
872
1089
|
- `Custom Operators (Custom-based) - Defining Custom Operator of aicpu Type
|
|
873
|
-
<https://mindspore.cn/tutorials/experts/en/r2.
|
|
1090
|
+
<https://mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html#
|
|
874
1091
|
defining-custom-operator-of-aicpu-type>`_
|
|
875
1092
|
"""
|
|
876
1093
|
param_list = [index, name, param_type]
|
|
@@ -898,7 +1115,7 @@ class CustomRegOp(RegOp):
|
|
|
898
1115
|
|
|
899
1116
|
Tutorial Examples:
|
|
900
1117
|
- `Custom Operators (Custom-based) - Defining Custom Operator of aicpu Type
|
|
901
|
-
<https://mindspore.cn/tutorials/experts/en/r2.
|
|
1118
|
+
<https://mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html#
|
|
902
1119
|
defining-custom-operator-of-aicpu-type>`_
|
|
903
1120
|
"""
|
|
904
1121
|
io_nums = len(self.inputs) + len(self.outputs)
|
|
@@ -955,7 +1172,7 @@ class CustomRegOp(RegOp):
|
|
|
955
1172
|
|
|
956
1173
|
Tutorial Examples:
|
|
957
1174
|
- `Custom Operators (Custom-based) - Defining Custom Operator of aicpu Type
|
|
958
|
-
<https://mindspore.cn/tutorials/experts/en/r2.
|
|
1175
|
+
<https://mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html#
|
|
959
1176
|
defining-custom-operator-of-aicpu-type>`_
|
|
960
1177
|
"""
|
|
961
1178
|
param_list = [name, param_type, value_type, default_value]
|
|
@@ -981,7 +1198,7 @@ class CustomRegOp(RegOp):
|
|
|
981
1198
|
|
|
982
1199
|
Tutorial Examples:
|
|
983
1200
|
- `Custom Operators (Custom-based) - Defining Custom Operator of aicpu Type
|
|
984
|
-
<https://mindspore.cn/tutorials/experts/en/r2.
|
|
1201
|
+
<https://mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html#
|
|
985
1202
|
defining-custom-operator-of-aicpu-type>`_
|
|
986
1203
|
"""
|
|
987
1204
|
if target is not None:
|
|
@@ -996,7 +1213,7 @@ class CustomRegOp(RegOp):
|
|
|
996
1213
|
|
|
997
1214
|
Tutorial Examples:
|
|
998
1215
|
- `Custom Operators (Custom-based) - Defining Custom Operator of aicpu Type
|
|
999
|
-
<https://mindspore.cn/tutorials/experts/en/r2.
|
|
1216
|
+
<https://mindspore.cn/tutorials/experts/en/r2.2/operation/op_custom.html#
|
|
1000
1217
|
defining-custom-operator-of-aicpu-type>`_
|
|
1001
1218
|
"""
|
|
1002
1219
|
op_info = {}
|
|
@@ -1004,6 +1221,8 @@ class CustomRegOp(RegOp):
|
|
|
1004
1221
|
if isinstance(k, str) and k.endswith('_'):
|
|
1005
1222
|
k = k.rstrip('_')
|
|
1006
1223
|
op_info[k] = v
|
|
1224
|
+
if _get_reg_info_attr(op_info, "cust_aicpu"):
|
|
1225
|
+
_CustomInstaller(op_info).run()
|
|
1007
1226
|
return op_info
|
|
1008
1227
|
|
|
1009
1228
|
|
|
@@ -21,7 +21,7 @@ A collection of operators to build neural networks or to compute functions.
|
|
|
21
21
|
|
|
22
22
|
from ._embedding_cache_ops import (CacheSwapTable, UpdateCache, MapCacheIdx, SubAndFilter,
|
|
23
23
|
MapUniform, DynamicAssign, PadAndShift)
|
|
24
|
-
from ._inner_ops import (MatmulDDS, DSDMatmul, Cummin, ExtractImagePatches)
|
|
24
|
+
from ._inner_ops import (MatmulDDS, DSDMatmul, Cummin, ExtractImagePatches, SelectView, CopyWithSlice)
|
|
25
25
|
from ._quant_ops import *
|
|
26
26
|
from ._thor_ops import (CusBatchMatMul, CusCholeskyTrsm, CusFusedAbsMax1, CusImg2Col, CusMatMulCubeDenseLeft,
|
|
27
27
|
CusMatMulCubeFraczRightMul, CusMatMulCube, CusMatrixCombine, CusTranspose02314,
|
|
@@ -29,20 +29,20 @@ from ._thor_ops import (CusBatchMatMul, CusCholeskyTrsm, CusFusedAbsMax1, CusImg
|
|
|
29
29
|
LoadIm2Col, UpdateThorGradient, CholeskyTrsm,
|
|
30
30
|
DetTriangle, ProdForceSeA)
|
|
31
31
|
from ._ms_kernel import (ms_kernel, kernel)
|
|
32
|
-
from .array_ops import (ArgMaxWithValue, ArgMinWithValue, Argmax, Argmin, BatchToSpace,
|
|
32
|
+
from .array_ops import (ArgMaxWithValue, ArgMinWithValue, Argmax, Argmin, BatchToSpace,
|
|
33
33
|
BatchToSpaceNDV2, BroadcastTo, Cast, Coalesce, Concat, Cummax, DType, DepthToSpace, Diag,
|
|
34
|
-
DiagPart,
|
|
35
|
-
Eye, Fill, Gather, GatherD, GatherNd,
|
|
34
|
+
DiagPart, EditDistance, EmbeddingLookup, ExpandDims, ExtractVolumePatches,
|
|
35
|
+
Eye, Fill, Gather, GatherD, GatherNd, Identity, Im2Col, InvertPermutation,
|
|
36
36
|
LowerBound, Lstsq, MaskedFill, MaskedSelect, Meshgrid, Mvlgamma, Ones, OnesLike,
|
|
37
|
-
|
|
38
|
-
ReverseSequence, ReverseV2, Rint,
|
|
37
|
+
Padding, ParallelConcat, PopulationCount, Range, Rank, Reshape, ResizeNearestNeighbor,
|
|
38
|
+
ReverseSequence, ReverseV2, Rint, ScalarToTensor, ScatterAdd,
|
|
39
39
|
ScatterDiv, ScatterMax, ScatterMin, ScatterMul, ScatterNd, ScatterNdAdd, ScatterNdDiv,
|
|
40
|
-
ScatterNdMax, ScatterNdMin, ScatterNdSub, ScatterNdUpdate,
|
|
40
|
+
ScatterNdMax, ScatterNdMin, ScatterNdSub, ScatterNdUpdate, ScatterSub,
|
|
41
41
|
ScatterUpdate, SearchSorted, Select, Shape, Size, Slice, Sort, SpaceToBatch, SpaceToBatchND,
|
|
42
42
|
SpaceToDepth, SparseGatherV2, Split, SplitV, Squeeze, Stack, StridedSlice, TensorScatterAdd,
|
|
43
43
|
TensorScatterDiv, TensorScatterMax, TensorScatterMin, TensorScatterMul, TensorScatterSub,
|
|
44
44
|
TensorScatterUpdate, TensorShape, Tile, TopK, TransShape, Transpose, TupleToArray, Unique,
|
|
45
|
-
UniqueWithPad,
|
|
45
|
+
UniqueWithPad, UnsortedSegmentMax, UnsortedSegmentMin, UnsortedSegmentProd,
|
|
46
46
|
UnsortedSegmentSum, Unstack, UpperBound, Zeros, ZerosLike, AffineGrid, Bincount, CheckNumerics,
|
|
47
47
|
HammingWindow, IdentityN, IndexFill, LeftShift, ListDiff, LogSpace, MatrixBandPart,
|
|
48
48
|
MatrixDiagPartV3, MatrixDiagV3, MatrixSetDiagV3, NonZero, Expand, Col2Im, ConjugateTranspose,
|
|
@@ -69,7 +69,7 @@ from .inner_ops import (ScalarCast, Randperm, NoRepeatNGram, LambApplyOptimizerA
|
|
|
69
69
|
from .linalg_ops import (Svd, Geqrf)
|
|
70
70
|
from .math_ops import (Abs, ACos, Asin, Asinh, AddN, AccumulateNV2, AssignAdd, AssignSub, Atan2, BatchMatMul,
|
|
71
71
|
BitwiseAnd, BitwiseOr, Ger, BitwiseXor, Inv, Invert, ApproximateEqual,
|
|
72
|
-
InplaceAdd, InplaceSub,
|
|
72
|
+
InplaceAdd, InplaceSub, InplaceUpdateV2,
|
|
73
73
|
ReduceMax, ReduceMin, ReduceMean, ReduceSum, ReduceAll, ReduceProd, CumProd, Cdist, ReduceAny,
|
|
74
74
|
Cos, Cross, Div, DivNoNan, Equal, EqualCount, Exp, Expm1, Erf, Erfc, Floor, FloorDiv, FloorMod,
|
|
75
75
|
Ceil, Acosh, Greater, GreaterEqual, Lerp, Less, LessEqual, Log, Log1p, LogicalAnd, Mod,
|
|
@@ -79,7 +79,7 @@ from .math_ops import (Abs, ACos, Asin, Asinh, AddN, AccumulateNV2, AssignAdd, A
|
|
|
79
79
|
NPUGetFloatStatus, Pow, RealDiv, IsNan, IsInf, IsFinite, FloatStatus,
|
|
80
80
|
Reciprocal, CumSum, HistogramFixedWidth, SquaredDifference, Xdivy, Xlogy,
|
|
81
81
|
Sin, Sqrt, Rsqrt, BesselI0e, BesselI1e, TruncateDiv, TruncateMod, Addcdiv,
|
|
82
|
-
Addcmul, Square, Sub,
|
|
82
|
+
Addcmul, Square, Sub, Add, Sign, Round, SquareSumAll, Atan, Atanh, Cosh, Sinh, Eps,
|
|
83
83
|
Tan, MatrixInverse, IndexAdd, Erfinv, Conj, Real, Imag, Complex, Trunc, IsClose, LuSolve,
|
|
84
84
|
CholeskyInverse, BesselJ0, BesselJ1, BesselK0, BesselK0e, BesselK1, BesselK1e, BesselY0,
|
|
85
85
|
BesselY1, Bucketize, Cauchy, Cholesky, CholeskySolve, Betainc,
|
|
@@ -92,14 +92,14 @@ from .math_ops import (Abs, ACos, Asin, Asinh, AddN, AccumulateNV2, AssignAdd, A
|
|
|
92
92
|
from .nn_ops import (LSTM, SGD, Adam, AdamWeightDecay, FusedSparseAdam, FusedSparseLazyAdam, AdamNoUpdateParam,
|
|
93
93
|
ApplyMomentum, BatchNorm, BiasAdd, Conv2D, Conv3D, Conv2DTranspose, Conv3DTranspose,
|
|
94
94
|
DepthwiseConv2dNative,
|
|
95
|
-
|
|
96
|
-
InstanceNorm,
|
|
97
|
-
GeLU,
|
|
95
|
+
Dropout, Dropout2D, Dropout3D, Flatten,
|
|
96
|
+
InstanceNorm,
|
|
97
|
+
GeLU, FastGeLU, Elu, CeLU,
|
|
98
98
|
GetNext, L2Normalize, LayerNorm, L2Loss, CTCLoss, CTCLossV2, CTCLossV2Grad, CTCGreedyDecoder,
|
|
99
99
|
LogSoftmax, MaxPool3D, AvgPool3D,
|
|
100
100
|
MaxPool, DataFormatDimMap,
|
|
101
101
|
AvgPool, Conv2DBackpropInput, ComputeAccidentalHits,
|
|
102
|
-
|
|
102
|
+
MaxPoolWithArgmaxV2, OneHot, Pad, MirrorPad, Mish, PReLU, ReLU, ReLU6, ReLUV2,
|
|
103
103
|
HSwish, HSigmoid,
|
|
104
104
|
ResizeBilinear, Sigmoid, SeLU, HShrink, ApplyKerasMomentum,
|
|
105
105
|
SigmoidCrossEntropyWithLogits, NLLLoss, BCEWithLogitsLoss,
|
|
@@ -115,13 +115,13 @@ from .nn_ops import (LSTM, SGD, Adam, AdamWeightDecay, FusedSparseAdam, FusedSpa
|
|
|
115
115
|
ApplyAdamWithAmsgrad, ApplyAdamWithAmsgradV2, AdaptiveAvgPool3D, AdaptiveMaxPool2D,
|
|
116
116
|
AdaptiveMaxPool3D,
|
|
117
117
|
GridSampler3D, MaxPool3DWithArgmax, MaxUnpool2D, NuclearNorm, NthElement, MultilabelMarginLoss,
|
|
118
|
-
Dilation2D, DataFormatVecPermute, DeformableOffsets, FractionalAvgPool,
|
|
118
|
+
Dilation2D, DataFormatVecPermute, DeformableOffsets, Dense, FractionalAvgPool,
|
|
119
119
|
FractionalMaxPool, FractionalMaxPool3DWithFixedKsize, FractionalMaxPoolWithFixedKsize,
|
|
120
120
|
GridSampler2D, TripletMarginLoss, UpsampleNearest3D, UpsampleTrilinear3D, PadV3, ChannelShuffle,
|
|
121
|
-
GLU, MaxUnpool3D, Pdist)
|
|
121
|
+
GLU, MaxUnpool3D, Pdist, RmsNorm, PagedAttention, PagedAttentionMask, ReshapeAndCache)
|
|
122
122
|
from .other_ops import (Assign, IOU, BoundingBoxDecode, BoundingBoxEncode,
|
|
123
123
|
ConfusionMatrix, UpdateState, Load, StopGradient,
|
|
124
|
-
CheckValid, Partial, Depend,
|
|
124
|
+
CheckValid, Partial, Depend, Push, Pull, PyExecute, PyFunc, _DynamicLossScale,
|
|
125
125
|
SampleDistortedBoundingBoxV2)
|
|
126
126
|
from .random_ops import (RandomChoiceWithMask, StandardNormal, Gamma, RandomGamma, Poisson, UniformInt, UniformReal,
|
|
127
127
|
RandomCategorical, StandardLaplace, Multinomial, UniformCandidateSampler,
|
|
@@ -129,8 +129,13 @@ from .random_ops import (RandomChoiceWithMask, StandardNormal, Gamma, RandomGamm
|
|
|
129
129
|
ParameterizedTruncatedNormal, RandomPoisson, MultinomialWithReplacement, RandomShuffle,
|
|
130
130
|
RandpermV2)
|
|
131
131
|
from .rl_ops import (BufferAppend, BufferGetItem, BufferSample)
|
|
132
|
-
from .sparse_ops import (
|
|
132
|
+
from .sparse_ops import (
|
|
133
|
+
SparseToDense, SparseTensorDenseMatmul, SparseTensorDenseAdd, SparseSlice)
|
|
133
134
|
from .spectral_ops import (BartlettWindow, BlackmanWindow)
|
|
135
|
+
from ..deprecated import (identity, DropoutDoMask, MaxPoolWithArgmax,
|
|
136
|
+
BNTrainingReduce, BNTrainingUpdate, DropoutGenMask, Gelu, FastGelu,
|
|
137
|
+
TensorAdd, InplaceUpdate, ScatterNonAliasingAdd,
|
|
138
|
+
BatchToSpaceND, Unpack, GatherV2, DynamicShape, ScalarToArray, Pack)
|
|
134
139
|
|
|
135
140
|
__all__ = [
|
|
136
141
|
'HSVToRGB',
|
|
@@ -616,7 +621,10 @@ __all__ = [
|
|
|
616
621
|
"CumulativeLogsumexp",
|
|
617
622
|
"DataFormatVecPermute",
|
|
618
623
|
"DeformableOffsets",
|
|
624
|
+
"Dense",
|
|
619
625
|
"ExtractImagePatches",
|
|
626
|
+
"SelectView",
|
|
627
|
+
"CopyWithSlice",
|
|
620
628
|
"FillDiagonal",
|
|
621
629
|
"Fills",
|
|
622
630
|
"Gcd",
|
|
@@ -683,7 +691,11 @@ __all__ = [
|
|
|
683
691
|
"IndexPut",
|
|
684
692
|
"MaskedScatter",
|
|
685
693
|
"Ormqr",
|
|
686
|
-
"RandpermV2"
|
|
694
|
+
"RandpermV2",
|
|
695
|
+
"RmsNorm",
|
|
696
|
+
"PagedAttention",
|
|
697
|
+
"PagedAttentionMask",
|
|
698
|
+
"ReshapeAndCache"
|
|
687
699
|
]
|
|
688
700
|
|
|
689
701
|
__custom__ = [
|