mindspore 2.5.0__cp310-cp310-win_amd64.whl → 2.6.0rc1__cp310-cp310-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
- mindspore/Newtonsoft.Json.dll +0 -0
- mindspore/__init__.py +6 -4
- mindspore/_c_dataengine.cp310-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp310-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp310-win_amd64.pyd +0 -0
- mindspore/_check_jit_forbidden_api.py +3 -0
- mindspore/_checkparam.py +3 -33
- mindspore/_deprecated/__init__.py +17 -0
- mindspore/_deprecated/jit.py +198 -0
- mindspore/_extends/builtin_operations.py +1 -1
- mindspore/_extends/parse/__init__.py +6 -7
- mindspore/_extends/parse/compile_config.py +19 -0
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +22 -3
- 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 +24 -193
- mindspore/_extends/parse/resources.py +1 -5
- mindspore/_extends/parse/standard_method.py +97 -74
- mindspore/_extends/pijit/__init__.py +2 -2
- mindspore/_extends/pijit/pijit_func_white_list.py +16 -11
- mindspore/_extends/pijit/tensor_func_list.py +27 -0
- mindspore/_extends/utils.py +1 -1
- mindspore/amp.py +4 -4
- mindspore/atlprov.dll +0 -0
- mindspore/avcodec-59.dll +0 -0
- mindspore/avdevice-59.dll +0 -0
- mindspore/avfilter-8.dll +0 -0
- mindspore/avformat-59.dll +0 -0
- mindspore/avutil-57.dll +0 -0
- mindspore/boost/__init__.py +2 -2
- mindspore/boost/base.py +3 -7
- mindspore/boost/boost_cell_wrapper.py +2 -2
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/common/__init__.py +4 -3
- mindspore/common/_grad_function.py +56 -0
- mindspore/common/_pijit_context.py +14 -5
- mindspore/common/_register_for_tensor.py +1 -1
- mindspore/common/_stub_tensor.py +5 -10
- mindspore/common/_tensor_cpp_method.py +1 -1
- mindspore/common/_tensor_docs.py +1915 -3287
- mindspore/common/api.py +341 -354
- mindspore/common/auto_dynamic_shape.py +41 -44
- mindspore/common/dtype.py +5 -2
- mindspore/common/dump.py +7 -5
- mindspore/common/file_system.py +3 -0
- mindspore/common/hook_handle.py +5 -3
- mindspore/common/initializer.py +10 -6
- 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 +2 -2
- mindspore/common/mutable.py +5 -4
- mindspore/common/parameter.py +106 -39
- mindspore/common/seed.py +2 -2
- mindspore/common/sparse_tensor.py +23 -17
- mindspore/common/tensor.py +297 -714
- mindspore/communication/__init__.py +7 -5
- mindspore/communication/_comm_helper.py +47 -2
- mindspore/communication/comm_func.py +70 -53
- mindspore/communication/management.py +83 -17
- mindspore/context.py +214 -560
- mindspore/dataset/__init__.py +44 -20
- mindspore/dataset/audio/__init__.py +2 -8
- mindspore/dataset/audio/transforms.py +3 -17
- mindspore/dataset/core/config.py +3 -3
- mindspore/dataset/engine/cache_client.py +1 -1
- mindspore/dataset/engine/datasets.py +102 -120
- mindspore/dataset/engine/datasets_audio.py +22 -22
- mindspore/dataset/engine/datasets_standard_format.py +43 -24
- mindspore/dataset/engine/datasets_text.py +78 -85
- mindspore/dataset/engine/datasets_user_defined.py +108 -76
- mindspore/dataset/engine/datasets_vision.py +111 -108
- mindspore/dataset/engine/iterators.py +5 -3
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +1 -1
- mindspore/dataset/engine/samplers.py +279 -57
- mindspore/dataset/engine/serializer_deserializer.py +2 -1
- mindspore/dataset/engine/validators.py +10 -0
- 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/transforms.py +3 -3
- 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/device_context/ascend/op_debug.py +60 -1
- mindspore/device_context/ascend/op_tuning.py +0 -4
- mindspore/device_manager.py +39 -3
- mindspore/dnnl.dll +0 -0
- mindspore/dpcmi.dll +0 -0
- mindspore/experimental/es/embedding_service.py +35 -27
- mindspore/experimental/map_parameter.py +4 -4
- mindspore/experimental/optim/adadelta.py +22 -26
- mindspore/experimental/optim/adagrad.py +4 -4
- mindspore/experimental/optim/adam.py +4 -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 +40 -22
- mindspore/experimental/optim/radam.py +5 -5
- 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 -81
- mindspore/hal/event.py +38 -55
- mindspore/hal/memory.py +93 -144
- mindspore/hal/stream.py +81 -125
- mindspore/include/dataset/constants.h +7 -4
- mindspore/include/dataset/execute.h +2 -2
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +40 -2
- mindspore/mindrecord/__init__.py +20 -7
- 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_glog.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 +131 -700
- mindspore/mint/distributed/__init__.py +5 -1
- mindspore/mint/distributed/distributed.py +194 -109
- mindspore/mint/linalg/__init__.py +2 -0
- mindspore/mint/nn/__init__.py +280 -18
- mindspore/mint/nn/functional.py +282 -64
- mindspore/mint/nn/layer/__init__.py +4 -0
- mindspore/mint/nn/layer/_functions.py +7 -3
- mindspore/mint/nn/layer/activation.py +120 -13
- mindspore/mint/nn/layer/conv.py +218 -24
- mindspore/mint/nn/layer/normalization.py +15 -16
- mindspore/mint/nn/layer/padding.py +1 -1
- mindspore/mint/nn/layer/pooling.py +66 -1
- mindspore/mint/optim/__init__.py +2 -1
- mindspore/mint/optim/sgd.py +171 -0
- mindspore/msobj140.dll +0 -0
- mindspore/mspdb140.dll +0 -0
- mindspore/mspdbcore.dll +0 -0
- mindspore/mspdbst.dll +0 -0
- mindspore/mspft140.dll +0 -0
- mindspore/msvcdis140.dll +0 -0
- mindspore/msvcp140_1.dll +0 -0
- mindspore/msvcp140_2.dll +0 -0
- mindspore/msvcp140_atomic_wait.dll +0 -0
- mindspore/msvcp140_codecvt_ids.dll +0 -0
- mindspore/nn/__init__.py +4 -1
- mindspore/nn/cell.py +1250 -176
- mindspore/nn/layer/activation.py +23 -21
- mindspore/nn/layer/basic.py +22 -16
- mindspore/nn/layer/container.py +1 -1
- mindspore/nn/layer/conv.py +22 -17
- mindspore/nn/layer/embedding.py +9 -8
- mindspore/nn/layer/normalization.py +48 -42
- mindspore/nn/layer/pooling.py +75 -31
- mindspore/nn/layer/transformer.py +11 -10
- mindspore/nn/learning_rate_schedule.py +4 -2
- mindspore/nn/loss/loss.py +27 -19
- mindspore/nn/optim/ada_grad.py +6 -5
- mindspore/nn/optim/adadelta.py +9 -7
- mindspore/nn/optim/adafactor.py +1 -1
- mindspore/nn/optim/adam.py +16 -12
- 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/lazyadam.py +12 -10
- mindspore/nn/optim/momentum.py +7 -6
- mindspore/nn/optim/optimizer.py +2 -2
- mindspore/nn/optim/proximal_ada_grad.py +12 -10
- mindspore/nn/optim/rmsprop.py +13 -12
- mindspore/nn/optim/rprop.py +9 -7
- mindspore/nn/optim/sgd.py +9 -6
- mindspore/nn/optim/tft_wrapper.py +5 -2
- 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/wrap/__init__.py +6 -6
- mindspore/nn/wrap/cell_wrapper.py +178 -117
- mindspore/nn/wrap/grad_reducer.py +45 -36
- mindspore/nn/wrap/loss_scale.py +3 -3
- mindspore/numpy/array_creations.py +3 -3
- mindspore/numpy/array_ops.py +1 -1
- mindspore/numpy/math_ops.py +4 -4
- mindspore/numpy/utils.py +1 -2
- mindspore/numpy/utils_const.py +1 -2
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +3 -2
- mindspore/ops/_grad_experimental/grad_comm_ops.py +18 -3
- mindspore/ops/_grad_experimental/grad_debug_ops.py +8 -1
- mindspore/ops/_grad_experimental/taylor_rule.py +29 -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 -4
- mindspore/ops/_vmap/vmap_array_ops.py +7 -6
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +2 -1
- mindspore/ops/_vmap/vmap_math_ops.py +4 -7
- mindspore/ops/_vmap/vmap_nn_ops.py +9 -8
- mindspore/ops/auto_generate/__init__.py +4 -3
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +102 -49
- mindspore/ops/auto_generate/gen_extend_func.py +281 -135
- mindspore/ops/auto_generate/gen_ops_def.py +2574 -2326
- mindspore/ops/auto_generate/gen_ops_prim.py +8566 -2755
- mindspore/ops/auto_generate/pyboost_inner_prim.py +106 -76
- mindspore/ops/composite/__init__.py +2 -1
- mindspore/ops/composite/base.py +19 -24
- 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 +2 -3
- 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 -1
- 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 +28 -2
- mindspore/ops/function/_add_attr_func.py +58 -0
- mindspore/ops/function/array_func.py +1629 -2345
- mindspore/ops/function/clip_func.py +38 -45
- mindspore/ops/function/debug_func.py +36 -44
- mindspore/ops/function/grad/__init__.py +1 -0
- mindspore/ops/function/grad/grad_func.py +104 -71
- mindspore/ops/function/image_func.py +1 -1
- mindspore/ops/function/linalg_func.py +46 -78
- mindspore/ops/function/math_func.py +3035 -3705
- mindspore/ops/function/nn_func.py +676 -241
- mindspore/ops/function/other_func.py +159 -1
- mindspore/ops/function/parameter_func.py +17 -30
- mindspore/ops/function/random_func.py +204 -361
- mindspore/ops/function/reshard_func.py +4 -70
- mindspore/ops/function/sparse_func.py +3 -3
- mindspore/ops/function/sparse_unary_func.py +5 -5
- mindspore/ops/function/spectral_func.py +25 -58
- mindspore/ops/function/vmap_func.py +24 -17
- mindspore/ops/functional.py +6 -4
- mindspore/ops/functional_overload.py +547 -4
- mindspore/ops/op_info_register.py +32 -244
- mindspore/ops/operations/__init__.py +10 -5
- mindspore/ops/operations/_custom_ops_utils.py +247 -0
- mindspore/ops/operations/_grad_ops.py +1 -10
- mindspore/ops/operations/_inner_ops.py +5 -76
- 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 +37 -22
- mindspore/ops/operations/comm_ops.py +150 -107
- mindspore/ops/operations/custom_ops.py +221 -23
- mindspore/ops/operations/debug_ops.py +115 -16
- mindspore/ops/operations/inner_ops.py +1 -1
- mindspore/ops/operations/linalg_ops.py +1 -58
- mindspore/ops/operations/manually_defined/_inner.py +1 -1
- mindspore/ops/operations/manually_defined/ops_def.py +746 -79
- mindspore/ops/operations/math_ops.py +21 -18
- mindspore/ops/operations/nn_ops.py +65 -191
- 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 +43 -32
- mindspore/ops/tensor_method.py +232 -13
- mindspore/ops_generate/__init__.py +0 -5
- mindspore/ops_generate/aclnn/__init__.py +0 -0
- mindspore/ops_generate/{aclnn_kernel_register_auto_cc_generator.py → aclnn/aclnn_kernel_register_auto_cc_generator.py} +43 -18
- mindspore/ops_generate/{gen_aclnn_implement.py → aclnn/gen_aclnn_implement.py} +49 -51
- mindspore/ops_generate/api/__init__.py +0 -0
- mindspore/ops_generate/{add_tensor_docs_generator.py → api/add_tensor_docs_generator.py} +9 -7
- mindspore/ops_generate/{cpp_create_prim_instance_helper_generator.py → api/cpp_create_prim_instance_helper_generator.py} +6 -9
- mindspore/ops_generate/{functional_map_cpp_generator.py → api/functional_map_cpp_generator.py} +25 -12
- mindspore/ops_generate/{functional_overload_py_generator.py → api/functional_overload_py_generator.py} +8 -6
- mindspore/ops_generate/{functions_cc_generator.py → api/functions_cc_generator.py} +14 -10
- mindspore/ops_generate/api/gen_api.py +103 -0
- mindspore/ops_generate/{op_api_proto.py → api/op_api_proto.py} +98 -69
- mindspore/ops_generate/{tensor_func_reg_cpp_generator.py → api/tensor_func_reg_cpp_generator.py} +82 -43
- mindspore/ops_generate/common/__init__.py +0 -0
- mindspore/ops_generate/common/gen_constants.py +91 -0
- mindspore/ops_generate/{gen_utils.py → common/gen_utils.py} +72 -19
- mindspore/ops_generate/{op_proto.py → common/op_proto.py} +64 -1
- mindspore/ops_generate/{template.py → common/template.py} +96 -84
- mindspore/ops_generate/gen_ops.py +23 -325
- mindspore/ops_generate/op_def/__init__.py +0 -0
- mindspore/ops_generate/op_def/gen_op_def.py +90 -0
- mindspore/ops_generate/{lite_ops_cpp_generator.py → op_def/lite_ops_cpp_generator.py} +47 -11
- mindspore/ops_generate/{ops_def_cc_generator.py → op_def/ops_def_cc_generator.py} +18 -7
- mindspore/ops_generate/{ops_def_h_generator.py → op_def/ops_def_h_generator.py} +5 -5
- mindspore/ops_generate/{ops_name_h_generator.py → op_def/ops_name_h_generator.py} +30 -15
- 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_generator.py → op_def_py/op_def_py_generator.py} +6 -5
- mindspore/ops_generate/{op_prim_py_generator.py → op_def_py/op_prim_py_generator.py} +24 -15
- mindspore/ops_generate/pyboost/__init__.py +0 -0
- mindspore/ops_generate/{auto_grad_impl_cc_generator.py → pyboost/auto_grad_impl_cc_generator.py} +11 -7
- mindspore/ops_generate/{auto_grad_reg_cc_generator.py → pyboost/auto_grad_reg_cc_generator.py} +7 -7
- mindspore/ops_generate/{gen_pyboost_func.py → pyboost/gen_pyboost_func.py} +40 -16
- mindspore/ops_generate/{op_template_parser.py → pyboost/op_template_parser.py} +105 -24
- mindspore/ops_generate/{pyboost_functions_cpp_generator.py → pyboost/pyboost_functions_cpp_generator.py} +55 -18
- mindspore/ops_generate/{pyboost_functions_h_generator.py → pyboost/pyboost_functions_h_generator.py} +42 -10
- mindspore/ops_generate/{pyboost_functions_py_generator.py → pyboost/pyboost_functions_py_generator.py} +6 -6
- mindspore/ops_generate/{pyboost_grad_function_cpp_generator.py → pyboost/pyboost_grad_function_cpp_generator.py} +11 -10
- mindspore/ops_generate/{pyboost_inner_prim_generator.py → pyboost/pyboost_inner_prim_generator.py} +8 -7
- mindspore/ops_generate/{pyboost_native_grad_functions_generator.py → pyboost/pyboost_native_grad_functions_generator.py} +14 -10
- mindspore/ops_generate/{pyboost_op_cpp_code_generator.py → pyboost/pyboost_op_cpp_code_generator.py} +140 -53
- mindspore/ops_generate/{pyboost_overload_functions_cpp_generator.py → pyboost/pyboost_overload_functions_cpp_generator.py} +28 -15
- mindspore/ops_generate/{pyboost_utils.py → pyboost/pyboost_utils.py} +88 -4
- 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 +6 -2
- mindspore/parallel/_auto_parallel_context.py +133 -6
- mindspore/parallel/_cell_wrapper.py +130 -15
- mindspore/parallel/_parallel_serialization.py +95 -4
- mindspore/parallel/_ps_context.py +1 -1
- mindspore/parallel/_recovery_context.py +7 -2
- mindspore/parallel/_tensor.py +142 -18
- mindspore/parallel/_utils.py +198 -25
- mindspore/parallel/algo_parameter_config.py +3 -3
- mindspore/parallel/auto_parallel.py +732 -0
- mindspore/parallel/checkpoint_convert.py +159 -0
- mindspore/parallel/checkpoint_transform.py +656 -37
- mindspore/parallel/cluster/process_entity/_api.py +151 -19
- mindspore/parallel/cluster/run.py +1 -1
- 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 +24 -13
- mindspore/parallel/shard.py +137 -61
- mindspore/parallel/transform_safetensors.py +287 -95
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +9 -5
- mindspore/profiler/analysis/parser/ascend_cann_parser.py +6 -2
- mindspore/profiler/analysis/parser/ms_framework_parser.py +4 -4
- mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +7 -4
- mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +22 -0
- mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +3 -3
- mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +241 -86
- mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +41 -2
- mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +33 -35
- mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +7 -0
- mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +8 -3
- mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +141 -30
- mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +5 -6
- mindspore/profiler/common/ascend_msprof_exporter.py +5 -4
- mindspore/profiler/common/constant.py +12 -0
- mindspore/profiler/common/msprof_cmd_tool.py +42 -23
- mindspore/profiler/common/path_manager.py +24 -0
- mindspore/profiler/common/profiler_context.py +26 -2
- mindspore/profiler/common/profiler_meta_data.py +74 -0
- mindspore/profiler/common/profiler_parameters.py +59 -18
- mindspore/profiler/common/profiler_path_manager.py +66 -7
- mindspore/profiler/dynamic_profiler.py +112 -79
- mindspore/profiler/envprofiler.py +26 -1
- mindspore/profiler/experimental_config.py +197 -0
- mindspore/profiler/mstx.py +57 -14
- mindspore/profiler/platform/npu_profiler.py +33 -7
- mindspore/profiler/profiler.py +541 -45
- mindspore/profiler/profiler_action_controller.py +1 -1
- mindspore/profiler/profiler_interface.py +4 -0
- mindspore/profiler/schedule.py +57 -22
- mindspore/rewrite/api/node.py +15 -13
- mindspore/rewrite/api/symbol_tree.py +1 -1
- mindspore/run_check/_check_version.py +25 -14
- mindspore/run_check/run_check.py +1 -1
- mindspore/runtime/__init__.py +2 -2
- mindspore/runtime/executor.py +40 -11
- mindspore/runtime/memory.py +25 -8
- mindspore/safeguard/rewrite_obfuscation.py +12 -9
- mindspore/swresample-4.dll +0 -0
- mindspore/swscale-6.dll +0 -0
- mindspore/tbbmalloc.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/__init__.py +8 -8
- mindspore/train/_utils.py +35 -7
- mindspore/train/amp.py +1 -1
- mindspore/train/callback/__init__.py +2 -2
- mindspore/train/callback/_callback.py +2 -16
- mindspore/train/callback/_checkpoint.py +24 -40
- mindspore/train/callback/_cluster_monitor.py +14 -18
- mindspore/train/callback/_flops_collector.py +2 -3
- mindspore/train/callback/_history.py +7 -4
- 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 +8 -13
- mindspore/train/callback/_time_monitor.py +2 -1
- mindspore/train/callback/{_tft_register.py → _train_fault_tolerance.py} +179 -103
- mindspore/train/data_sink.py +25 -2
- mindspore/train/dataset_helper.py +4 -5
- 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 +8 -6
- mindspore/train/metrics/recall.py +9 -9
- mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
- mindspore/train/mind_ir_pb2.py +19 -12
- mindspore/train/model.py +176 -103
- mindspore/train/serialization.py +246 -988
- mindspore/train/summary/_summary_adapter.py +2 -2
- mindspore/train/summary/summary_record.py +1 -1
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +3 -2
- mindspore/utils/dryrun.py +4 -2
- mindspore/utils/hooks.py +81 -0
- mindspore/utils/utils.py +138 -4
- mindspore/vcmeta.dll +0 -0
- mindspore/vcruntime140.dll +0 -0
- mindspore/vcruntime140_1.dll +0 -0
- mindspore/version.py +1 -1
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/METADATA +2 -1
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/RECORD +483 -438
- mindspore/_install_custom.py +0 -43
- mindspore/common/_register_for_adapter.py +0 -74
- mindspore/ops/auto_generate/gen_arg_dtype_cast.py +0 -252
- mindspore/ops/auto_generate/gen_arg_handler.py +0 -136
- mindspore/ops/operations/_opaque_predicate_registry.py +0 -41
- mindspore/ops_generate/gen_constants.py +0 -190
- mindspore/ops_generate/gen_ops_inner_prim.py +0 -131
- mindspore/ops_generate/ops_primitive_h_generator.py +0 -81
- /mindspore/ops_generate/{base_generator.py → common/base_generator.py} +0 -0
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/WHEEL +0 -0
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/entry_points.txt +0 -0
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/top_level.txt +0 -0
|
@@ -98,7 +98,7 @@ class ProfilerActionController:
|
|
|
98
98
|
# Handle special case for ProfilerAction.RECORD_AND_SAVE to ProfilerAction.RECORD_AND_SAVE transition
|
|
99
99
|
if start_state == ProfilerAction.RECORD_AND_SAVE and end_state == ProfilerAction.RECORD_AND_SAVE:
|
|
100
100
|
process_action = [self.prof_interface.stop, self.prof_interface.finalize,
|
|
101
|
-
self._trace_ready, self.prof_interface.init,
|
|
101
|
+
self._trace_ready, self.prof_interface.clear, self.prof_interface.init,
|
|
102
102
|
self.prof_interface.start]
|
|
103
103
|
else:
|
|
104
104
|
while start_state != end_state:
|
|
@@ -20,7 +20,9 @@ from mindspore.common.api import _pynative_executor
|
|
|
20
20
|
from mindspore.profiler.common.registry import PROFILERS
|
|
21
21
|
from mindspore.profiler.platform.base_profiler import BaseProfiler
|
|
22
22
|
from mindspore.profiler.common.profiler_context import ProfilerContext
|
|
23
|
+
from mindspore.profiler.common.log import ProfilerLogger
|
|
23
24
|
from mindspore.profiler.common.profiler_path_manager import ProfilerPathManager
|
|
25
|
+
from mindspore.profiler.common.profiler_meta_data import ProfilerMetaData
|
|
24
26
|
|
|
25
27
|
|
|
26
28
|
class ProfilerInterface:
|
|
@@ -92,6 +94,7 @@ class ProfilerInterface:
|
|
|
92
94
|
logger.warning("ProfilerInterface finalize failed, profiler has not been initialized.")
|
|
93
95
|
return
|
|
94
96
|
|
|
97
|
+
ProfilerMetaData.dump_metadata()
|
|
95
98
|
for profiler in cls.platform_profilers_set:
|
|
96
99
|
profiler.finalize()
|
|
97
100
|
profiler = None
|
|
@@ -106,6 +109,7 @@ class ProfilerInterface:
|
|
|
106
109
|
return
|
|
107
110
|
cls.platform_profilers_set.clear()
|
|
108
111
|
cls.is_initialized = False
|
|
112
|
+
ProfilerLogger.destroy()
|
|
109
113
|
logger.info("ProfilerInterface clear")
|
|
110
114
|
|
|
111
115
|
@classmethod
|
mindspore/profiler/schedule.py
CHANGED
|
@@ -74,10 +74,19 @@ class Schedule:
|
|
|
74
74
|
|
|
75
75
|
Keyword Args:
|
|
76
76
|
wait (int): The number of steps to wait before starting the warm-up phase.
|
|
77
|
+
must be greater than or equal to 0. If the wait parameter is not set externally,
|
|
78
|
+
it is set to ``0`` when the schedule class is initialized.
|
|
77
79
|
active (int): The number of steps to record data during the active phase.
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
80
|
+
must be greater than or equal to 1. If the active parameter is not set externally,
|
|
81
|
+
it is set to ``1`` when the schedule class is initialized.
|
|
82
|
+
warmup (int, optional): The number of steps to perform the warm-up phase.
|
|
83
|
+
must be greater than or equal to 0. Default value: ``0``.
|
|
84
|
+
repeat (int, optional): The number of times to repeat the cycle.
|
|
85
|
+
If repeat is set to 0, the Profiler will determine the repeat value based on the number of times the model
|
|
86
|
+
is trained, which will generate one more performance data with incomplete collection. The data in the last
|
|
87
|
+
step is abnormal data that users do not need to pay attention to. Default value: ``0``.
|
|
88
|
+
skip_first (int, optional): The number of steps to skip at the beginning. Must be greater than or equal to 0.
|
|
89
|
+
Default value: ``0``
|
|
81
90
|
|
|
82
91
|
Raises:
|
|
83
92
|
ValueError: When the parameter step is less than 0.
|
|
@@ -87,10 +96,10 @@ class Schedule:
|
|
|
87
96
|
|
|
88
97
|
Examples:
|
|
89
98
|
>>> import numpy as np
|
|
90
|
-
>>> import mindspore
|
|
99
|
+
>>> import mindspore
|
|
91
100
|
>>> import mindspore.dataset as ds
|
|
92
|
-
>>> from mindspore import context, nn
|
|
93
|
-
>>> from mindspore.profiler import
|
|
101
|
+
>>> from mindspore import context, nn
|
|
102
|
+
>>> from mindspore.profiler import ProfilerLevel, AicoreMetrics, ExportType, ProfilerActivity
|
|
94
103
|
>>>
|
|
95
104
|
>>> class Net(nn.Cell):
|
|
96
105
|
... def __init__(self):
|
|
@@ -108,18 +117,34 @@ class Schedule:
|
|
|
108
117
|
... optimizer = nn.Momentum(test_net.trainable_params(), 1, 0.9)
|
|
109
118
|
... loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True)
|
|
110
119
|
... data = ds.GeneratorDataset(generator_net(), ["data", "label"])
|
|
111
|
-
... model =
|
|
120
|
+
... model = mindspore.train.Model(test_net, loss, optimizer)
|
|
112
121
|
... model.train(1, data)
|
|
113
122
|
>>>
|
|
114
123
|
>>> if __name__ == '__main__':
|
|
115
|
-
...
|
|
124
|
+
... # If the device_target is GPU, set the device_target to "GPU"
|
|
125
|
+
... context.set_context(mode=mindspore.GRAPH_MODE)
|
|
126
|
+
... mindspore.set_device("Ascend")
|
|
116
127
|
...
|
|
128
|
+
... # Init Profiler
|
|
129
|
+
... experimental_config = mindspore.profiler._ExperimentalConfig(
|
|
130
|
+
... profiler_level=ProfilerLevel.Level0,
|
|
131
|
+
... aic_metrics=AicoreMetrics.AiCoreNone,
|
|
132
|
+
... l2_cache=False,
|
|
133
|
+
... mstx=False,
|
|
134
|
+
... data_simplification=False,
|
|
135
|
+
... export_type=[ExportType.Text])
|
|
136
|
+
... steps = 10
|
|
117
137
|
... net = Net()
|
|
118
|
-
...
|
|
138
|
+
... # Note that the Profiler should be initialized before model.train
|
|
139
|
+
... with mindspore.profiler.profile(activities=[ProfilerActivity.CPU, ProfilerActivity.NPU],
|
|
140
|
+
... schedule=mindspore.profiler.schedule(wait=1, warmup=1, active=2,
|
|
141
|
+
... repeat=1, skip_first=2),
|
|
142
|
+
... on_trace_ready=mindspore.profiler.tensorboard_trace_handler("./data"),
|
|
143
|
+
... profile_memory=False,
|
|
144
|
+
... experimental_config=experimental_config) as prof:
|
|
119
145
|
...
|
|
120
|
-
...
|
|
121
|
-
...
|
|
122
|
-
... for i in range(STEP_NUM):
|
|
146
|
+
... # Train Model
|
|
147
|
+
... for step in range(steps):
|
|
123
148
|
... train(net)
|
|
124
149
|
... prof.step()
|
|
125
150
|
"""
|
|
@@ -160,25 +185,35 @@ class Schedule:
|
|
|
160
185
|
return ProfilerAction.WARM_UP
|
|
161
186
|
return ProfilerAction.RECORD if mod_step < num_steps - 1 else ProfilerAction.RECORD_AND_SAVE
|
|
162
187
|
|
|
188
|
+
def __repr__(self):
|
|
189
|
+
return (f"Schedule(wait={self.wait!r}, active={self.active!r}, "
|
|
190
|
+
f"warmup={self.warmup!r}, repeat={self.repeat!r}, "
|
|
191
|
+
f"skip_first={self.skip_first!r})")
|
|
192
|
+
|
|
163
193
|
def _check_params(self):
|
|
164
194
|
"""
|
|
165
195
|
Verify all parameters in the schedule,
|
|
166
196
|
and set them to default values if the parameters are not compliant.
|
|
167
197
|
"""
|
|
168
|
-
if not isinstance(self.wait, int) or self.wait < 0:
|
|
169
|
-
logger.warning("
|
|
198
|
+
if not isinstance(self.wait, int) or isinstance(self.wait, bool) or self.wait < 0:
|
|
199
|
+
logger.warning(f"Parameter 'wait' should be of type int, but got "
|
|
200
|
+
f"{type(self.wait).__name__}. reset to int 0.")
|
|
170
201
|
self.wait = 0
|
|
171
|
-
if not isinstance(self.warmup, int) or self.warmup < 0:
|
|
172
|
-
logger.warning("
|
|
202
|
+
if not isinstance(self.warmup, int) or isinstance(self.warmup, bool) or self.warmup < 0:
|
|
203
|
+
logger.warning(f"Parameter 'warmup' should be of type int, but got "
|
|
204
|
+
f"{type(self.warmup).__name__}. reset to int 0.")
|
|
173
205
|
self.warmup = 0
|
|
174
|
-
if not isinstance(self.active, int) or self.active <= 0:
|
|
175
|
-
logger.warning("
|
|
206
|
+
if not isinstance(self.active, int) or isinstance(self.active, bool) or self.active <= 0:
|
|
207
|
+
logger.warning(f"Parameter 'active' should be of type int, but got "
|
|
208
|
+
f"{type(self.active).__name__}. reset to int 1.")
|
|
176
209
|
self.active = 1
|
|
177
|
-
if not isinstance(self.repeat, int) or self.repeat < 0:
|
|
178
|
-
logger.warning("
|
|
210
|
+
if not isinstance(self.repeat, int) or isinstance(self.repeat, bool) or self.repeat < 0:
|
|
211
|
+
logger.warning(f"Parameter 'repeat' should be of type int, but got "
|
|
212
|
+
f"{type(self.repeat).__name__}. reset to int 0.")
|
|
179
213
|
self.repeat = 0
|
|
180
|
-
if not isinstance(self.skip_first, int) or self.skip_first < 0:
|
|
181
|
-
logger.warning("
|
|
214
|
+
if not isinstance(self.skip_first, int) or isinstance(self.skip_first, bool) or self.skip_first < 0:
|
|
215
|
+
logger.warning(f"Parameter 'skip_first' should be of type int, but got "
|
|
216
|
+
f"{type(self.skip_first).__name__}. reset to int 0.")
|
|
182
217
|
self.skip_first = 0
|
|
183
218
|
if self.warmup == 0:
|
|
184
219
|
logger.warning("Profiler won't be using warmup, this can skew profiler results")
|
mindspore/rewrite/api/node.py
CHANGED
|
@@ -28,9 +28,11 @@ from .scoped_value import ScopedValue
|
|
|
28
28
|
|
|
29
29
|
class Node:
|
|
30
30
|
"""
|
|
31
|
-
A node
|
|
32
|
-
|
|
33
|
-
Each node usually corresponds to a statement in
|
|
31
|
+
A node (Node) can be understood as a basic data structure unit in the computational graph of a neural network,
|
|
32
|
+
which represents an operation or computational step in the network.
|
|
33
|
+
Each node usually corresponds to a statement or expression in the source code,
|
|
34
|
+
which contains the information needed to perform the operation,
|
|
35
|
+
such as the type of operation, input data, output result, and connection relationships with other nodes.
|
|
34
36
|
|
|
35
37
|
Nodes can express a ``Cell`` call statement, a ``Primitive`` call statement, an arithmetic operation statement, a
|
|
36
38
|
return statements, etc. of the forward calculation process.
|
|
@@ -66,9 +68,9 @@ class Node:
|
|
|
66
68
|
source code.
|
|
67
69
|
args (List[ScopedValue]): Indicate input names. Used as args of a call expression of an assign statement in
|
|
68
70
|
source code. Default: ``None`` , which indicates the `cell` has no args inputs.
|
|
69
|
-
kwargs (Dict[str, ScopedValue]):
|
|
70
|
-
Indicate keyword input names.
|
|
71
|
-
|
|
71
|
+
kwargs (Dict[str, ScopedValue]): Used as kwargs of a call expression of an assign statement in source
|
|
72
|
+
code. Indicate keyword input names. Type of key must be `str` and type of value must be `ScopedValue`.
|
|
73
|
+
Default: ``None`` , which indicates the `cell` has no kwargs inputs.
|
|
72
74
|
name (str): Indicate the name of node. Used as field name in source code. Default is None. Rewrite will
|
|
73
75
|
generate name from `cell` when name is None. Rewrite will check and ensure the uniqueness of `name`
|
|
74
76
|
while node being inserted. Default: ``""`` .
|
|
@@ -83,7 +85,7 @@ class Node:
|
|
|
83
85
|
TypeError: If `targets` is not `list`.
|
|
84
86
|
TypeError: If the type of `targets` is not in `[ScopedValue, str]`.
|
|
85
87
|
TypeError: If arg in `args` is not a `ScopedValue`.
|
|
86
|
-
TypeError: If key of `
|
|
88
|
+
TypeError: If key of `kwargs` is not a str or value of kwarg in `kwargs` is not a `ScopedValue`.
|
|
87
89
|
|
|
88
90
|
Examples:
|
|
89
91
|
>>> from mindspore.rewrite import SymbolTree, ScopedValue
|
|
@@ -125,9 +127,9 @@ class Node:
|
|
|
125
127
|
source code.
|
|
126
128
|
args (List[ScopedValue]): Indicate input names. Used as args of a call expression of an assign statement in
|
|
127
129
|
source code. Default: ``None`` , which indicates the `function` has no args inputs.
|
|
128
|
-
kwargs (Dict[str, ScopedValue]):
|
|
129
|
-
Indicate keyword input names.
|
|
130
|
-
|
|
130
|
+
kwargs (Dict[str, ScopedValue]): Used as kwargs of a call expression of an assign statement in source
|
|
131
|
+
code. Indicate keyword input names. Type of key must be `str` and type of value must be `ScopedValue`.
|
|
132
|
+
Default: ``None`` , which indicates the `function` has no kwargs inputs.
|
|
131
133
|
|
|
132
134
|
Returns:
|
|
133
135
|
An instance of `Node`.
|
|
@@ -137,7 +139,7 @@ class Node:
|
|
|
137
139
|
TypeError: If `targets` is not `list`.
|
|
138
140
|
TypeError: If the type of `targets` is not in `[ScopedValue, str]`.
|
|
139
141
|
TypeError: If arg in `args` is not a `ScopedValue`.
|
|
140
|
-
TypeError: If key of `
|
|
142
|
+
TypeError: If key of `kwargs` is not a str or value of kwarg in `kwargs` is not a `ScopedValue`.
|
|
141
143
|
|
|
142
144
|
Examples:
|
|
143
145
|
>>> from mindspore.rewrite import SymbolTree, ScopedValue
|
|
@@ -476,14 +478,14 @@ class Node:
|
|
|
476
478
|
... self.relu = nn.ReLU()
|
|
477
479
|
...
|
|
478
480
|
... def construct(self, input):
|
|
479
|
-
... output = self.relu(
|
|
481
|
+
... output = self.relu(input=input)
|
|
480
482
|
... return output
|
|
481
483
|
>>>
|
|
482
484
|
>>> net = ReLUNet()
|
|
483
485
|
>>> stree = SymbolTree.create(net)
|
|
484
486
|
>>> node = stree.get_node("relu")
|
|
485
487
|
>>> print(node.get_kwargs())
|
|
486
|
-
{'
|
|
488
|
+
{'input': input}
|
|
487
489
|
"""
|
|
488
490
|
return self._node.get_kwargs()
|
|
489
491
|
|
|
@@ -74,7 +74,7 @@ class SymbolTree:
|
|
|
74
74
|
|
|
75
75
|
- :class:`mindspore.nn.SequentialCell`
|
|
76
76
|
- Functions(Excludes Python built-in functions and third-party library functions)
|
|
77
|
-
- Control flow statements
|
|
77
|
+
- Control flow statements(such as `if` statements)
|
|
78
78
|
|
|
79
79
|
Note:
|
|
80
80
|
Because the specific execution branch of control flows are still unknown during the rewrite operation
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2020-
|
|
1
|
+
# Copyright 2020-2025 Huawei Technologies Co., Ltd
|
|
2
2
|
#
|
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
# you may not use this file except in compliance with the License.
|
|
@@ -26,7 +26,6 @@ from packaging import version
|
|
|
26
26
|
import numpy as np
|
|
27
27
|
from mindspore import log as logger
|
|
28
28
|
from mindspore.log import vlog_print
|
|
29
|
-
from mindspore._c_expression import MSContext, ms_ctx_param
|
|
30
29
|
from ..version import __version__
|
|
31
30
|
|
|
32
31
|
|
|
@@ -259,7 +258,7 @@ class AscendEnvChecker(EnvChecker):
|
|
|
259
258
|
|
|
260
259
|
def __init__(self, library_path):
|
|
261
260
|
self.library_path = library_path
|
|
262
|
-
self.version = ["7.
|
|
261
|
+
self.version = ["7.6", "7.7"]
|
|
263
262
|
|
|
264
263
|
# env
|
|
265
264
|
self.path = os.getenv("PATH")
|
|
@@ -276,6 +275,7 @@ class AscendEnvChecker(EnvChecker):
|
|
|
276
275
|
self.python_path_check = "opp/built-in/op_impl/ai_core/tbe"
|
|
277
276
|
self.ld_lib_path_check_fwk = "/lib64"
|
|
278
277
|
self.ascend_opp_path_check = "/op"
|
|
278
|
+
self.ascend_opp_kernel_path_check = "/opp_kernel"
|
|
279
279
|
self.v = ""
|
|
280
280
|
|
|
281
281
|
@staticmethod
|
|
@@ -342,27 +342,35 @@ class AscendEnvChecker(EnvChecker):
|
|
|
342
342
|
logger.warning(f"MindSpore version {mindspore_version} and \"te\" wheel package version {v} does not "
|
|
343
343
|
"match. For details, refer to the installation guidelines: "
|
|
344
344
|
"https://www.mindspore.cn/install")
|
|
345
|
-
from hccl import sys_version as hccl_version
|
|
346
|
-
v = '.'.join(hccl_version.__sys_version__.split('.')[0:2])
|
|
347
|
-
if v not in supported_version:
|
|
348
|
-
attention_warning = True
|
|
349
|
-
logger.warning(f"MindSpore version {mindspore_version} and \"hccl\" wheel package version {v} does not "
|
|
350
|
-
"match. For details, refer to the installation guidelines: "
|
|
351
|
-
"https://www.mindspore.cn/install")
|
|
352
345
|
# DO NOT modify exception type to any other, you DO NOT know what kind of exceptions the te will throw.
|
|
353
346
|
# pylint: disable=broad-except
|
|
354
347
|
except Exception as e:
|
|
355
348
|
logger.error(f"CheckFailed: {e}")
|
|
356
|
-
logger.
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
"https://www.mindspore.cn/install")
|
|
349
|
+
logger.critical("MindSpore relies on whl packages of \"te\" in the \"latest\" folder of the "
|
|
350
|
+
"Ascend AI software package (Ascend Data Center Solution). Please check whether they are "
|
|
351
|
+
"installed correctly or not, refer to the match info on: https://www.mindspore.cn/install")
|
|
360
352
|
if attention_warning:
|
|
361
353
|
warning_countdown = 3
|
|
362
354
|
for i in range(warning_countdown, 0, -1):
|
|
363
355
|
logger.warning(f"Please pay attention to the above warning, countdown: {i}")
|
|
364
356
|
time.sleep(1)
|
|
365
357
|
|
|
358
|
+
def check_opp_kernel(self):
|
|
359
|
+
"""
|
|
360
|
+
opp kernel install check
|
|
361
|
+
"""
|
|
362
|
+
from mindspore._c_expression import MSContext
|
|
363
|
+
soc_version = MSContext.get_instance().get_ascend_soc_version()
|
|
364
|
+
if soc_version == "ascend310":
|
|
365
|
+
return
|
|
366
|
+
|
|
367
|
+
opp_kernel_path = self.ascend_opp_path.replace("opp", "opp_kernel")
|
|
368
|
+
if not os.path.exists(opp_kernel_path):
|
|
369
|
+
logger.critical("MindSpore relies on \"Ascend opp_kernel\" folder of the Ascend AI software package ("
|
|
370
|
+
"Ascend Data Center Solution). Please check whether they are installed correctly or not, "
|
|
371
|
+
"refer to the match info on: https://www.mindspore.cn/install")
|
|
372
|
+
raise Exception("Ascend opp_kernel is not installed")
|
|
373
|
+
|
|
366
374
|
def set_env(self):
|
|
367
375
|
curr_path = os.path.realpath(os.path.dirname(__file__))
|
|
368
376
|
cust_aicpu_path = os.path.realpath(os.path.join(curr_path, "../lib/plugin/ascend/custom_aicpu_ops"))
|
|
@@ -391,6 +399,8 @@ class AscendEnvChecker(EnvChecker):
|
|
|
391
399
|
# check te version after set te env
|
|
392
400
|
self.check_deps_version()
|
|
393
401
|
|
|
402
|
+
self.check_opp_kernel()
|
|
403
|
+
|
|
394
404
|
def _check_env(self):
|
|
395
405
|
"""ascend dependence path check"""
|
|
396
406
|
if self.path is None or self.path_check not in self.path:
|
|
@@ -467,6 +477,7 @@ def check_version_and_env_config():
|
|
|
467
477
|
logger.warning("Pre-Load Library libgomp.so.1 failed, which might cause TLS memory allocation failure. If "
|
|
468
478
|
"the failure occurs, please refer to the FAQ for a solution: "
|
|
469
479
|
"https://www.mindspore.cn/docs/en/master/faq/installation.html.")
|
|
480
|
+
from mindspore._c_expression import MSContext, ms_ctx_param
|
|
470
481
|
MSContext.get_instance().register_check_env_callback(check_env)
|
|
471
482
|
MSContext.get_instance().register_set_env_callback(set_env)
|
|
472
483
|
MSContext.get_instance().set_device_target_inner(MSContext.get_instance().get_param(ms_ctx_param.device_target))
|
mindspore/run_check/run_check.py
CHANGED
|
@@ -47,7 +47,7 @@ def _check_mul():
|
|
|
47
47
|
def run_check():
|
|
48
48
|
"""
|
|
49
49
|
Provide a convenient API to check if the installation is successful or failed.
|
|
50
|
-
If the version in the check result is not
|
|
50
|
+
If the version in the check result is not as expected, use :func:`mindspore.set_context` to set device_target
|
|
51
51
|
before run_check().
|
|
52
52
|
|
|
53
53
|
Examples:
|
mindspore/runtime/__init__.py
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
The runtime interface.
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
|
-
from mindspore.runtime.executor import launch_blocking, dispatch_threads_num, set_cpu_affinity
|
|
20
|
+
from mindspore.runtime.executor import launch_blocking, dispatch_threads_num, set_cpu_affinity, set_kernel_launch_group
|
|
21
21
|
from mindspore.runtime.memory import set_memory, memory_stats, memory_reserved, max_memory_reserved, empty_cache,\
|
|
22
22
|
reset_peak_memory_stats, memory_summary, memory_allocated,\
|
|
23
23
|
max_memory_allocated, reset_max_memory_reserved, reset_max_memory_allocated
|
|
@@ -27,7 +27,7 @@ from mindspore.runtime.event import Event
|
|
|
27
27
|
from .executor import launch_blocking
|
|
28
28
|
|
|
29
29
|
__all__ = [
|
|
30
|
-
"launch_blocking", "dispatch_threads_num", "set_cpu_affinity",
|
|
30
|
+
"launch_blocking", "dispatch_threads_num", "set_cpu_affinity", "set_kernel_launch_group",
|
|
31
31
|
"Stream", "communication_stream", "synchronize", "set_cur_stream", "current_stream", "default_stream", "StreamCtx",
|
|
32
32
|
"set_memory", "memory_stats", "memory_reserved", "max_memory_reserved", "empty_cache", "reset_peak_memory_stats",
|
|
33
33
|
"memory_summary", "memory_allocated", "max_memory_allocated", "reset_max_memory_reserved",
|
mindspore/runtime/executor.py
CHANGED
|
@@ -24,18 +24,14 @@ from mindspore import log as logger
|
|
|
24
24
|
|
|
25
25
|
def launch_blocking():
|
|
26
26
|
"""
|
|
27
|
-
|
|
28
|
-
Default: ``False`` . When the value is set to ``False`` , the operator is executed asynchronously on the
|
|
29
|
-
device. When an error occurs in the execution of the operator, the specific error script code location
|
|
30
|
-
cannot be located. When this API is called , the value will be changed to true, the operator is executed
|
|
31
|
-
synchronously on the device. It will reduce the execution performance of the program. At this time, when
|
|
32
|
-
an error occurs in the execution of the operator, the location of the error script code can be located
|
|
33
|
-
according to the call stack of the error.
|
|
27
|
+
Indicates that synchronizing the execution of the startup device reduces the execution performance of the program.
|
|
34
28
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
29
|
+
- In the initial state when this interface is not called, the operator executes asynchronously on the device.
|
|
30
|
+
In this case, when an error occurs in the execution of the operator,
|
|
31
|
+
it will not be possible to locate the position of the particular error script code.
|
|
32
|
+
- When this interface is called, the operator is executed in a synchronized manner on the device.
|
|
33
|
+
At this point, when an error occurs in the execution of the operator,
|
|
34
|
+
the location of the erroneous script code can be located based on the error call stack.
|
|
39
35
|
|
|
40
36
|
Examples:
|
|
41
37
|
>>> import mindspore as ms
|
|
@@ -146,3 +142,36 @@ def set_cpu_affinity(enable_affinity, affinity_cpu_list=None):
|
|
|
146
142
|
else:
|
|
147
143
|
RuntimeConf.get_instance().set_thread_bind_core_configured()
|
|
148
144
|
return
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
@args_type_check(thread_num=int, kernel_group_num=int)
|
|
148
|
+
def set_kernel_launch_group(thread_num=2, kernel_group_num=8):
|
|
149
|
+
"""
|
|
150
|
+
O0 mode supports operator batch parallel delivery interface, supports enabling
|
|
151
|
+
parallel delivery, and configures parallel number.
|
|
152
|
+
|
|
153
|
+
Args:
|
|
154
|
+
thread_num (int, optional): The number of concurrent threads, generally not recommended
|
|
155
|
+
to increase. The `thread_num` and the number of threads configured by the existing interface
|
|
156
|
+
mindspore.runtime.dispatch_threads_num are independent of each other. Default value is ``2``.
|
|
157
|
+
kernel_group_num (int, optional): Total number of operator groups,
|
|
158
|
+
kernel_group_num/thread_num groups per thread. Default value is ``8``.
|
|
159
|
+
|
|
160
|
+
Examples:
|
|
161
|
+
>>> import mindspore as ms
|
|
162
|
+
>>> ms.runtime.set_kernel_launch_group(thread_num=2, kernel_group_num=8)
|
|
163
|
+
"""
|
|
164
|
+
if RuntimeConf.get_instance().is_kernel_launch_group_configured():
|
|
165
|
+
raise RuntimeError("The 'kernel_launch_group' can not be set repeatedly.")
|
|
166
|
+
|
|
167
|
+
if thread_num < 1:
|
|
168
|
+
raise ValueError(f"The value of thread_num should be at least 1, but got {thread_num}")
|
|
169
|
+
|
|
170
|
+
if kernel_group_num < 1:
|
|
171
|
+
raise ValueError(f"The value of kernel_group_num should be at least 1, but got {kernel_group_num}")
|
|
172
|
+
|
|
173
|
+
if (kernel_group_num % thread_num) != 0:
|
|
174
|
+
raise ValueError(f"Invalid parameter value, kernel_group_num: {kernel_group_num} cannot "
|
|
175
|
+
f"be evenly divisible by thread_num: {thread_num}")
|
|
176
|
+
|
|
177
|
+
return RuntimeConf.get_instance().set_kernel_launch_group(thread_num, kernel_group_num)
|
mindspore/runtime/memory.py
CHANGED
|
@@ -23,11 +23,19 @@ from mindspore import log as logger
|
|
|
23
23
|
import mindspore as ms
|
|
24
24
|
|
|
25
25
|
_MEMORY_PATTERN = r'[1-9][0-9]*(\.)?[0-9]*GB|0\.[0-9]*GB'
|
|
26
|
+
_RESERVE_PATTERN = r'[0-9][0-9]*(\.)?[0-9]*GB|0\.[0-9]*GB'
|
|
26
27
|
_device_context_mgr = DeviceContextManager.get_instance()
|
|
27
28
|
|
|
28
29
|
|
|
29
|
-
@args_type_check(
|
|
30
|
-
|
|
30
|
+
@args_type_check(
|
|
31
|
+
init_size=str,
|
|
32
|
+
increase_size=str,
|
|
33
|
+
max_size=str,
|
|
34
|
+
optimize_level=str,
|
|
35
|
+
huge_page_reserve_size=str,
|
|
36
|
+
)
|
|
37
|
+
def set_memory(init_size="2GB", increase_size="2GB", max_size="1024GB", optimize_level="O0",
|
|
38
|
+
huge_page_reserve_size="0GB"):
|
|
31
39
|
"""
|
|
32
40
|
Set the memory parameters of runtime device memory management that is implemented using a memory pool.
|
|
33
41
|
|
|
@@ -41,6 +49,7 @@ def set_memory(init_size="2GB", increase_size="2GB", max_size="1024GB", optimize
|
|
|
41
49
|
The actual used memory size is the minimum of the available memory of the device and max_device_memory.
|
|
42
50
|
The format is "xxGB". Default is the maximum available memory of the device, expressed as ``1024GB``.
|
|
43
51
|
optimize_level (str): The memory optimize level. The value must be in ['O0', 'O1']. Default: ``O0`` .
|
|
52
|
+
huge_page_reserve_size (str): The reserved size of huge page memory. The format is "xxGB". Default: ``0GB``.
|
|
44
53
|
|
|
45
54
|
Supported Platforms:
|
|
46
55
|
``Ascend`` ``GPU`` ``CPU``
|
|
@@ -48,7 +57,7 @@ def set_memory(init_size="2GB", increase_size="2GB", max_size="1024GB", optimize
|
|
|
48
57
|
Examples:
|
|
49
58
|
>>> import mindspore as ms
|
|
50
59
|
>>> ms.set_device("Ascend", 1)
|
|
51
|
-
>>> ms.runtime.set_memory("10GB", "2GB", "60GB", "O1")
|
|
60
|
+
>>> ms.runtime.set_memory("10GB", "2GB", "60GB", "O1", "0GB")
|
|
52
61
|
"""
|
|
53
62
|
if RuntimeConf.get_instance().is_memory_configured():
|
|
54
63
|
raise RuntimeError("The 'set_memory' can not be set repeatedly.")
|
|
@@ -56,9 +65,11 @@ def set_memory(init_size="2GB", increase_size="2GB", max_size="1024GB", optimize
|
|
|
56
65
|
_check_memory_conf_valid(init_size)
|
|
57
66
|
_check_memory_conf_valid(increase_size)
|
|
58
67
|
_check_memory_conf_valid(max_size)
|
|
68
|
+
Validator.check_str_by_regular(huge_page_reserve_size, _RESERVE_PATTERN)
|
|
59
69
|
init_value = float(init_size[:-2])
|
|
60
70
|
increase_value = float(increase_size[:-2])
|
|
61
71
|
max_value = float(max_size[:-2])
|
|
72
|
+
huge_page_reserve_value = float(huge_page_reserve_size[:-2])
|
|
62
73
|
|
|
63
74
|
memory_optimize_levels = ["O0", "O1"]
|
|
64
75
|
if optimize_level not in memory_optimize_levels:
|
|
@@ -68,19 +79,25 @@ def set_memory(init_size="2GB", increase_size="2GB", max_size="1024GB", optimize
|
|
|
68
79
|
if optimize_level == "O1":
|
|
69
80
|
optimize_value = 1
|
|
70
81
|
|
|
71
|
-
return RuntimeConf.get_instance().set_memory(
|
|
82
|
+
return RuntimeConf.get_instance().set_memory(
|
|
83
|
+
init_value,
|
|
84
|
+
increase_value,
|
|
85
|
+
max_value,
|
|
86
|
+
optimize_value,
|
|
87
|
+
huge_page_reserve_value,
|
|
88
|
+
)
|
|
72
89
|
|
|
73
90
|
|
|
74
91
|
def _check_memory_conf_valid(memory_size):
|
|
75
92
|
"""
|
|
76
|
-
Check whether the configuration memory value format is "xxGB" and can not be "
|
|
93
|
+
Check whether the configuration memory value format is "xxGB" and can not be "0GB".
|
|
77
94
|
"""
|
|
78
95
|
if not Validator.check_str_by_regular(memory_size, _MEMORY_PATTERN):
|
|
79
96
|
raise ValueError("The memory value should be in correct format!"
|
|
80
97
|
"It must be a string ending with 'GB', in addition to that, it must contain "
|
|
81
98
|
"only numbers or decimal points, such as \"5GB\" or \"3.5GB\", but got {}."
|
|
82
99
|
.format(memory_size))
|
|
83
|
-
if memory_size == "
|
|
100
|
+
if memory_size == "0GB" or memory_size == "0.0GB":
|
|
84
101
|
raise ValueError("The memory value should not be \"0GB\".")
|
|
85
102
|
|
|
86
103
|
def _is_initialized(device_target):
|
|
@@ -97,7 +114,7 @@ def memory_stats():
|
|
|
97
114
|
Returns status information queried from the memory pool.
|
|
98
115
|
|
|
99
116
|
Note:
|
|
100
|
-
|
|
117
|
+
For the `CPU` backend, a dictionary with empty data is always returned.
|
|
101
118
|
|
|
102
119
|
Returns:
|
|
103
120
|
dict, the queried memory information.
|
|
@@ -196,7 +213,7 @@ def empty_cache():
|
|
|
196
213
|
|
|
197
214
|
Note:
|
|
198
215
|
Currently, the MindSpore memory pool does not have the function of releasing memory fragments.
|
|
199
|
-
This interface is reserved but implemented as an empty method and prompted in log mode.
|
|
216
|
+
This interface is reserved but implemented as an empty method and prompted in log mode when using.
|
|
200
217
|
"""
|
|
201
218
|
logger.warning(f"The empty_cache operation is currently not supported.")
|
|
202
219
|
|
|
@@ -129,7 +129,7 @@ def obfuscate_ckpt(network, ckpt_files, target_modules=None, obf_config=None, sa
|
|
|
129
129
|
Args:
|
|
130
130
|
network (nn.Cell): The original network that need to be obfuscated.
|
|
131
131
|
ckpt_files (str): The directory path of original ckpt files.
|
|
132
|
-
target_modules (list[str]): The target ops that need to be obfuscated in the network. The first string
|
|
132
|
+
target_modules (list[str], optional): The target ops that need to be obfuscated in the network. The first string
|
|
133
133
|
represents the network path of the target ops in the original network, which should be in form of
|
|
134
134
|
``"A/B/C"``. The second string represents the names of multiple target ops in the same path, which
|
|
135
135
|
should be in form of ``"D|E|F"``. For example, the target_modules of GPT2 can be ``['backbone/blocks
|
|
@@ -137,10 +137,11 @@ def obfuscate_ckpt(network, ckpt_files, target_modules=None, obf_config=None, sa
|
|
|
137
137
|
format of 'obfuscate_layers:all' or 'obfuscate_layers:int', which represents the number of layers
|
|
138
138
|
need to be obfuscated of duplicate layers (such as transformer layers or resnet blocks).
|
|
139
139
|
Default: ``None``.
|
|
140
|
-
obf_config (dict): The configuration of model obfuscation polices. Default: ``None``.
|
|
141
|
-
saved_path (str): The directory path for saving obfuscated ckpt files. Default: ``'./'``.
|
|
142
|
-
obfuscate_scale (Union[float, int]): Obfuscate scale of weights.
|
|
143
|
-
|
|
140
|
+
obf_config (dict, optional): The configuration of model obfuscation polices. Default: ``None``.
|
|
141
|
+
saved_path (str, optional): The directory path for saving obfuscated ckpt files. Default: ``'./'``.
|
|
142
|
+
obfuscate_scale (Union[float, int], optional): Obfuscate scale of weights.
|
|
143
|
+
The generated random obf_ratios will be in
|
|
144
|
+
range of (1 / obfuscate_scale, obfuscate_scale). Default: ``100``.
|
|
144
145
|
|
|
145
146
|
Returns:
|
|
146
147
|
dict[str], obf_metadata, which is the necessary data that needs to be load when running obfuscated network.
|
|
@@ -371,7 +372,8 @@ def load_obf_params_into_net(network, target_modules=None, obf_ratios=None, obf_
|
|
|
371
372
|
|
|
372
373
|
Args:
|
|
373
374
|
network (nn.Cell): The original network that need to be obfuscated.
|
|
374
|
-
target_modules (list[str]): The target ops that need to be obfuscated in the network.
|
|
375
|
+
target_modules (list[str], optional): The target ops that need to be obfuscated in the network.
|
|
376
|
+
The first string
|
|
375
377
|
represents the network path of the target ops in the original network, which should be in form of
|
|
376
378
|
``"A/B/C"``. The second string represents the names of multiple target ops in the same path, which
|
|
377
379
|
should be in form of ``"D|E|F"``. For example, thr target_modules of GPT2 can be ``['backbone
|
|
@@ -379,9 +381,10 @@ def load_obf_params_into_net(network, target_modules=None, obf_ratios=None, obf_
|
|
|
379
381
|
in the format of 'obfuscate_layers:all' or 'obfuscate_layers:int', which represents the number of
|
|
380
382
|
layers need to be obfuscated of duplicate layers (such as transformer layers or resnet blocks).
|
|
381
383
|
Default: ``None``.
|
|
382
|
-
obf_ratios (Tensor): The obf ratios generated when execute :func:`mindspore.obfuscate_ckpt`.
|
|
383
|
-
|
|
384
|
-
|
|
384
|
+
obf_ratios (Tensor, optional): The obf ratios generated when execute :func:`mindspore.obfuscate_ckpt`.
|
|
385
|
+
Default: ``None``.
|
|
386
|
+
obf_config (dict, optional): The configuration of model obfuscation polices. Default: ``None``.
|
|
387
|
+
data_parallel_num (int, optional): The data parallel number of parallel training. Default: ``1``.
|
|
385
388
|
kwargs (dict): Configuration options dictionary.
|
|
386
389
|
|
|
387
390
|
- ignored_func_decorators (list[str]): The name list of function decorators in network's python code.
|
mindspore/swresample-4.dll
CHANGED
|
Binary file
|
mindspore/swscale-6.dll
CHANGED
|
Binary file
|
mindspore/tbbmalloc.dll
CHANGED
|
Binary file
|
mindspore/tinyxml2.dll
CHANGED
|
Binary file
|
mindspore/train/__init__.py
CHANGED
|
@@ -25,12 +25,12 @@ from mindspore.train import amp
|
|
|
25
25
|
from mindspore.train.amp import build_train_network
|
|
26
26
|
from mindspore.train.loss_scale_manager import LossScaleManager, FixedLossScaleManager, DynamicLossScaleManager
|
|
27
27
|
from mindspore.train.serialization import save_checkpoint, load_checkpoint, load_param_into_net, export, \
|
|
28
|
-
load, parse_print,
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
load, parse_print, async_ckpt_thread_status, convert_model, export_split_mindir, \
|
|
29
|
+
load_checkpoint_async, check_checkpoint, get_ckpt_path_with_strategy, ckpt_to_safetensors, safetensors_to_ckpt, \
|
|
30
|
+
build_searched_strategy, merge_sliced_parameter, load_distributed_checkpoint, restore_group_info_list
|
|
31
31
|
from mindspore.train.callback import Callback, LossMonitor, TimeMonitor, ModelCheckpoint, SummaryCollector, \
|
|
32
32
|
CheckpointConfig, RunContext, LearningRateScheduler, SummaryLandscape, FlopsUtilizationCollector, \
|
|
33
|
-
History, LambdaCallback, ReduceLROnPlateau, EarlyStopping, OnRequestExit, BackupAndRestore,
|
|
33
|
+
History, LambdaCallback, ReduceLROnPlateau, EarlyStopping, OnRequestExit, BackupAndRestore, TrainFaultTolerance
|
|
34
34
|
from mindspore.train.summary import SummaryRecord
|
|
35
35
|
from mindspore.train.train_thor import ConvertNetUtils, ConvertModelUtils
|
|
36
36
|
from mindspore.train.metrics import *
|
|
@@ -38,10 +38,10 @@ from mindspore.train.data_sink import data_sink
|
|
|
38
38
|
|
|
39
39
|
__all__ = ["Model", "DatasetHelper", "connect_network_with_dataset", "build_train_network", "LossScaleManager",
|
|
40
40
|
"FixedLossScaleManager", "DynamicLossScaleManager", "save_checkpoint", "load_checkpoint", "check_checkpoint",
|
|
41
|
-
"load_param_into_net", "export", "load", "export_split_mindir", "parse_print", "
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
41
|
+
"load_param_into_net", "export", "load", "export_split_mindir", "parse_print", "async_ckpt_thread_status",
|
|
42
|
+
"convert_model", "data_sink", "load_checkpoint_async", "get_ckpt_path_with_strategy", "ckpt_to_safetensors",
|
|
43
|
+
"safetensors_to_ckpt", "build_searched_strategy", "merge_sliced_parameter", "load_distributed_checkpoint",
|
|
44
|
+
"restore_group_info_list"]
|
|
45
45
|
__all__.extend(callback.__all__)
|
|
46
46
|
__all__.extend(summary.__all__)
|
|
47
47
|
__all__.extend(train_thor.__all__)
|