mindspore 2.4.10__cp39-cp39-win_amd64.whl → 2.6.0rc1__cp39-cp39-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/__init__.py +13 -6
- 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/_check_jit_forbidden_api.py +3 -0
- mindspore/_checkparam.py +3 -38
- mindspore/_deprecated/__init__.py +17 -0
- mindspore/_deprecated/jit.py +198 -0
- mindspore/_extends/builtin_operations.py +1 -1
- mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
- mindspore/_extends/parse/__init__.py +6 -7
- mindspore/_extends/parse/compile_config.py +83 -0
- mindspore/_extends/parse/deprecated/__init__.py +0 -0
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +394 -0
- mindspore/_extends/parse/jit_fallback_modules/__init__.py +0 -0
- mindspore/_extends/parse/jit_fallback_modules/check_utils.py +123 -0
- mindspore/_extends/parse/jit_fallback_modules/third_party_modules.py +50 -0
- mindspore/_extends/parse/parser.py +46 -197
- mindspore/_extends/parse/resources.py +1 -5
- mindspore/_extends/parse/standard_method.py +217 -98
- mindspore/_extends/pijit/__init__.py +2 -2
- mindspore/_extends/pijit/pijit_func_white_list.py +17 -12
- mindspore/_extends/pijit/tensor_func_list.py +27 -0
- mindspore/_extends/utils.py +1 -1
- mindspore/amp.py +11 -5
- 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/__init__.py +2 -2
- mindspore/boost/base.py +3 -7
- mindspore/boost/boost_cell_wrapper.py +138 -43
- mindspore/common/__init__.py +6 -3
- mindspore/common/_grad_function.py +56 -0
- mindspore/common/_pijit_context.py +14 -5
- mindspore/common/_register_for_tensor.py +1 -2
- mindspore/common/_stub_tensor.py +30 -14
- mindspore/common/_tensor_cpp_method.py +17 -0
- mindspore/common/_tensor_docs.py +4760 -0
- mindspore/common/api.py +435 -371
- mindspore/common/auto_dynamic_shape.py +41 -44
- mindspore/common/dtype.py +39 -36
- mindspore/common/dump.py +9 -6
- mindspore/common/file_system.py +9 -1
- mindspore/common/generator.py +2 -0
- mindspore/common/hook_handle.py +6 -2
- mindspore/common/initializer.py +13 -10
- mindspore/common/jit_begin_end.py +94 -0
- mindspore/common/jit_config.py +6 -1
- mindspore/common/jit_context.py +76 -0
- mindspore/common/jit_trace.py +378 -0
- mindspore/common/lazy_inline.py +9 -3
- mindspore/common/mindir_util.py +10 -2
- mindspore/common/mutable.py +5 -4
- mindspore/common/parameter.py +135 -52
- mindspore/common/seed.py +2 -2
- mindspore/common/sparse_tensor.py +23 -17
- mindspore/common/tensor.py +951 -1992
- mindspore/communication/__init__.py +7 -5
- mindspore/communication/_comm_helper.py +52 -2
- mindspore/communication/comm_func.py +240 -181
- mindspore/communication/management.py +95 -26
- mindspore/context.py +314 -566
- mindspore/dataset/__init__.py +65 -37
- mindspore/dataset/audio/__init__.py +2 -8
- mindspore/dataset/audio/transforms.py +3 -17
- mindspore/dataset/callback/ds_callback.py +2 -1
- mindspore/dataset/core/config.py +87 -6
- mindspore/dataset/engine/cache_admin.py +3 -3
- mindspore/dataset/engine/cache_client.py +6 -5
- mindspore/dataset/engine/datasets.py +292 -267
- mindspore/dataset/engine/datasets_audio.py +22 -8
- mindspore/dataset/engine/datasets_standard_format.py +46 -27
- mindspore/dataset/engine/datasets_text.py +78 -48
- mindspore/dataset/engine/datasets_user_defined.py +182 -116
- mindspore/dataset/engine/datasets_vision.py +120 -44
- mindspore/dataset/engine/iterators.py +283 -63
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +1 -1
- mindspore/dataset/engine/obs/util.py +8 -0
- mindspore/dataset/engine/queue.py +40 -0
- mindspore/dataset/engine/samplers.py +289 -43
- mindspore/dataset/engine/serializer_deserializer.py +3 -2
- mindspore/dataset/engine/validators.py +53 -11
- mindspore/dataset/text/__init__.py +7 -6
- mindspore/dataset/text/transforms.py +6 -5
- mindspore/dataset/text/utils.py +3 -3
- mindspore/dataset/transforms/__init__.py +0 -9
- mindspore/dataset/transforms/py_transforms_util.py +17 -0
- mindspore/dataset/transforms/transforms.py +31 -14
- mindspore/dataset/utils/browse_dataset.py +1 -1
- mindspore/dataset/vision/__init__.py +2 -9
- mindspore/dataset/vision/transforms.py +202 -158
- mindspore/dataset/vision/utils.py +7 -5
- mindspore/dataset/vision/validators.py +1 -2
- mindspore/device_context/__init__.py +21 -0
- mindspore/device_context/ascend/__init__.py +25 -0
- mindspore/device_context/ascend/device.py +72 -0
- mindspore/device_context/ascend/op_debug.py +153 -0
- mindspore/device_context/ascend/op_precision.py +193 -0
- mindspore/device_context/ascend/op_tuning.py +123 -0
- mindspore/{ops_generate/gen_constants.py → device_context/cpu/__init__.py} +6 -17
- mindspore/device_context/cpu/device.py +62 -0
- mindspore/device_context/cpu/op_tuning.py +43 -0
- mindspore/device_context/gpu/__init__.py +21 -0
- mindspore/device_context/gpu/device.py +70 -0
- mindspore/device_context/gpu/op_precision.py +67 -0
- mindspore/device_context/gpu/op_tuning.py +175 -0
- mindspore/device_manager.py +170 -0
- mindspore/experimental/es/embedding_service.py +35 -27
- mindspore/experimental/llm_boost/__init__.py +1 -0
- mindspore/experimental/llm_boost/ascend_native/__init__.py +22 -0
- mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +211 -0
- mindspore/experimental/llm_boost/ascend_native/llm_boost.py +52 -0
- mindspore/experimental/llm_boost/atb/boost_base.py +2 -3
- mindspore/experimental/llm_boost/atb/llama_boost.py +6 -1
- mindspore/experimental/llm_boost/register.py +1 -0
- mindspore/experimental/map_parameter.py +4 -4
- mindspore/experimental/optim/adadelta.py +6 -6
- mindspore/experimental/optim/adagrad.py +4 -4
- mindspore/experimental/optim/adam.py +7 -0
- mindspore/experimental/optim/adamax.py +4 -4
- mindspore/experimental/optim/adamw.py +4 -0
- mindspore/experimental/optim/asgd.py +1 -1
- mindspore/experimental/optim/lr_scheduler.py +73 -46
- mindspore/experimental/optim/radam.py +34 -31
- mindspore/experimental/optim/rprop.py +1 -1
- mindspore/experimental/optim/sgd.py +1 -1
- mindspore/hal/contiguous_tensors_handle.py +6 -10
- mindspore/hal/device.py +55 -53
- mindspore/hal/event.py +52 -52
- mindspore/hal/memory.py +157 -117
- mindspore/hal/stream.py +150 -109
- mindspore/include/api/context.h +0 -1
- mindspore/include/dataset/constants.h +7 -4
- mindspore/include/dataset/execute.h +2 -2
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +50 -0
- mindspore/mindrecord/__init__.py +21 -8
- mindspore/mindrecord/config.py +17 -316
- mindspore/mindrecord/filereader.py +1 -9
- mindspore/mindrecord/filewriter.py +5 -15
- mindspore/mindrecord/mindpage.py +1 -9
- mindspore/mindspore_backend_common.dll +0 -0
- mindspore/mindspore_backend_manager.dll +0 -0
- mindspore/mindspore_common.dll +0 -0
- mindspore/mindspore_core.dll +0 -0
- mindspore/mindspore_dump.dll +0 -0
- mindspore/mindspore_frontend.dll +0 -0
- mindspore/mindspore_memory_pool.dll +0 -0
- mindspore/mindspore_ms_backend.dll +0 -0
- mindspore/mindspore_ops.dll +0 -0
- mindspore/{mindspore_backend.dll → mindspore_ops_host.dll} +0 -0
- mindspore/mindspore_ops_kernel_common.dll +0 -0
- mindspore/mindspore_profiler.dll +0 -0
- mindspore/mindspore_pyboost.dll +0 -0
- mindspore/mindspore_pynative.dll +0 -0
- mindspore/mindspore_res_manager.dll +0 -0
- mindspore/mindspore_runtime_pipeline.dll +0 -0
- mindspore/mint/__init__.py +796 -759
- mindspore/mint/distributed/__init__.py +70 -4
- mindspore/mint/distributed/distributed.py +2679 -44
- mindspore/mint/linalg/__init__.py +8 -0
- mindspore/mint/nn/__init__.py +743 -22
- mindspore/mint/nn/functional.py +716 -23
- mindspore/mint/nn/layer/__init__.py +21 -4
- mindspore/mint/nn/layer/_functions.py +334 -0
- mindspore/mint/nn/layer/activation.py +276 -1
- mindspore/mint/nn/layer/basic.py +123 -0
- mindspore/mint/nn/layer/conv.py +921 -0
- mindspore/mint/nn/layer/normalization.py +223 -28
- mindspore/mint/nn/layer/padding.py +797 -0
- mindspore/mint/nn/layer/pooling.py +235 -0
- mindspore/mint/optim/__init__.py +3 -1
- mindspore/mint/optim/adam.py +223 -0
- mindspore/mint/optim/adamw.py +26 -19
- mindspore/mint/optim/sgd.py +171 -0
- mindspore/mint/special/__init__.py +2 -1
- mindspore/multiprocessing/__init__.py +5 -0
- mindspore/nn/__init__.py +4 -1
- mindspore/nn/cell.py +1370 -189
- mindspore/nn/dynamic_lr.py +2 -1
- mindspore/nn/layer/activation.py +29 -27
- mindspore/nn/layer/basic.py +51 -35
- mindspore/nn/layer/channel_shuffle.py +3 -3
- mindspore/nn/layer/container.py +1 -1
- mindspore/nn/layer/conv.py +22 -17
- mindspore/nn/layer/embedding.py +12 -11
- mindspore/nn/layer/normalization.py +56 -49
- mindspore/nn/layer/padding.py +4 -3
- mindspore/nn/layer/pooling.py +120 -42
- mindspore/nn/layer/rnn_cells.py +1 -1
- mindspore/nn/layer/rnns.py +2 -1
- mindspore/nn/layer/timedistributed.py +5 -5
- mindspore/nn/layer/transformer.py +59 -36
- mindspore/nn/learning_rate_schedule.py +8 -4
- mindspore/nn/loss/loss.py +58 -55
- mindspore/nn/optim/ada_grad.py +7 -5
- mindspore/nn/optim/adadelta.py +11 -9
- mindspore/nn/optim/adafactor.py +1 -1
- mindspore/nn/optim/adam.py +17 -13
- mindspore/nn/optim/adamax.py +8 -7
- mindspore/nn/optim/adasum.py +5 -5
- mindspore/nn/optim/asgd.py +1 -1
- mindspore/nn/optim/ftrl.py +11 -9
- mindspore/nn/optim/lamb.py +1 -1
- mindspore/nn/optim/lars.py +1 -4
- mindspore/nn/optim/lazyadam.py +12 -10
- mindspore/nn/optim/momentum.py +7 -6
- mindspore/nn/optim/optimizer.py +3 -3
- mindspore/nn/optim/proximal_ada_grad.py +12 -10
- mindspore/nn/optim/rmsprop.py +13 -12
- mindspore/nn/optim/rprop.py +11 -9
- mindspore/nn/optim/sgd.py +9 -6
- mindspore/nn/optim/tft_wrapper.py +5 -2
- mindspore/nn/optim/thor.py +2 -1
- mindspore/nn/probability/bijector/bijector.py +17 -11
- mindspore/nn/probability/bijector/gumbel_cdf.py +5 -5
- mindspore/nn/probability/bijector/invert.py +2 -2
- mindspore/nn/probability/bijector/scalar_affine.py +3 -3
- mindspore/nn/probability/bijector/softplus.py +3 -2
- mindspore/nn/probability/distribution/beta.py +3 -3
- mindspore/nn/probability/distribution/categorical.py +1 -1
- mindspore/nn/probability/distribution/cauchy.py +4 -2
- mindspore/nn/probability/distribution/exponential.py +6 -7
- mindspore/nn/probability/distribution/gamma.py +2 -2
- mindspore/nn/probability/distribution/gumbel.py +2 -2
- mindspore/nn/probability/distribution/half_normal.py +5 -3
- mindspore/nn/probability/distribution/logistic.py +5 -3
- mindspore/nn/probability/distribution/poisson.py +1 -1
- mindspore/nn/probability/distribution/uniform.py +5 -3
- mindspore/nn/reinforcement/_tensors_queue.py +1 -1
- mindspore/nn/reinforcement/tensor_array.py +1 -1
- mindspore/nn/utils/init.py +13 -11
- mindspore/nn/wrap/__init__.py +6 -6
- mindspore/nn/wrap/cell_wrapper.py +181 -122
- mindspore/nn/wrap/grad_reducer.py +45 -36
- mindspore/nn/wrap/loss_scale.py +6 -7
- mindspore/numpy/array_creations.py +63 -65
- mindspore/numpy/array_ops.py +149 -144
- mindspore/numpy/logic_ops.py +41 -42
- mindspore/numpy/math_ops.py +365 -363
- mindspore/numpy/utils.py +17 -18
- mindspore/numpy/utils_const.py +5 -6
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +5 -3
- mindspore/ops/_grad_experimental/grad_comm_ops.py +112 -16
- mindspore/ops/_grad_experimental/grad_debug_ops.py +14 -2
- mindspore/ops/_grad_experimental/grad_inner_ops.py +9 -0
- mindspore/ops/_grad_experimental/grad_math_ops.py +2 -1
- mindspore/ops/_grad_experimental/taylor_rule.py +29 -0
- mindspore/ops/_op_impl/cpu/__init__.py +1 -0
- mindspore/ops/_op_impl/cpu/raise_op.py +28 -0
- mindspore/ops/_register_for_op.py +0 -11
- mindspore/{ops_generate → ops/_utils}/arg_dtype_cast.py +123 -4
- mindspore/{ops_generate → ops/_utils}/arg_handler.py +3 -65
- mindspore/ops/_vmap/vmap_array_ops.py +27 -25
- mindspore/ops/_vmap/vmap_base.py +0 -2
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +21 -14
- mindspore/ops/_vmap/vmap_math_ops.py +15 -16
- mindspore/ops/_vmap/vmap_nn_ops.py +29 -42
- mindspore/ops/auto_generate/__init__.py +4 -3
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +236 -46
- mindspore/ops/auto_generate/gen_extend_func.py +764 -124
- mindspore/ops/auto_generate/gen_ops_def.py +4018 -2264
- mindspore/ops/auto_generate/gen_ops_prim.py +15463 -5037
- mindspore/ops/auto_generate/pyboost_inner_prim.py +221 -87
- mindspore/ops/composite/__init__.py +2 -1
- mindspore/ops/composite/base.py +20 -25
- mindspore/ops/composite/math_ops.py +6 -16
- mindspore/ops/composite/multitype_ops/__init__.py +5 -2
- mindspore/ops/composite/multitype_ops/_compile_utils.py +228 -30
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -2
- mindspore/ops/composite/multitype_ops/add_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_and_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_or_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_xor_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/div_impl.py +6 -4
- mindspore/ops/composite/multitype_ops/equal_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/getitem_impl.py +3 -2
- mindspore/ops/composite/multitype_ops/greater_equal_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/greater_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/in_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/invert_impl.py +50 -0
- mindspore/ops/composite/multitype_ops/left_shift_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/less_equal_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/less_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/logic_not_impl.py +3 -2
- mindspore/ops/composite/multitype_ops/logical_and_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/logical_or_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/mod_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/mul_impl.py +3 -2
- mindspore/ops/composite/multitype_ops/negative_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/not_equal_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/not_in_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +18 -0
- mindspore/ops/composite/multitype_ops/pow_impl.py +2 -30
- mindspore/ops/composite/multitype_ops/right_shift_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/sub_impl.py +2 -1
- mindspore/ops/function/__init__.py +40 -2
- mindspore/ops/function/_add_attr_func.py +58 -0
- mindspore/ops/function/array_func.py +2089 -2403
- mindspore/ops/function/clip_func.py +80 -23
- mindspore/ops/function/debug_func.py +57 -57
- mindspore/ops/function/grad/__init__.py +1 -0
- mindspore/ops/function/grad/grad_func.py +104 -71
- mindspore/ops/function/image_func.py +2 -2
- mindspore/ops/function/linalg_func.py +47 -78
- mindspore/ops/function/math_func.py +4501 -3802
- mindspore/ops/function/nn_func.py +1726 -620
- mindspore/ops/function/other_func.py +159 -1
- mindspore/ops/function/parameter_func.py +18 -84
- mindspore/ops/function/random_func.py +440 -387
- mindspore/ops/function/reshard_func.py +4 -70
- mindspore/ops/function/sparse_func.py +3 -3
- mindspore/ops/function/sparse_unary_func.py +6 -6
- mindspore/ops/function/spectral_func.py +25 -58
- mindspore/ops/function/vmap_func.py +24 -17
- mindspore/ops/functional.py +22 -7
- mindspore/ops/functional_overload.py +1440 -0
- mindspore/ops/op_info_register.py +32 -244
- mindspore/ops/operations/__init__.py +13 -7
- mindspore/ops/operations/_custom_ops_utils.py +247 -0
- mindspore/ops/operations/_embedding_cache_ops.py +4 -4
- mindspore/ops/operations/_grad_ops.py +2 -43
- mindspore/ops/operations/_infer_ops.py +2 -1
- mindspore/ops/operations/_inner_ops.py +43 -84
- mindspore/ops/operations/_ms_kernel.py +4 -10
- mindspore/ops/operations/_rl_inner_ops.py +1 -1
- mindspore/ops/operations/_scalar_ops.py +3 -2
- mindspore/ops/operations/_sequence_ops.py +1 -1
- mindspore/ops/operations/_tensor_array.py +1 -1
- mindspore/ops/operations/array_ops.py +81 -324
- mindspore/ops/operations/comm_ops.py +154 -108
- mindspore/ops/operations/custom_ops.py +232 -78
- mindspore/ops/operations/debug_ops.py +153 -59
- mindspore/ops/operations/inner_ops.py +7 -5
- mindspore/ops/operations/linalg_ops.py +1 -57
- mindspore/ops/operations/manually_defined/_inner.py +1 -1
- mindspore/ops/operations/manually_defined/ops_def.py +928 -180
- mindspore/ops/operations/math_ops.py +32 -234
- mindspore/ops/operations/nn_ops.py +210 -498
- mindspore/ops/operations/other_ops.py +62 -9
- mindspore/ops/operations/random_ops.py +13 -7
- mindspore/ops/operations/reshard_ops.py +1 -1
- mindspore/ops/operations/sparse_ops.py +2 -2
- mindspore/ops/primitive.py +66 -53
- mindspore/ops/tensor_method.py +1888 -0
- mindspore/ops_generate/__init__.py +0 -5
- mindspore/ops_generate/aclnn/__init__.py +0 -0
- mindspore/ops_generate/aclnn/aclnn_kernel_register_auto_cc_generator.py +135 -0
- mindspore/ops_generate/aclnn/gen_aclnn_implement.py +257 -0
- mindspore/ops_generate/api/__init__.py +0 -0
- mindspore/ops_generate/api/add_tensor_docs_generator.py +56 -0
- mindspore/ops_generate/api/cpp_create_prim_instance_helper_generator.py +105 -0
- mindspore/ops_generate/api/functional_map_cpp_generator.py +504 -0
- mindspore/ops_generate/api/functional_overload_py_generator.py +112 -0
- mindspore/ops_generate/api/functions_cc_generator.py +237 -0
- mindspore/ops_generate/api/gen_api.py +103 -0
- mindspore/ops_generate/api/op_api_proto.py +235 -0
- mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +461 -0
- mindspore/ops_generate/common/__init__.py +0 -0
- mindspore/ops_generate/common/base_generator.py +11 -0
- mindspore/ops_generate/common/gen_constants.py +91 -0
- mindspore/ops_generate/common/gen_utils.py +348 -0
- mindspore/ops_generate/common/op_proto.py +473 -0
- mindspore/ops_generate/common/template.py +523 -0
- mindspore/ops_generate/gen_ops.py +22 -1069
- mindspore/ops_generate/op_def/__init__.py +0 -0
- mindspore/ops_generate/op_def/gen_op_def.py +90 -0
- mindspore/ops_generate/op_def/lite_ops_cpp_generator.py +191 -0
- mindspore/ops_generate/op_def/ops_def_cc_generator.py +299 -0
- mindspore/ops_generate/op_def/ops_def_h_generator.py +74 -0
- mindspore/ops_generate/op_def/ops_name_h_generator.py +83 -0
- mindspore/ops_generate/op_def/ops_primitive_h_generator.py +125 -0
- mindspore/ops_generate/op_def_py/__init__.py +0 -0
- mindspore/ops_generate/op_def_py/gen_op_def_py.py +47 -0
- mindspore/ops_generate/op_def_py/op_def_py_generator.py +132 -0
- mindspore/ops_generate/op_def_py/op_prim_py_generator.py +489 -0
- mindspore/ops_generate/pyboost/__init__.py +0 -0
- mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +139 -0
- mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +93 -0
- mindspore/ops_generate/pyboost/gen_pyboost_func.py +175 -0
- mindspore/ops_generate/pyboost/op_template_parser.py +517 -0
- mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +407 -0
- mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +100 -0
- mindspore/ops_generate/pyboost/pyboost_functions_py_generator.py +148 -0
- mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +155 -0
- mindspore/ops_generate/pyboost/pyboost_inner_prim_generator.py +132 -0
- mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +272 -0
- mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +938 -0
- mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +357 -0
- mindspore/ops_generate/{pyboost_utils.py → pyboost/pyboost_utils.py} +179 -36
- mindspore/ops_generate/resources/__init__.py +0 -0
- mindspore/ops_generate/resources/resource_list.py +30 -0
- mindspore/ops_generate/resources/resource_loader.py +36 -0
- mindspore/ops_generate/resources/resource_manager.py +64 -0
- mindspore/ops_generate/resources/yaml_loader.py +88 -0
- mindspore/ops_generate/tensor_py_cc_generator.py +122 -0
- mindspore/parallel/__init__.py +7 -3
- mindspore/parallel/_auto_parallel_context.py +152 -34
- mindspore/parallel/_cell_wrapper.py +130 -15
- mindspore/parallel/_parallel_serialization.py +107 -5
- mindspore/parallel/_ps_context.py +1 -1
- mindspore/parallel/_recovery_context.py +7 -2
- mindspore/parallel/_tensor.py +142 -18
- mindspore/parallel/_utils.py +199 -23
- mindspore/parallel/algo_parameter_config.py +4 -4
- mindspore/parallel/auto_parallel.py +732 -0
- mindspore/parallel/checkpoint_convert.py +159 -0
- mindspore/parallel/checkpoint_transform.py +698 -35
- mindspore/parallel/cluster/process_entity/_api.py +276 -50
- mindspore/parallel/cluster/process_entity/_utils.py +41 -6
- mindspore/parallel/cluster/run.py +21 -4
- mindspore/parallel/function/__init__.py +24 -0
- mindspore/parallel/function/reshard_func.py +259 -0
- mindspore/parallel/nn/__init__.py +25 -0
- mindspore/parallel/nn/parallel_cell_wrapper.py +263 -0
- mindspore/parallel/nn/parallel_grad_reducer.py +169 -0
- mindspore/parallel/parameter_broadcast.py +25 -14
- mindspore/parallel/shard.py +137 -58
- mindspore/parallel/transform_safetensors.py +363 -305
- mindspore/profiler/__init__.py +22 -5
- mindspore/profiler/analysis/__init__.py +0 -0
- mindspore/profiler/analysis/parser/__init__.py +0 -0
- mindspore/profiler/analysis/parser/ascend_cann_parser.py +170 -0
- mindspore/profiler/analysis/parser/base_parser.py +158 -0
- mindspore/profiler/analysis/parser/framework_cann_relation_parser.py +45 -0
- mindspore/profiler/analysis/parser/ms_framework_parser.py +142 -0
- mindspore/profiler/analysis/parser/ms_minddata_parser.py +145 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +264 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +40 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +106 -0
- mindspore/profiler/analysis/parser/timeline_creator/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_creator/base_timeline_creator.py +44 -0
- mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +90 -0
- mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +76 -0
- mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +103 -0
- mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +134 -0
- mindspore/profiler/analysis/parser/timeline_event/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_event/base_event.py +233 -0
- mindspore/profiler/analysis/parser/timeline_event/cpu_op_event.py +47 -0
- mindspore/profiler/analysis/parser/timeline_event/flow_event.py +36 -0
- mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +415 -0
- mindspore/profiler/analysis/parser/timeline_event/msprof_event.py +73 -0
- mindspore/profiler/analysis/parser/timeline_event/scope_layer_event.py +53 -0
- mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +146 -0
- mindspore/profiler/analysis/task_manager.py +131 -0
- mindspore/profiler/analysis/time_converter.py +84 -0
- mindspore/profiler/analysis/viewer/__init__.py +0 -0
- mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +372 -0
- mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +87 -0
- mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +250 -0
- mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +320 -0
- mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +327 -0
- mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +376 -0
- mindspore/profiler/analysis/viewer/ascend_timeline_viewer.py +58 -0
- mindspore/profiler/analysis/viewer/base_viewer.py +26 -0
- mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +96 -0
- mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +581 -0
- mindspore/profiler/analysis/work_flow.py +73 -0
- mindspore/profiler/common/ascend_msprof_exporter.py +139 -0
- mindspore/profiler/common/command_executor.py +90 -0
- mindspore/profiler/common/constant.py +186 -3
- mindspore/profiler/common/file_manager.py +208 -0
- mindspore/profiler/common/log.py +130 -0
- mindspore/profiler/common/msprof_cmd_tool.py +221 -0
- mindspore/profiler/common/path_manager.py +395 -0
- mindspore/profiler/common/process_bar.py +168 -0
- mindspore/profiler/common/process_pool.py +9 -3
- mindspore/profiler/common/profiler_context.py +500 -0
- mindspore/profiler/common/profiler_info.py +304 -0
- mindspore/profiler/common/profiler_meta_data.py +74 -0
- mindspore/profiler/common/profiler_output_path.py +284 -0
- mindspore/profiler/common/profiler_parameters.py +251 -0
- mindspore/profiler/common/profiler_path_manager.py +179 -0
- mindspore/profiler/common/record_function.py +76 -0
- mindspore/profiler/common/tlv_decoder.py +76 -0
- mindspore/profiler/common/util.py +75 -2
- mindspore/profiler/dynamic_profiler.py +341 -75
- mindspore/profiler/envprofiler.py +163 -0
- mindspore/profiler/experimental_config.py +197 -0
- mindspore/profiler/mstx.py +242 -0
- mindspore/profiler/platform/__init__.py +21 -0
- mindspore/profiler/platform/base_profiler.py +40 -0
- mindspore/profiler/platform/cpu_profiler.py +124 -0
- mindspore/profiler/platform/gpu_profiler.py +74 -0
- mindspore/profiler/platform/npu_profiler.py +335 -0
- mindspore/profiler/profiler.py +1073 -90
- mindspore/profiler/profiler_action_controller.py +187 -0
- mindspore/profiler/profiler_interface.py +118 -0
- mindspore/profiler/schedule.py +243 -0
- mindspore/rewrite/api/node.py +15 -13
- mindspore/rewrite/api/symbol_tree.py +2 -3
- mindspore/run_check/_check_version.py +27 -20
- mindspore/run_check/run_check.py +1 -1
- mindspore/runtime/__init__.py +37 -0
- mindspore/runtime/device.py +27 -0
- mindspore/runtime/event.py +209 -0
- mindspore/runtime/executor.py +177 -0
- mindspore/runtime/memory.py +409 -0
- mindspore/runtime/stream.py +460 -0
- mindspore/runtime/thread_bind_core.py +401 -0
- mindspore/safeguard/rewrite_obfuscation.py +12 -9
- mindspore/swresample-4.dll +0 -0
- mindspore/swscale-6.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/__init__.py +8 -8
- mindspore/train/_utils.py +88 -25
- mindspore/train/amp.py +9 -5
- mindspore/train/callback/__init__.py +2 -2
- mindspore/train/callback/_callback.py +2 -16
- mindspore/train/callback/_checkpoint.py +53 -55
- mindspore/train/callback/_cluster_monitor.py +14 -18
- mindspore/train/callback/_early_stop.py +1 -1
- mindspore/train/callback/_flops_collector.py +103 -68
- mindspore/train/callback/_history.py +8 -5
- mindspore/train/callback/_lambda_callback.py +2 -2
- mindspore/train/callback/_landscape.py +0 -3
- mindspore/train/callback/_loss_monitor.py +2 -1
- mindspore/train/callback/_on_request_exit.py +6 -5
- mindspore/train/callback/_reduce_lr_on_plateau.py +11 -6
- mindspore/train/callback/_summary_collector.py +52 -19
- mindspore/train/callback/_time_monitor.py +2 -1
- mindspore/train/callback/{_tft_register.py → _train_fault_tolerance.py} +204 -107
- mindspore/train/data_sink.py +25 -2
- mindspore/train/dataset_helper.py +15 -16
- mindspore/train/loss_scale_manager.py +8 -7
- mindspore/train/metrics/accuracy.py +3 -3
- mindspore/train/metrics/confusion_matrix.py +9 -9
- mindspore/train/metrics/error.py +3 -3
- mindspore/train/metrics/hausdorff_distance.py +4 -4
- mindspore/train/metrics/mean_surface_distance.py +3 -3
- mindspore/train/metrics/metric.py +0 -12
- mindspore/train/metrics/occlusion_sensitivity.py +4 -2
- mindspore/train/metrics/precision.py +11 -10
- mindspore/train/metrics/recall.py +9 -9
- mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
- mindspore/train/mind_ir_pb2.py +174 -46
- mindspore/train/model.py +184 -113
- mindspore/train/serialization.py +622 -978
- mindspore/train/summary/_summary_adapter.py +2 -2
- mindspore/train/summary/summary_record.py +2 -3
- mindspore/train/train_thor/model_thor.py +1 -1
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +6 -3
- mindspore/utils/dryrun.py +140 -0
- mindspore/utils/hooks.py +81 -0
- mindspore/utils/runtime_execution_order_check.py +550 -0
- mindspore/utils/utils.py +138 -4
- mindspore/version.py +1 -1
- {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/METADATA +3 -3
- {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/RECORD +562 -393
- {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/entry_points.txt +1 -1
- mindspore/_install_custom.py +0 -43
- mindspore/common/_register_for_adapter.py +0 -74
- mindspore/common/_tensor_overload.py +0 -139
- mindspore/mindspore_np_dtype.dll +0 -0
- mindspore/ops/auto_generate/gen_arg_dtype_cast.py +0 -252
- mindspore/ops/auto_generate/gen_arg_handler.py +0 -197
- mindspore/ops/operations/_opaque_predicate_registry.py +0 -41
- mindspore/ops_generate/gen_aclnn_implement.py +0 -263
- mindspore/ops_generate/gen_ops_inner_prim.py +0 -131
- mindspore/ops_generate/gen_pyboost_func.py +0 -1052
- mindspore/ops_generate/gen_utils.py +0 -209
- mindspore/ops_generate/op_proto.py +0 -145
- mindspore/ops_generate/template.py +0 -261
- mindspore/profiler/envprofiling.py +0 -254
- mindspore/profiler/profiling.py +0 -1926
- {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/WHEEL +0 -0
- {mindspore-2.4.10.dist-info → mindspore-2.6.0rc1.dist-info}/top_level.txt +0 -0
mindspore/hal/device.py
CHANGED
|
@@ -120,20 +120,21 @@ def _check_device_id(fn):
|
|
|
120
120
|
|
|
121
121
|
def is_initialized(device_target):
|
|
122
122
|
"""
|
|
123
|
-
|
|
123
|
+
Return whether specified device is initialized, this api will be deprecated and removed in future versions.
|
|
124
124
|
|
|
125
125
|
Note:
|
|
126
|
-
MindSpore's
|
|
126
|
+
MindSpore's devices "CPU", "GPU" and "Ascend" will be initialized in the following scenarios:
|
|
127
127
|
|
|
128
|
-
- For distributed job,
|
|
129
|
-
- For standalone job,
|
|
128
|
+
- For distributed job, device will be initialized after `mindspore.communication.init` method is called.
|
|
129
|
+
- For standalone job, device will be initialized after running
|
|
130
130
|
the first operator or calling creating stream/event interfaces.
|
|
131
131
|
|
|
132
132
|
Args:
|
|
133
|
-
device_target (str): The device
|
|
133
|
+
device_target (str): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
134
|
+
``"Ascend"`` .
|
|
134
135
|
|
|
135
136
|
Returns:
|
|
136
|
-
|
|
137
|
+
bool
|
|
137
138
|
|
|
138
139
|
Examples:
|
|
139
140
|
>>> import mindspore as ms
|
|
@@ -159,19 +160,21 @@ def is_initialized(device_target):
|
|
|
159
160
|
|
|
160
161
|
def is_available(device_target):
|
|
161
162
|
"""
|
|
162
|
-
|
|
163
|
-
|
|
163
|
+
Return whether specified device is available, this api will be deprecated and removed in future versions, please
|
|
164
|
+
use the api :func:`mindspore.device_context.cpu.is_available` , :func:`mindspore.device_context.gpu.is_available`,
|
|
165
|
+
:func:`mindspore.device_context.ascend.is_available` instead.
|
|
164
166
|
|
|
165
167
|
Args:
|
|
166
|
-
device_target (str): The device
|
|
168
|
+
device_target (str): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
169
|
+
``"Ascend"`` . Default ``None`` , represents the current device set by context.
|
|
167
170
|
|
|
168
171
|
Returns:
|
|
169
|
-
|
|
172
|
+
bool
|
|
170
173
|
|
|
171
174
|
Examples:
|
|
172
|
-
>>> import mindspore
|
|
173
|
-
>>> device_target =
|
|
174
|
-
>>> print(
|
|
175
|
+
>>> import mindspore
|
|
176
|
+
>>> device_target = mindspore.context.get_context("device_target")
|
|
177
|
+
>>> print(mindspore.hal.is_available(device_target))
|
|
175
178
|
True
|
|
176
179
|
"""
|
|
177
180
|
if device_target not in valid_targets:
|
|
@@ -192,22 +195,24 @@ def is_available(device_target):
|
|
|
192
195
|
@_check_inputs_validation
|
|
193
196
|
def device_count(device_target=None):
|
|
194
197
|
"""
|
|
195
|
-
|
|
198
|
+
Return device count of specified device, this api will be deprecated and removed in future versions, please use
|
|
199
|
+
the api :func:`mindspore.device_context.cpu.device_count` , :func:`mindspore.device_context.gpu.device_count`,
|
|
200
|
+
:func:`mindspore.device_context.ascend.device_count` instead.
|
|
196
201
|
|
|
197
202
|
Note:
|
|
198
|
-
|
|
199
|
-
For CPU backend, this method always returns 1.
|
|
203
|
+
For CPU device, this method always returns 1.
|
|
200
204
|
|
|
201
205
|
Args:
|
|
202
|
-
device_target (str, optional): The device
|
|
206
|
+
device_target (str, optional): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
207
|
+
``"Ascend"`` . Default ``None`` , represents the current device set by context.
|
|
203
208
|
|
|
204
209
|
Returns:
|
|
205
|
-
int
|
|
210
|
+
int
|
|
206
211
|
|
|
207
212
|
Examples:
|
|
208
|
-
>>> import mindspore
|
|
209
|
-
>>> device_target =
|
|
210
|
-
>>> print(
|
|
213
|
+
>>> import mindspore
|
|
214
|
+
>>> device_target = mindspore.context.get_context("device_target")
|
|
215
|
+
>>> print(mindspore.hal.device_count(device_target))
|
|
211
216
|
"""
|
|
212
217
|
hal_instance = hal_instances.get(device_target)
|
|
213
218
|
if hal_instance is None:
|
|
@@ -219,17 +224,15 @@ def device_count(device_target=None):
|
|
|
219
224
|
@_check_inputs_validation
|
|
220
225
|
def get_device_capability(device_id, device_target=None):
|
|
221
226
|
"""
|
|
222
|
-
Get specified device's capability.
|
|
223
|
-
|
|
224
|
-
Note:
|
|
225
|
-
If `device_target` is not specified, get the device capability of the current backend set by context.
|
|
227
|
+
Get specified device's capability, this api will be deprecated and removed in future versions.
|
|
226
228
|
|
|
227
229
|
Args:
|
|
228
230
|
device_id (int): The device id of which the capability will be returned.
|
|
229
|
-
device_target (str, optional):
|
|
231
|
+
device_target (str, optional): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
232
|
+
``"Ascend"`` . Default ``None`` , represents the current device set by context.
|
|
230
233
|
|
|
231
234
|
Returns:
|
|
232
|
-
tuple(
|
|
235
|
+
tuple(param1, param2) for GPU.
|
|
233
236
|
|
|
234
237
|
- param1 - int, cuda major revision number.
|
|
235
238
|
- param2 - int, cuda minor revision number.
|
|
@@ -237,9 +240,9 @@ def get_device_capability(device_id, device_target=None):
|
|
|
237
240
|
None for Ascend and CPU.
|
|
238
241
|
|
|
239
242
|
Examples:
|
|
240
|
-
>>> import mindspore
|
|
241
|
-
>>> device_target =
|
|
242
|
-
>>> print(
|
|
243
|
+
>>> import mindspore
|
|
244
|
+
>>> device_target = mindspore.context.get_context("device_target")
|
|
245
|
+
>>> print(mindspore.hal.get_device_capability(0, device_target))
|
|
243
246
|
"""
|
|
244
247
|
hal_instance = hal_instances.get(device_target)
|
|
245
248
|
if hal_instance is None:
|
|
@@ -251,17 +254,17 @@ def get_device_capability(device_id, device_target=None):
|
|
|
251
254
|
@_check_inputs_validation
|
|
252
255
|
def get_device_properties(device_id, device_target=None):
|
|
253
256
|
"""
|
|
254
|
-
Get specified device's properties.
|
|
257
|
+
Get specified device's properties, this api will be deprecated and removed in future versions.
|
|
255
258
|
|
|
256
259
|
Note:
|
|
257
|
-
|
|
258
|
-
For Ascend, backend must be initialized before calling this method,
|
|
260
|
+
For Ascend, device must be initialized before calling this method,
|
|
259
261
|
or `total_memory` and `free_memory` will be 0,
|
|
260
262
|
and `device_id` will be ignored since this method only returns current device's properties.
|
|
261
263
|
|
|
262
264
|
Args:
|
|
263
265
|
device_id (int): The device id of which the properties will be returned.
|
|
264
|
-
device_target (str, optional): The device
|
|
266
|
+
device_target (str, optional): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
267
|
+
``"Ascend"`` . Default ``None`` , represents the current device set by context.
|
|
265
268
|
|
|
266
269
|
Returns:
|
|
267
270
|
- `cudaDeviceProp` for GPU.
|
|
@@ -292,9 +295,9 @@ def get_device_properties(device_id, device_target=None):
|
|
|
292
295
|
- None for CPU.
|
|
293
296
|
|
|
294
297
|
Examples:
|
|
295
|
-
>>> import mindspore
|
|
296
|
-
>>> device_target =
|
|
297
|
-
>>> print(
|
|
298
|
+
>>> import mindspore
|
|
299
|
+
>>> device_target = mindspore.context.get_context("device_target")
|
|
300
|
+
>>> print(mindspore.hal.get_device_properties(0, device_target))
|
|
298
301
|
"""
|
|
299
302
|
hal_instance = hal_instances.get(device_target)
|
|
300
303
|
if hal_instance is None:
|
|
@@ -306,23 +309,23 @@ def get_device_properties(device_id, device_target=None):
|
|
|
306
309
|
@_check_inputs_validation
|
|
307
310
|
def get_device_name(device_id, device_target=None):
|
|
308
311
|
"""
|
|
309
|
-
Get specified device's name.
|
|
312
|
+
Get specified device's name, this api will be deprecated and removed in future versions.
|
|
310
313
|
|
|
311
314
|
Note:
|
|
312
|
-
|
|
313
|
-
This method always returns "CPU" for CPU backend.
|
|
315
|
+
This method always returns "CPU" for CPU device.
|
|
314
316
|
|
|
315
317
|
Args:
|
|
316
318
|
device_id (int): The device id of which the name will be returned.
|
|
317
|
-
device_target (str, optional): The device
|
|
319
|
+
device_target (str, optional): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
320
|
+
``"Ascend"`` . Default ``None`` , represents the current device set by context.
|
|
318
321
|
|
|
319
322
|
Returns:
|
|
320
|
-
str
|
|
323
|
+
str
|
|
321
324
|
|
|
322
325
|
Examples:
|
|
323
|
-
>>> import mindspore
|
|
324
|
-
>>> device_target =
|
|
325
|
-
>>> print(
|
|
326
|
+
>>> import mindspore
|
|
327
|
+
>>> device_target = mindspore.context.get_context("device_target")
|
|
328
|
+
>>> print(mindspore.hal.get_device_name(0, device_target))
|
|
326
329
|
"""
|
|
327
330
|
hal_instance = hal_instances.get(device_target)
|
|
328
331
|
if hal_instance is None:
|
|
@@ -333,22 +336,21 @@ def get_device_name(device_id, device_target=None):
|
|
|
333
336
|
@_check_inputs_validation
|
|
334
337
|
def get_arch_list(device_target=None):
|
|
335
338
|
"""
|
|
336
|
-
Get the architecture list this MindSpore was compiled for
|
|
337
|
-
|
|
338
|
-
Note:
|
|
339
|
-
If `device_target` is not specified, get the device name of the current backend set by context.
|
|
339
|
+
Get the architecture list this MindSpore was compiled for, this api will be deprecated and removed in future
|
|
340
|
+
versions.
|
|
340
341
|
|
|
341
342
|
Args:
|
|
342
|
-
device_target (str, optional): The device
|
|
343
|
+
device_target (str, optional): The target device specified, should be one of ``"CPU"`` , ``"GPU"`` and
|
|
344
|
+
``"Ascend"`` . Default ``None`` , represents the current device set by context.
|
|
343
345
|
|
|
344
346
|
Returns:
|
|
345
347
|
str for GPU.
|
|
346
348
|
None for Ascend and CPU.
|
|
347
349
|
|
|
348
350
|
Examples:
|
|
349
|
-
>>> import mindspore
|
|
350
|
-
>>> device_target =
|
|
351
|
-
>>> print(
|
|
351
|
+
>>> import mindspore
|
|
352
|
+
>>> device_target = mindspore.context.get_context("device_target")
|
|
353
|
+
>>> print(mindspore.hal.get_arch_list(device_target))
|
|
352
354
|
"""
|
|
353
355
|
hal_instance = hal_instances.get(device_target)
|
|
354
356
|
if hal_instance is None:
|
mindspore/hal/event.py
CHANGED
|
@@ -17,11 +17,15 @@ from mindspore._c_expression import Event as Event_
|
|
|
17
17
|
from mindspore._c_expression import Stream as Stream_
|
|
18
18
|
from mindspore._c_expression import current_stream as current_stream_
|
|
19
19
|
from mindspore import _checkparam as Validator
|
|
20
|
+
from mindspore import log as logger
|
|
21
|
+
|
|
22
|
+
function_event_status = {'Event': False, 'wait': False}
|
|
20
23
|
|
|
21
24
|
|
|
22
25
|
class Event(Event_):
|
|
23
26
|
r"""
|
|
24
|
-
Wrapper around a device event
|
|
27
|
+
Wrapper around a device event, this api will be deprecated and removed in future versions, please use
|
|
28
|
+
the api :func:`mindspore.runtime.Event` instead.
|
|
25
29
|
|
|
26
30
|
Device events are synchronization markers that can be used to monitor the device’s progress,
|
|
27
31
|
to accurately measure timing, and to synchronize device streams.
|
|
@@ -29,36 +33,40 @@ class Event(Event_):
|
|
|
29
33
|
The underlying device events are lazily initialized when the event is first recorded.
|
|
30
34
|
|
|
31
35
|
Args:
|
|
32
|
-
enable_timing (bool, optional): indicates if the event should measure time
|
|
33
|
-
blocking (bool, optional): if ``True``, `wait` will be blocking
|
|
36
|
+
enable_timing (bool, optional): indicates if the event should measure time. Default ``False``.
|
|
37
|
+
blocking (bool, optional): if ``True``, `wait` will be blocking. Default ``False``.
|
|
34
38
|
|
|
35
39
|
Examples:
|
|
36
|
-
>>> import mindspore
|
|
37
|
-
>>>
|
|
38
|
-
>>>
|
|
39
|
-
>>>
|
|
40
|
-
>>>
|
|
41
|
-
>>>
|
|
42
|
-
>>>
|
|
43
|
-
>>>
|
|
44
|
-
>>>
|
|
45
|
-
|
|
46
|
-
>>> with ms.hal.StreamCtx(s1):
|
|
47
|
-
... d = ops.matmul(a, b)
|
|
40
|
+
>>> import mindspore
|
|
41
|
+
>>> start = mindspore.hal.Event(enable_timing=True)
|
|
42
|
+
>>> end = mindspore.hal.Event(enable_timing=True)
|
|
43
|
+
>>> s1 = mindspore.hal.Stream()
|
|
44
|
+
>>> s2 = mindspore.hal.Stream()
|
|
45
|
+
>>> a = mindspore.tensor(mindspore.ops.ones([2, 2]), mindspore.float32)
|
|
46
|
+
>>> b = mindspore.tensor(mindspore.ops.ones([2, 2]), mindspore.float32)
|
|
47
|
+
>>> c = mindspore.tensor(mindspore.ops.ones([2, 2]), mindspore.float32)
|
|
48
|
+
>>> with mindspore.hal.StreamCtx(s1):
|
|
49
|
+
... d = mindspore.ops.matmul(a, b)
|
|
48
50
|
... start.record()
|
|
49
51
|
>>> c += 2
|
|
50
52
|
>>> end.record()
|
|
51
|
-
>>> with
|
|
53
|
+
>>> with mindspore.hal.StreamCtx(s2):
|
|
52
54
|
... start.synchronize()
|
|
53
55
|
... end.synchronize()
|
|
54
56
|
... e = c + d
|
|
55
|
-
>>>
|
|
57
|
+
>>> mindspore.hal.synchronize()
|
|
56
58
|
>>> print(e)
|
|
57
59
|
[[5. 5.]
|
|
58
60
|
[5. 5.]]
|
|
59
61
|
>>> elapsed_time = start.elapsed_time(end)
|
|
60
62
|
"""
|
|
63
|
+
|
|
61
64
|
def __init__(self, enable_timing=False, blocking=False):
|
|
65
|
+
if not function_event_status['Event']:
|
|
66
|
+
function_event_status['Event'] = True
|
|
67
|
+
logger.warning(
|
|
68
|
+
"WARN_DEPRECATED: The usage of mindspore.hal.Event(enable_timing=True) is deprecated."
|
|
69
|
+
" Please use mindspore.runtime.Event(enable_timing=True)")
|
|
62
70
|
# pylint: disable=useless-super-delegation
|
|
63
71
|
Validator.check_bool(enable_timing, "enable_timing", "Event")
|
|
64
72
|
Validator.check_bool(blocking, "blocking", "Event")
|
|
@@ -66,17 +74,14 @@ class Event(Event_):
|
|
|
66
74
|
|
|
67
75
|
def record(self, stream=None):
|
|
68
76
|
r"""
|
|
69
|
-
|
|
77
|
+
Record the event in a given stream.
|
|
70
78
|
|
|
71
79
|
Uses :func:`mindspore.hal.current_stream()` if no `stream` is specified. The
|
|
72
80
|
stream's device must match the event's device.
|
|
73
81
|
|
|
74
82
|
Args:
|
|
75
83
|
stream (Stream, optional): a stream to record. If this argument is ``None``,
|
|
76
|
-
current stream will be used. Default
|
|
77
|
-
|
|
78
|
-
Raises:
|
|
79
|
-
TypeError: If 'stream' is neither a :class:`mindspore.hal.Stream` nor a ``None``.
|
|
84
|
+
current stream will be used. Default ``None``.
|
|
80
85
|
"""
|
|
81
86
|
if stream is None:
|
|
82
87
|
stream = current_stream_()
|
|
@@ -87,37 +92,37 @@ class Event(Event_):
|
|
|
87
92
|
|
|
88
93
|
def wait(self, stream=None):
|
|
89
94
|
r"""
|
|
90
|
-
|
|
95
|
+
Make all future work submitted to the given stream wait for this
|
|
91
96
|
event.
|
|
92
97
|
|
|
93
98
|
Use :func:`mindspore.hal.current_stream()` if no `stream` is specified.
|
|
94
99
|
|
|
95
100
|
Args:
|
|
96
101
|
stream (Stream, optional): a stream to record. If this argument is ``None``,
|
|
97
|
-
current stream will be used. Default
|
|
98
|
-
|
|
99
|
-
Raises:
|
|
100
|
-
TypeError: If 'stream' is neither a :class:`mindspore.hal.Stream` nor a ``None``.
|
|
102
|
+
current stream will be used. Default ``None``.
|
|
101
103
|
|
|
102
104
|
Examples:
|
|
103
|
-
>>> import mindspore
|
|
104
|
-
>>>
|
|
105
|
-
>>>
|
|
106
|
-
>>>
|
|
107
|
-
>>>
|
|
108
|
-
>>>
|
|
109
|
-
>>>
|
|
110
|
-
|
|
111
|
-
>>> with ms.hal.StreamCtx(s1):
|
|
112
|
-
... c = ops.matmul(a, b)
|
|
105
|
+
>>> import mindspore
|
|
106
|
+
>>> event = mindspore.hal.Event()
|
|
107
|
+
>>> s1 = mindspore.hal.Stream()
|
|
108
|
+
>>> s2 = mindspore.hal.Stream()
|
|
109
|
+
>>> a = mindspore.tensor(mindspore.ops.ones([2, 2]), mindspore.float32)
|
|
110
|
+
>>> b = mindspore.tensor(mindspore.ops.ones([2, 2]), mindspore.float32)
|
|
111
|
+
>>> with mindspore.hal.StreamCtx(s1):
|
|
112
|
+
... c = mindspore.ops.matmul(a, b)
|
|
113
113
|
... event.record()
|
|
114
114
|
>>> event.wait()
|
|
115
115
|
>>> d = c + 2
|
|
116
|
-
>>>
|
|
116
|
+
>>> mindspore.hal.synchronize()
|
|
117
117
|
>>> print(d)
|
|
118
118
|
[[4. 4.]
|
|
119
119
|
[4. 4.]]
|
|
120
120
|
"""
|
|
121
|
+
if not function_event_status['wait']:
|
|
122
|
+
function_event_status['wait'] = True
|
|
123
|
+
logger.warning(
|
|
124
|
+
"WARN_DEPRECATED: The usage of mindspore.hal.Event() is deprecated."
|
|
125
|
+
" Please use mindspore.runtime.Event()")
|
|
121
126
|
if stream is None:
|
|
122
127
|
stream = current_stream_()
|
|
123
128
|
if not isinstance(stream, Stream_):
|
|
@@ -127,7 +132,7 @@ class Event(Event_):
|
|
|
127
132
|
|
|
128
133
|
def synchronize(self):
|
|
129
134
|
r"""
|
|
130
|
-
|
|
135
|
+
Wait for the event to complete.
|
|
131
136
|
|
|
132
137
|
Waits until the completion of all work currently captured in this event.
|
|
133
138
|
This prevents the CPU thread from proceeding until the event completes.
|
|
@@ -137,20 +142,18 @@ class Event(Event_):
|
|
|
137
142
|
|
|
138
143
|
def query(self):
|
|
139
144
|
r"""
|
|
140
|
-
|
|
145
|
+
Check if all work currently captured by event has completed.
|
|
141
146
|
|
|
142
147
|
Returns:
|
|
143
148
|
A boolean indicating if all work currently captured by event has completed.
|
|
144
149
|
|
|
145
150
|
Examples:
|
|
146
|
-
>>> import mindspore
|
|
147
|
-
>>>
|
|
148
|
-
>>>
|
|
149
|
-
>>>
|
|
150
|
-
>>>
|
|
151
|
-
|
|
152
|
-
>>> with ms.hal.StreamCtx(s1):
|
|
153
|
-
... c = ops.matmul(a, b)
|
|
151
|
+
>>> import mindspore
|
|
152
|
+
>>> a = mindspore.tensor(mindspore.ops.ones([1024, 2048]), mindspore.float32)
|
|
153
|
+
>>> b = mindspore.tensor(mindspore.ops.ones([2048, 4096]), mindspore.float32)
|
|
154
|
+
>>> s1 = mindspore.hal.Stream()
|
|
155
|
+
>>> with mindspore.hal.StreamCtx(s1):
|
|
156
|
+
... c = mindspore.ops.matmul(a, b)
|
|
154
157
|
... ev = s1.record_event()
|
|
155
158
|
>>> s1.synchronize()
|
|
156
159
|
>>> assert ev.query()
|
|
@@ -160,7 +163,7 @@ class Event(Event_):
|
|
|
160
163
|
|
|
161
164
|
def elapsed_time(self, end_event):
|
|
162
165
|
r"""
|
|
163
|
-
|
|
166
|
+
Return the time elapsed in milliseconds after the event was
|
|
164
167
|
recorded and before the end_event was recorded.
|
|
165
168
|
|
|
166
169
|
Args:
|
|
@@ -168,9 +171,6 @@ class Event(Event_):
|
|
|
168
171
|
|
|
169
172
|
Returns:
|
|
170
173
|
float, the time elapsed in milliseconds.
|
|
171
|
-
|
|
172
|
-
Raises:
|
|
173
|
-
TypeError: If 'end_event' is not a :class:`mindspore.hal.Event`.
|
|
174
174
|
"""
|
|
175
175
|
# pylint: disable=useless-super-delegation
|
|
176
176
|
if not isinstance(end_event, Event):
|