mindspore 2.6.0rc1__cp311-cp311-win_amd64.whl → 2.7.0__cp311-cp311-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 +2 -2
- mindspore/_c_dataengine.cp311-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp311-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp311-win_amd64.pyd +0 -0
- mindspore/_checkparam.py +42 -11
- mindspore/_extends/builtin_operations.py +3 -3
- mindspore/{_deprecated → _extends/optimize}/__init__.py +9 -3
- mindspore/_extends/optimize/cell_utils.py +96 -0
- mindspore/_extends/parallel_compile/akg_compiler/custom.py +1109 -0
- mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
- mindspore/_extends/parse/__init__.py +3 -3
- mindspore/_extends/parse/compile_config.py +44 -22
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +1 -2
- mindspore/_extends/parse/parser.py +65 -84
- mindspore/_extends/parse/resources.py +39 -0
- mindspore/_extends/parse/standard_method.py +58 -14
- mindspore/_extends/parse/trope.py +8 -1
- mindspore/_extends/pijit/__init__.py +1 -2
- mindspore/_extends/pijit/pijit_func_white_list.py +2 -5
- mindspore/amp.py +4 -22
- mindspore/atlprov.dll +0 -0
- mindspore/avcodec-59.dll +0 -0
- mindspore/avdevice-59.dll +0 -0
- mindspore/avfilter-8.dll +0 -0
- mindspore/avformat-59.dll +0 -0
- mindspore/avutil-57.dll +0 -0
- mindspore/boost/adasum.py +1 -1
- mindspore/boost/boost_cell_wrapper.py +4 -4
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/common/__init__.py +43 -12
- mindspore/common/_grad_function.py +2 -1
- mindspore/common/_pijit_context.py +28 -7
- mindspore/common/_stub_tensor.py +1 -209
- mindspore/common/_tensor_cpp_method.py +1 -1
- mindspore/common/_tensor_docs.py +178 -53
- mindspore/common/_utils.py +9 -1
- mindspore/common/api.py +377 -203
- mindspore/common/dtype.py +108 -57
- mindspore/common/dump.py +11 -16
- mindspore/common/dynamic_shape/__init__.py +0 -0
- mindspore/common/{auto_dynamic_shape.py → dynamic_shape/auto_dynamic_shape.py} +17 -23
- mindspore/common/dynamic_shape/enable_dynamic.py +197 -0
- mindspore/common/file_system.py +59 -9
- mindspore/common/generator.py +5 -3
- mindspore/common/hook_handle.py +33 -5
- mindspore/common/jit_config.py +1 -1
- mindspore/common/jit_trace.py +84 -105
- mindspore/common/np_dtype.py +3 -3
- mindspore/common/parameter.py +27 -29
- mindspore/common/recompute.py +5 -7
- mindspore/common/sparse_tensor.py +0 -3
- mindspore/common/symbol.py +0 -1
- mindspore/common/tensor.py +117 -131
- mindspore/communication/_comm_helper.py +46 -4
- mindspore/communication/management.py +79 -7
- mindspore/context.py +67 -55
- mindspore/dataset/__init__.py +1 -1
- mindspore/dataset/audio/transforms.py +1 -1
- mindspore/dataset/core/config.py +38 -4
- mindspore/dataset/engine/datasets.py +350 -322
- mindspore/dataset/engine/datasets_user_defined.py +70 -24
- mindspore/dataset/engine/iterators.py +2 -2
- mindspore/dataset/engine/obs/config_loader.py +2 -2
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +8 -0
- mindspore/dataset/transforms/c_transforms.py +2 -2
- mindspore/dataset/transforms/py_transforms.py +7 -3
- mindspore/dataset/transforms/transforms.py +10 -6
- mindspore/dataset/vision/__init__.py +1 -1
- mindspore/dataset/vision/py_transforms.py +8 -8
- mindspore/dataset/vision/transforms.py +17 -5
- mindspore/dataset/vision/utils.py +632 -21
- mindspore/dataset/vision/validators.py +1 -0
- mindspore/device_context/ascend/device.py +1 -1
- mindspore/device_context/ascend/op_tuning.py +35 -1
- mindspore/device_context/gpu/__init__.py +2 -2
- mindspore/device_context/gpu/device.py +1 -1
- mindspore/device_context/gpu/op_precision.py +4 -2
- mindspore/device_context/gpu/op_tuning.py +6 -3
- mindspore/device_manager.py +16 -9
- mindspore/dnnl.dll +0 -0
- mindspore/dpcmi.dll +0 -0
- mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +3 -4
- mindspore/experimental/llm_boost/atb/boost_base.py +2 -3
- mindspore/experimental/optim/adadelta.py +13 -20
- mindspore/experimental/optim/adagrad.py +15 -22
- mindspore/experimental/optim/adam.py +17 -24
- mindspore/experimental/optim/adamax.py +14 -22
- mindspore/experimental/optim/adamw.py +28 -34
- mindspore/experimental/optim/asgd.py +15 -25
- mindspore/experimental/optim/lr_scheduler.py +27 -45
- mindspore/experimental/optim/nadam.py +14 -24
- mindspore/experimental/optim/optimizer.py +13 -23
- mindspore/experimental/optim/radam.py +18 -24
- mindspore/experimental/optim/rmsprop.py +14 -25
- mindspore/experimental/optim/rprop.py +15 -26
- mindspore/experimental/optim/sgd.py +9 -19
- mindspore/hal/__init__.py +4 -4
- mindspore/hal/contiguous_tensors_handle.py +2 -2
- mindspore/hal/memory.py +27 -7
- mindspore/include/api/cell.h +65 -5
- mindspore/include/api/cfg.h +24 -7
- mindspore/include/api/context.h +1 -0
- mindspore/include/api/delegate.h +10 -2
- mindspore/include/api/dual_abi_helper.h +100 -19
- mindspore/include/api/graph.h +14 -1
- mindspore/include/api/kernel.h +16 -3
- mindspore/include/api/kernel_api.h +9 -1
- mindspore/include/api/metrics/accuracy.h +9 -0
- mindspore/include/api/model.h +8 -1
- mindspore/include/api/model_group.h +4 -0
- mindspore/include/api/model_parallel_runner.h +2 -0
- mindspore/include/api/status.h +48 -10
- mindspore/include/api/types.h +8 -3
- mindspore/include/c_api/model_c.h +0 -58
- mindspore/include/c_api/tensor_c.h +0 -26
- mindspore/include/dataset/constants.h +9 -0
- mindspore/include/dataset/vision_ascend.h +1 -1
- mindspore/jpeg62.dll +0 -0
- mindspore/mindrecord/tools/cifar10.py +61 -11
- mindspore/mindrecord/tools/cifar10_to_mr.py +5 -0
- 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_cpu_res_manager.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_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 +6 -46
- mindspore/mint/distributed/__init__.py +5 -0
- mindspore/mint/distributed/distributed.py +429 -23
- mindspore/mint/nn/__init__.py +1 -1
- mindspore/mint/nn/functional.py +53 -6
- mindspore/mint/nn/layer/_functions.py +163 -294
- mindspore/mint/nn/layer/activation.py +8 -6
- mindspore/mint/nn/layer/conv.py +140 -104
- mindspore/mint/nn/layer/normalization.py +11 -25
- mindspore/mint/optim/adam.py +19 -18
- mindspore/mint/optim/adamw.py +14 -8
- mindspore/mint/optim/sgd.py +5 -5
- 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/cell.py +491 -623
- mindspore/nn/grad/cell_grad.py +11 -12
- mindspore/nn/layer/activation.py +36 -36
- mindspore/nn/layer/basic.py +74 -77
- mindspore/nn/layer/channel_shuffle.py +4 -4
- mindspore/nn/layer/combined.py +4 -2
- mindspore/nn/layer/conv.py +117 -110
- mindspore/nn/layer/dense.py +9 -7
- mindspore/nn/layer/embedding.py +50 -52
- mindspore/nn/layer/image.py +38 -40
- mindspore/nn/layer/math.py +111 -112
- mindspore/nn/layer/normalization.py +56 -44
- mindspore/nn/layer/pooling.py +58 -63
- mindspore/nn/layer/rnn_cells.py +33 -33
- mindspore/nn/layer/rnns.py +56 -56
- mindspore/nn/layer/thor_layer.py +74 -73
- mindspore/nn/layer/transformer.py +11 -1
- mindspore/nn/learning_rate_schedule.py +20 -20
- mindspore/nn/loss/loss.py +79 -81
- mindspore/nn/optim/adam.py +4 -6
- mindspore/nn/optim/adasum.py +2 -2
- mindspore/nn/optim/asgd.py +2 -0
- mindspore/nn/optim/lamb.py +1 -3
- mindspore/nn/optim/optimizer.py +1 -1
- mindspore/nn/optim/tft_wrapper.py +2 -3
- mindspore/nn/optim/thor.py +2 -2
- mindspore/nn/probability/distribution/_utils/utils.py +2 -2
- mindspore/nn/probability/distribution/exponential.py +2 -1
- mindspore/nn/probability/distribution/poisson.py +2 -1
- mindspore/nn/sparse/sparse.py +3 -3
- mindspore/nn/wrap/cell_wrapper.py +73 -42
- mindspore/nn/wrap/grad_reducer.py +37 -52
- mindspore/nn/wrap/loss_scale.py +72 -74
- mindspore/numpy/array_creations.py +7 -7
- mindspore/numpy/fft.py +1 -1
- mindspore/numpy/math_ops.py +5 -5
- mindspore/numpy/utils_const.py +1 -1
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/_grad_experimental/grad_comm_ops.py +51 -13
- mindspore/ops/_grad_experimental/grad_debug_ops.py +14 -0
- mindspore/ops/_grad_experimental/grad_inner_ops.py +0 -9
- mindspore/ops/_op_impl/cpu/__init__.py +1 -0
- mindspore/{experimental/es/__init__.py → ops/_op_impl/cpu/joinedstr_op.py} +12 -6
- mindspore/ops/_vmap/vmap_array_ops.py +31 -13
- mindspore/ops/_vmap/vmap_nn_ops.py +8 -16
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +54 -13
- mindspore/ops/auto_generate/gen_extend_func.py +27 -145
- mindspore/ops/auto_generate/gen_ops_def.py +1027 -347
- mindspore/ops/auto_generate/gen_ops_prim.py +2341 -1117
- mindspore/ops/auto_generate/pyboost_inner_prim.py +31 -1
- mindspore/ops/composite/__init__.py +10 -0
- mindspore/ops/composite/base.py +9 -5
- mindspore/ops/composite/multitype_ops/__init__.py +12 -1
- mindspore/ops/composite/multitype_ops/_compile_utils.py +133 -109
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -1
- mindspore/ops/composite/multitype_ops/add_impl.py +70 -2
- mindspore/ops/composite/multitype_ops/div_impl.py +49 -0
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +29 -0
- mindspore/ops/composite/multitype_ops/getitem_impl.py +11 -0
- mindspore/ops/composite/multitype_ops/mod_impl.py +5 -3
- mindspore/ops/composite/multitype_ops/mul_impl.py +49 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +57 -0
- mindspore/ops/composite/multitype_ops/sub_impl.py +34 -0
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +14 -0
- mindspore/ops/function/__init__.py +4 -1
- mindspore/ops/function/_add_attr_func.py +11 -6
- mindspore/ops/function/array_func.py +19 -102
- mindspore/ops/function/debug_func.py +8 -5
- mindspore/ops/function/grad/grad_func.py +5 -13
- mindspore/ops/function/math_func.py +77 -572
- mindspore/ops/function/nn_func.py +46 -94
- mindspore/ops/function/other_func.py +4 -1
- mindspore/ops/function/random_func.py +44 -5
- mindspore/ops/function/vmap_func.py +2 -1
- mindspore/ops/functional.py +4 -4
- mindspore/ops/functional_overload.py +594 -18
- mindspore/ops/op_info_register.py +21 -0
- mindspore/ops/operations/__init__.py +16 -11
- mindspore/ops/operations/_custom_ops_utils.py +689 -34
- mindspore/ops/operations/_inner_ops.py +14 -18
- mindspore/ops/operations/_sequence_ops.py +1 -1
- mindspore/ops/operations/array_ops.py +5 -51
- mindspore/ops/operations/comm_ops.py +186 -41
- mindspore/ops/operations/custom_ops.py +303 -177
- mindspore/ops/operations/debug_ops.py +59 -4
- mindspore/ops/operations/image_ops.py +13 -13
- mindspore/ops/operations/manually_defined/ops_def.py +27 -28
- mindspore/ops/operations/math_ops.py +8 -9
- mindspore/ops/operations/nn_ops.py +8 -40
- mindspore/ops/primitive.py +9 -20
- mindspore/ops/tensor_method.py +63 -15
- mindspore/ops_generate/api/cpp_create_prim_instance_helper_generator.py +1 -1
- mindspore/ops_generate/api/functional_map_cpp_generator.py +10 -9
- mindspore/ops_generate/api/functions_cc_generator.py +58 -10
- mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +1 -1
- mindspore/ops_generate/common/base_generator.py +14 -0
- mindspore/ops_generate/common/gen_constants.py +8 -3
- mindspore/ops_generate/common/gen_utils.py +0 -19
- mindspore/ops_generate/common/op_proto.py +11 -4
- mindspore/ops_generate/common/template.py +88 -11
- mindspore/ops_generate/gen_ops.py +1 -1
- mindspore/ops_generate/op_def/lite_ops_cpp_generator.py +4 -4
- mindspore/ops_generate/op_def/ops_def_cc_generator.py +0 -3
- mindspore/ops_generate/op_def/ops_name_h_generator.py +0 -3
- mindspore/ops_generate/op_def/ops_primitive_h_generator.py +0 -4
- mindspore/ops_generate/op_def_py/op_prim_py_generator.py +5 -2
- mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +49 -8
- mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +2 -2
- mindspore/ops_generate/pyboost/gen_pyboost_func.py +31 -16
- mindspore/ops_generate/pyboost/op_template_parser.py +98 -72
- mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +70 -273
- mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +14 -6
- mindspore/ops_generate/pyboost/pyboost_functions_impl_cpp_generator.py +316 -0
- mindspore/ops_generate/pyboost/pyboost_functions_py_generator.py +1 -1
- mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +5 -3
- mindspore/ops_generate/pyboost/pyboost_inner_prim_generator.py +1 -1
- mindspore/ops_generate/pyboost/pyboost_internal_functions_cpp_generator.py +76 -0
- mindspore/ops_generate/pyboost/pyboost_internal_functions_h_generator.py +76 -0
- mindspore/ops_generate/pyboost/pyboost_internal_kernel_info_adapter_generator.py +125 -0
- mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +4 -3
- mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +348 -61
- mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +1 -1
- mindspore/ops_generate/pyboost/pyboost_utils.py +118 -9
- mindspore/ops_generate/tensor_py_cc_generator.py +1 -24
- mindspore/parallel/_auto_parallel_context.py +16 -23
- mindspore/parallel/_cell_wrapper.py +113 -45
- mindspore/parallel/_parallel_serialization.py +4 -3
- mindspore/parallel/_ps_context.py +4 -6
- mindspore/parallel/_tensor.py +167 -12
- mindspore/parallel/_transformer/moe.py +1 -1
- mindspore/parallel/_transformer/transformer.py +17 -12
- mindspore/parallel/_utils.py +5 -11
- mindspore/parallel/auto_parallel.py +35 -14
- mindspore/parallel/checkpoint_convert.py +3 -3
- mindspore/parallel/checkpoint_transform.py +13 -7
- mindspore/parallel/cluster/process_entity/_api.py +88 -49
- mindspore/parallel/cluster/process_entity/_utils.py +95 -7
- mindspore/parallel/cluster/run.py +48 -7
- mindspore/parallel/function/__init__.py +8 -1
- mindspore/parallel/function/reshard_func.py +12 -12
- mindspore/parallel/nn/__init__.py +15 -2
- mindspore/parallel/nn/parallel_cell_wrapper.py +50 -14
- mindspore/parallel/nn/parallel_grad_reducer.py +7 -14
- mindspore/parallel/shard.py +10 -25
- mindspore/parallel/transform_safetensors.py +469 -174
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +2 -1
- mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +7 -7
- mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +3 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +12 -6
- mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +3 -3
- mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +3 -3
- mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +4 -4
- mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +3 -3
- mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +4 -1
- mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +2 -1
- mindspore/profiler/analysis/task_manager.py +1 -1
- mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +5 -1
- mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +2 -1
- mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +10 -9
- mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +43 -23
- mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +3 -2
- mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +9 -5
- mindspore/profiler/analysis/viewer/ms_operator_details_viewer.py +132 -0
- mindspore/profiler/common/constant.py +16 -0
- mindspore/profiler/common/msprof_cmd_tool.py +2 -2
- mindspore/profiler/common/path_manager.py +9 -0
- mindspore/profiler/common/profiler_context.py +50 -29
- mindspore/profiler/common/profiler_info.py +0 -16
- mindspore/profiler/common/profiler_meta_data.py +1 -0
- mindspore/profiler/common/profiler_op_analyse.py +239 -0
- mindspore/profiler/common/profiler_output_path.py +23 -8
- mindspore/profiler/common/profiler_parameters.py +128 -35
- mindspore/profiler/dynamic_profile/__init__.py +0 -0
- mindspore/profiler/dynamic_profile/dynamic_monitor_proxy.py +39 -0
- mindspore/profiler/dynamic_profile/dynamic_profiler_config_context.py +666 -0
- mindspore/profiler/dynamic_profile/dynamic_profiler_utils.py +62 -0
- mindspore/profiler/dynamic_profiler.py +374 -338
- mindspore/profiler/envprofiler.py +42 -12
- mindspore/profiler/experimental_config.py +112 -7
- mindspore/profiler/mstx.py +33 -12
- mindspore/profiler/platform/__init__.py +2 -3
- mindspore/profiler/platform/cpu_profiler.py +10 -4
- mindspore/profiler/platform/npu_profiler.py +30 -20
- mindspore/profiler/profiler.py +218 -154
- mindspore/profiler/profiler_action_controller.py +65 -77
- mindspore/profiler/profiler_interface.py +2 -2
- mindspore/profiler/schedule.py +10 -4
- mindspore/rewrite/common/config.py +1 -0
- mindspore/rewrite/common/namer.py +1 -0
- mindspore/rewrite/common/namespace.py +1 -0
- mindspore/rewrite/node/node.py +31 -11
- mindspore/rewrite/parsers/assign_parser.py +1 -1
- mindspore/rewrite/symbol_tree/symbol_tree.py +2 -2
- mindspore/run_check/_check_version.py +7 -10
- mindspore/runtime/__init__.py +8 -6
- mindspore/runtime/event.py +10 -4
- mindspore/runtime/executor.py +87 -45
- mindspore/runtime/memory.py +31 -32
- mindspore/runtime/thread_bind_core.py +299 -165
- mindspore/safeguard/rewrite_obfuscation.py +12 -13
- mindspore/swresample-4.dll +0 -0
- mindspore/swscale-6.dll +0 -0
- mindspore/tbbmalloc.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/_utils.py +17 -7
- mindspore/train/amp.py +43 -23
- mindspore/train/callback/__init__.py +5 -5
- mindspore/train/callback/_callback.py +2 -1
- mindspore/train/callback/_checkpoint.py +4 -14
- mindspore/train/callback/_flops_collector.py +11 -7
- mindspore/train/callback/_landscape.py +0 -1
- mindspore/train/callback/_train_fault_tolerance.py +98 -21
- mindspore/train/data_sink.py +15 -6
- mindspore/train/dataset_helper.py +14 -5
- mindspore/train/model.py +133 -69
- mindspore/train/serialization.py +168 -126
- mindspore/train/summary/summary_record.py +13 -2
- mindspore/train/train_thor/model_thor.py +2 -2
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +3 -2
- mindspore/utils/dryrun.py +0 -6
- mindspore/utils/runtime_execution_order_check.py +163 -77
- mindspore/utils/sdc_detect.py +68 -0
- mindspore/utils/utils.py +14 -17
- mindspore/vcmeta.dll +0 -0
- mindspore/vcruntime140.dll +0 -0
- mindspore/vcruntime140_1.dll +0 -0
- mindspore/version.py +1 -1
- {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/METADATA +5 -4
- {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/RECORD +403 -442
- mindspore/_deprecated/jit.py +0 -198
- mindspore/_extends/remote/kernel_build_server_ascend.py +0 -75
- mindspore/communication/_hccl_management.py +0 -297
- mindspore/experimental/es/embedding_service.py +0 -891
- mindspore/experimental/es/embedding_service_layer.py +0 -581
- mindspore/profiler/common/validator/__init__.py +0 -14
- mindspore/profiler/common/validator/validate_path.py +0 -84
- mindspore/profiler/parser/__init__.py +0 -14
- mindspore/profiler/parser/aicpu_data_parser.py +0 -272
- mindspore/profiler/parser/ascend_analysis/__init__.py +0 -14
- mindspore/profiler/parser/ascend_analysis/constant.py +0 -71
- mindspore/profiler/parser/ascend_analysis/file_manager.py +0 -180
- mindspore/profiler/parser/ascend_analysis/function_event.py +0 -185
- mindspore/profiler/parser/ascend_analysis/fwk_cann_parser.py +0 -136
- mindspore/profiler/parser/ascend_analysis/fwk_file_parser.py +0 -131
- mindspore/profiler/parser/ascend_analysis/msprof_timeline_parser.py +0 -104
- mindspore/profiler/parser/ascend_analysis/path_manager.py +0 -313
- mindspore/profiler/parser/ascend_analysis/profiler_info_parser.py +0 -123
- mindspore/profiler/parser/ascend_analysis/tlv_decoder.py +0 -86
- mindspore/profiler/parser/ascend_analysis/trace_event_manager.py +0 -75
- mindspore/profiler/parser/ascend_cluster_generator.py +0 -116
- mindspore/profiler/parser/ascend_communicate_generator.py +0 -314
- mindspore/profiler/parser/ascend_flops_generator.py +0 -116
- mindspore/profiler/parser/ascend_fpbp_generator.py +0 -82
- mindspore/profiler/parser/ascend_hccl_generator.py +0 -271
- mindspore/profiler/parser/ascend_integrate_generator.py +0 -42
- mindspore/profiler/parser/ascend_memory_generator.py +0 -185
- mindspore/profiler/parser/ascend_msprof_exporter.py +0 -282
- mindspore/profiler/parser/ascend_msprof_generator.py +0 -187
- mindspore/profiler/parser/ascend_op_generator.py +0 -334
- mindspore/profiler/parser/ascend_steptrace_generator.py +0 -94
- mindspore/profiler/parser/ascend_timeline_generator.py +0 -545
- mindspore/profiler/parser/base_timeline_generator.py +0 -483
- mindspore/profiler/parser/container.py +0 -229
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +0 -697
- mindspore/profiler/parser/flops_parser.py +0 -531
- mindspore/profiler/parser/framework_enum.py +0 -111
- mindspore/profiler/parser/framework_parser.py +0 -464
- mindspore/profiler/parser/framework_struct.py +0 -61
- mindspore/profiler/parser/gpu_analysis/__init__.py +0 -14
- mindspore/profiler/parser/gpu_analysis/function_event.py +0 -44
- mindspore/profiler/parser/gpu_analysis/fwk_file_parser.py +0 -89
- mindspore/profiler/parser/gpu_analysis/profiler_info_parser.py +0 -72
- mindspore/profiler/parser/hccl_parser.py +0 -573
- mindspore/profiler/parser/hwts_log_parser.py +0 -122
- mindspore/profiler/parser/integrator.py +0 -526
- mindspore/profiler/parser/memory_usage_parser.py +0 -277
- mindspore/profiler/parser/minddata_analyzer.py +0 -800
- mindspore/profiler/parser/minddata_parser.py +0 -186
- mindspore/profiler/parser/minddata_pipeline_parser.py +0 -299
- mindspore/profiler/parser/op_intermediate_parser.py +0 -149
- mindspore/profiler/parser/optime_parser.py +0 -250
- mindspore/profiler/parser/profiler_info.py +0 -213
- mindspore/profiler/parser/step_trace_parser.py +0 -666
- mindspore/utils/hooks.py +0 -81
- /mindspore/common/{_auto_dynamic.py → dynamic_shape/_auto_dynamic.py} +0 -0
- {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/WHEEL +0 -0
- {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/entry_points.txt +0 -0
- {mindspore-2.6.0rc1.dist-info → mindspore-2.7.0.dist-info}/top_level.txt +0 -0
|
@@ -81,7 +81,7 @@ def _transform_target_modules(target_modules):
|
|
|
81
81
|
obfuscate_layers = target_modules[2].split(':')
|
|
82
82
|
if obfuscate_layers[1] != 'all':
|
|
83
83
|
max_layers = int(obfuscate_layers[1])
|
|
84
|
-
layers =
|
|
84
|
+
layers = list(range(0, max_layers))
|
|
85
85
|
path_new = path.replace("blocks", "blocks/${layer}")
|
|
86
86
|
network_obf_template['insert_ops'][0]['input_y'] = "obf_metadata_${layer}"
|
|
87
87
|
weight_obf_template['weight_obf_ops'][0]['input_y'] = "obf_metadata_${layer}"
|
|
@@ -95,8 +95,8 @@ def _transform_target_modules(target_modules):
|
|
|
95
95
|
obf_config['obf_metadata_config'].append(obf_medatadata)
|
|
96
96
|
|
|
97
97
|
for name in target_list:
|
|
98
|
-
target_weight =
|
|
99
|
-
target_bias =
|
|
98
|
+
target_weight = '/'.join([path_new, name, 'weight'])
|
|
99
|
+
target_bias = '/'.join([path_new, name, 'bias'])
|
|
100
100
|
weight_obf = weight_obf_template.copy()
|
|
101
101
|
weight_obf['target'] = target_weight
|
|
102
102
|
bias_obf = weight_obf_template.copy()
|
|
@@ -185,7 +185,7 @@ def obfuscate_ckpt(network, ckpt_files, target_modules=None, obf_config=None, sa
|
|
|
185
185
|
def _gen_obf_metadata(config):
|
|
186
186
|
name = config.get('name')
|
|
187
187
|
if name is None:
|
|
188
|
-
return
|
|
188
|
+
return
|
|
189
189
|
save_metadata = config.get('save_metadata', False)
|
|
190
190
|
metadata_op_name = config.get('metadata_op')
|
|
191
191
|
layers = config.get('layers')
|
|
@@ -213,7 +213,6 @@ def obfuscate_ckpt(network, ckpt_files, target_modules=None, obf_config=None, sa
|
|
|
213
213
|
saved_obf_tensor = metadata_op(saved_obf_tensor)
|
|
214
214
|
if saved_obf_tensor is not None:
|
|
215
215
|
saved_metadata[obf_name] = saved_obf_tensor.asnumpy()
|
|
216
|
-
return True
|
|
217
216
|
|
|
218
217
|
if not isinstance(network, nn.Cell):
|
|
219
218
|
raise TypeError("network must be nn.Cell, but got {}.".format(type(network)))
|
|
@@ -283,13 +282,13 @@ def _obfuscate_single_ckpt(ckpt_name, obf_metadata, obf_config, saved_path):
|
|
|
283
282
|
def _obfuscate_param(param, obf_metadata, obf_ops, layer=0):
|
|
284
283
|
param_dtype = F.dtype(param)
|
|
285
284
|
obf_param = param
|
|
286
|
-
for
|
|
287
|
-
op_name =
|
|
285
|
+
for obf_op in obf_ops:
|
|
286
|
+
op_name = obf_op.get('name')
|
|
288
287
|
if not isinstance(op_name, str):
|
|
289
288
|
raise TypeError('{} should be str type, but got {}'.format(op_name, type(op_name)))
|
|
290
289
|
if op_name == 'mul':
|
|
291
290
|
input_x = obf_param
|
|
292
|
-
input_y_name = _get_op_input_name(
|
|
291
|
+
input_y_name = _get_op_input_name(obf_op, 'input_y', layer)
|
|
293
292
|
input_y = obf_metadata.get(input_y_name)
|
|
294
293
|
if input_x is None or input_y is None:
|
|
295
294
|
log.error("input_x or input_y is None")
|
|
@@ -297,22 +296,22 @@ def _obfuscate_single_ckpt(ckpt_name, obf_metadata, obf_config, saved_path):
|
|
|
297
296
|
input_y = F.cast(input_y, param_dtype)
|
|
298
297
|
obf_param = ops.mul(input_x, input_y)
|
|
299
298
|
elif op_name == 'permuate':
|
|
300
|
-
input_x_name = _get_op_input_name(
|
|
299
|
+
input_x_name = _get_op_input_name(obf_op, 'input_x', layer)
|
|
301
300
|
p = obf_metadata.get(input_x_name, None)
|
|
302
301
|
if p is None or obf_param is None:
|
|
303
302
|
log.error("input_x or param is None")
|
|
304
303
|
return None
|
|
305
304
|
obf_param = obf_param[p]
|
|
306
305
|
elif op_name == 'matmul':
|
|
307
|
-
input_x_name = _get_op_input_name(
|
|
308
|
-
input_y_name = _get_op_input_name(
|
|
306
|
+
input_x_name = _get_op_input_name(obf_op, 'input_x', layer)
|
|
307
|
+
input_y_name = _get_op_input_name(obf_op, 'input_y', layer)
|
|
309
308
|
input_x = _get_op_input(input_x_name, obf_param)
|
|
310
309
|
input_y = _get_op_input(input_y_name, obf_param)
|
|
311
310
|
if input_x is None or input_y is None:
|
|
312
311
|
log.error("the input_x or input_y of op: {} is None.".format(op_name))
|
|
313
312
|
return None
|
|
314
|
-
input_x = ops.transpose(input_x, (1, 0)) if
|
|
315
|
-
input_y = ops.transpose(input_y, (1, 0)) if
|
|
313
|
+
input_x = ops.transpose(input_x, (1, 0)) if obf_op.get('transpose_a', False) else input_x
|
|
314
|
+
input_y = ops.transpose(input_y, (1, 0)) if obf_op.get('transpose_b', False) else input_y
|
|
316
315
|
obf_param = ops.matmul(F.cast(input_x, param_dtype), F.cast(input_y, param_dtype))
|
|
317
316
|
else:
|
|
318
317
|
log.error("unsupported op, op must be matmul or permuate or mul, but got {}."
|
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/_utils.py
CHANGED
|
@@ -26,7 +26,7 @@ import numpy as np
|
|
|
26
26
|
from mindspore.common.tensor import Tensor
|
|
27
27
|
from mindspore._c_expression import TensorPy as Tensor_
|
|
28
28
|
from mindspore._c_expression import MSContext, ms_ctx_param
|
|
29
|
-
from mindspore.common.dtype import
|
|
29
|
+
from mindspore.common.dtype import _dtype_to_nptype, _pytype_to_dtype
|
|
30
30
|
from mindspore.common import dtype as mstype
|
|
31
31
|
from mindspore import context
|
|
32
32
|
from mindspore import log as logger
|
|
@@ -54,7 +54,7 @@ def _convert_type(types):
|
|
|
54
54
|
"""
|
|
55
55
|
ms_types = []
|
|
56
56
|
for np_type in types:
|
|
57
|
-
ms_type =
|
|
57
|
+
ms_type = _pytype_to_dtype(np_type) # pylint:disable=protected-access
|
|
58
58
|
ms_types.append(ms_type)
|
|
59
59
|
return ms_types
|
|
60
60
|
|
|
@@ -131,7 +131,7 @@ def _construct_tensor_list(types, shapes, batch_expand_num=1):
|
|
|
131
131
|
new_shape += (item * batch_expand_num,)
|
|
132
132
|
else:
|
|
133
133
|
new_shape += (item,)
|
|
134
|
-
tensor = Tensor(np.zeros(new_shape,
|
|
134
|
+
tensor = Tensor(np.zeros(new_shape, _dtype_to_nptype(type_)), dtype=type_) # pylint:disable=protected-access
|
|
135
135
|
tensor.virtual_flag = True
|
|
136
136
|
tensor_list.append(tensor)
|
|
137
137
|
return tensor_list
|
|
@@ -323,9 +323,15 @@ def parse_strategy_ckpt(file_name):
|
|
|
323
323
|
def _get_strategy_opt_shard(param_redundancy_dict, parameter_layout_opt_shard):
|
|
324
324
|
"""Strategy ckpt append opt shard."""
|
|
325
325
|
for key, value in parameter_layout_opt_shard.items():
|
|
326
|
-
if value[1]
|
|
327
|
-
opt_para_num = value[1]
|
|
326
|
+
if value[1] != 0:
|
|
328
327
|
param_redundancy_ranks = param_redundancy_dict.get(key)
|
|
328
|
+
if value[1] != -1:
|
|
329
|
+
opt_para_num = value[1]
|
|
330
|
+
elif param_redundancy_ranks:
|
|
331
|
+
opt_para_num = len(param_redundancy_ranks) * len(param_redundancy_ranks[0]) // value[0]
|
|
332
|
+
else:
|
|
333
|
+
raise ValueError(f"For get_parameter_redundancy, the format of the parallel communication domain for "
|
|
334
|
+
f"the optimizer is incorrect.")
|
|
329
335
|
res = []
|
|
330
336
|
for param_ranks in param_redundancy_ranks:
|
|
331
337
|
if len(param_ranks) % opt_para_num == 0:
|
|
@@ -576,7 +582,8 @@ def _progress_bar(iterable, total=None):
|
|
|
576
582
|
print_progress_bar(i)
|
|
577
583
|
|
|
578
584
|
|
|
579
|
-
def _load_and_transform(path, name_map, load_func, transform_func):
|
|
585
|
+
def _load_and_transform(path, name_map, load_func, transform_func=None):
|
|
586
|
+
"""use load_func to load and use transform_func to convert"""
|
|
580
587
|
if load_func is not None:
|
|
581
588
|
param_dict = load_func(path)
|
|
582
589
|
else:
|
|
@@ -584,5 +591,8 @@ def _load_and_transform(path, name_map, load_func, transform_func):
|
|
|
584
591
|
transform_dict = {}
|
|
585
592
|
for k, v in param_dict.items():
|
|
586
593
|
new_name = name_map.get(k, k) if name_map is not None else k
|
|
587
|
-
|
|
594
|
+
if transform_func is not None:
|
|
595
|
+
transform_dict[new_name] = transform_func(v, new_name)
|
|
596
|
+
else:
|
|
597
|
+
transform_dict[new_name] = v
|
|
588
598
|
return transform_dict
|
mindspore/train/amp.py
CHANGED
|
@@ -69,6 +69,9 @@ AMP_BLACK_LIST = [
|
|
|
69
69
|
AMP_AUTO_WHITE_LIST = [
|
|
70
70
|
P.Conv2D,
|
|
71
71
|
P.Conv3D,
|
|
72
|
+
gen.Conv2DExt,
|
|
73
|
+
gen.Conv3DExt,
|
|
74
|
+
gen.ConvTranspose2D,
|
|
72
75
|
P.Conv2DTranspose,
|
|
73
76
|
P.Conv3DTranspose,
|
|
74
77
|
gen.Convolution,
|
|
@@ -80,6 +83,10 @@ AMP_AUTO_WHITE_LIST = [
|
|
|
80
83
|
P.Einsum,
|
|
81
84
|
gen.Dense,
|
|
82
85
|
gen.Addmm,
|
|
86
|
+
gen.Addbmm,
|
|
87
|
+
gen.Addmv,
|
|
88
|
+
gen.Baddbmm,
|
|
89
|
+
gen.Mv,
|
|
83
90
|
]
|
|
84
91
|
|
|
85
92
|
AMP_AUTO_BLACK_LIST = [
|
|
@@ -90,8 +97,10 @@ AMP_AUTO_BLACK_LIST = [
|
|
|
90
97
|
P.Erfinv,
|
|
91
98
|
P.Exp,
|
|
92
99
|
P.Expm1,
|
|
93
|
-
|
|
94
|
-
|
|
100
|
+
gen.Log,
|
|
101
|
+
gen.Log10,
|
|
102
|
+
gen.Log1p,
|
|
103
|
+
gen.Log2,
|
|
95
104
|
P.Reciprocal,
|
|
96
105
|
P.Rsqrt,
|
|
97
106
|
P.Sinh,
|
|
@@ -103,6 +112,7 @@ AMP_AUTO_BLACK_LIST = [
|
|
|
103
112
|
P.BatchNorm,
|
|
104
113
|
gen.BatchNormExt,
|
|
105
114
|
gen.GroupNorm,
|
|
115
|
+
gen.Norm,
|
|
106
116
|
P.KLDivLoss,
|
|
107
117
|
P.SmoothL1Loss,
|
|
108
118
|
P.MultilabelMarginLoss,
|
|
@@ -113,7 +123,19 @@ AMP_AUTO_BLACK_LIST = [
|
|
|
113
123
|
P.Pdist,
|
|
114
124
|
P.Cdist,
|
|
115
125
|
P.Renorm,
|
|
126
|
+
gen.ReduceProd,
|
|
127
|
+
gen.Softmax,
|
|
128
|
+
gen.LogSoftmax,
|
|
129
|
+
gen.LogSoftmaxExt,
|
|
130
|
+
gen.CumProd,
|
|
131
|
+
gen.CumSum,
|
|
132
|
+
gen.CumsumExt,
|
|
133
|
+
gen.ProdExt,
|
|
134
|
+
gen.SumExt,
|
|
135
|
+
gen.L1LossExt,
|
|
116
136
|
gen.MSELossExt,
|
|
137
|
+
gen.NLLLoss,
|
|
138
|
+
gen.NLLLoss2d,
|
|
117
139
|
]
|
|
118
140
|
|
|
119
141
|
# Indicates which inputs of primitives need to be converted
|
|
@@ -358,7 +380,7 @@ def _auto_black_list(network, black_list, dtype):
|
|
|
358
380
|
return network
|
|
359
381
|
|
|
360
382
|
|
|
361
|
-
class
|
|
383
|
+
class AmpDecorator:
|
|
362
384
|
"""
|
|
363
385
|
Auto mixed precision decorator.
|
|
364
386
|
Type of lists: List[Tuple[str, List[int]]]
|
|
@@ -384,7 +406,7 @@ def _set_amp_decorator(obj, amp_level, amp_dtype, white_list, black_list):
|
|
|
384
406
|
if inspect.isfunction(obj) or inspect.ismethod(obj):
|
|
385
407
|
@functools.wraps(obj)
|
|
386
408
|
def wrapper(*args, **kwargs):
|
|
387
|
-
with
|
|
409
|
+
with AmpDecorator(amp_level, amp_dtype, white_list, black_list):
|
|
388
410
|
return obj(*args, **kwargs)
|
|
389
411
|
return wrapper
|
|
390
412
|
if isinstance(obj, nn.Cell):
|
|
@@ -423,26 +445,24 @@ def auto_mixed_precision(network, amp_level="O0", dtype=mstype.float16):
|
|
|
423
445
|
|
|
424
446
|
Operators in `auto_whitelist` are:
|
|
425
447
|
|
|
426
|
-
``Conv2D``, ``
|
|
427
|
-
``
|
|
448
|
+
``Conv2D``, ``Conv2DExt``, ``Conv3D``, ``Conv3DExt``, ``Conv2DTranspose``, ``ConvTranspose2D``,
|
|
449
|
+
``Conv3DTranspose``, ``Convolution``, ``MatMul``, ``MatMulExt``, ``BatchMatMul``, ``BatchMatMulExt``, ``PReLU``,
|
|
450
|
+
``Einsum``, ``Dense``, ``Addmm``, ``Addbmm``, ``Addmv``, ``Baddbmm``, ``Mv``
|
|
428
451
|
|
|
429
452
|
Operators in `auto_blacklist` are:
|
|
430
453
|
|
|
431
|
-
``Pow``, ``ACos``, ``Asin``, ``Cosh``, ``Erfinv``, ``Exp``, ``Expm1``, ``Log``, ``Log1p``, ``
|
|
432
|
-
``Rsqrt``, ``Sinh``, ``Tan``, ``Softplus``, ``SoftplusExt``, ``LayerNorm``, ``LayerNormExt``,
|
|
433
|
-
``BatchNormExt``, ``GroupNorm``, ``KLDivLoss``, ``SmoothL1Loss``, ``MultilabelMarginLoss``,
|
|
434
|
-
``TripletMarginLoss``, ``MultiMarginLoss``, ``BCEWithLogitsLoss``, ``Pdist``, ``Cdist``,
|
|
435
|
-
``ReduceProd``, ``Softmax``, ``LogSoftmax``, ``
|
|
436
|
-
``Norm``, ``MSELossExt``
|
|
454
|
+
``Pow``, ``ACos``, ``Asin``, ``Cosh``, ``Erfinv``, ``Exp``, ``Expm1``, ``Log``, ``Log10``, ``Log1p``, ``Log2``,
|
|
455
|
+
``Reciprocal``, ``Rsqrt``, ``Sinh``, ``Tan``, ``Softplus``, ``SoftplusExt``, ``LayerNorm``, ``LayerNormExt``,
|
|
456
|
+
``BatchNorm``, ``BatchNormExt``, ``GroupNorm``, ``KLDivLoss``, ``SmoothL1Loss``, ``MultilabelMarginLoss``,
|
|
457
|
+
``SoftMarginLoss``, ``TripletMarginLoss``, ``MultiMarginLoss``, ``BCEWithLogitsLoss``, ``Pdist``, ``Cdist``,
|
|
458
|
+
``Renorm``, ``ReduceProd``, ``Softmax``, ``LogSoftmax``, ``LogSoftmaxExt``, ``CumProd``, ``CumSum``,
|
|
459
|
+
``CumsumExt``, ``ProdExt``, ``SumExt``, ``Norm``, ``L1LossExt``, ``MSELossExt``, ``NLLLoss``, ``NLLLoss2d``
|
|
437
460
|
|
|
438
461
|
Operators in `promote_list` are:
|
|
439
462
|
|
|
440
463
|
``Addcdiv``, ``Addcmul``, ``Cross``, ``_PyboostCrossPrim``, ``Dot``, ``GridSampler2D``, ``GridSampler3D``,
|
|
441
464
|
``BiasAdd``, ``AddN``, ``Concat``
|
|
442
465
|
|
|
443
|
-
For details on automatic mixed precision, refer to
|
|
444
|
-
`Automatic Mix Precision <https://www.mindspore.cn/tutorials/en/master/beginner/mixed_precision.html>`_ .
|
|
445
|
-
|
|
446
466
|
Note:
|
|
447
467
|
- Repeatedly calling mixed-precision interfaces, such as `custom_mixed_precision` and `auto_mixed_precision`,
|
|
448
468
|
can result in a larger network hierarchy and slower performance.
|
|
@@ -638,7 +658,7 @@ def _add_loss_network(network, loss_fn, cast_model_type):
|
|
|
638
658
|
|
|
639
659
|
|
|
640
660
|
def _is_grad_accumulation(mcell):
|
|
641
|
-
if mcell.cls_name
|
|
661
|
+
if mcell.cls_name in {"GradAccumulationCell", "GradAccumulation"}:
|
|
642
662
|
return True
|
|
643
663
|
for cell in mcell.cells():
|
|
644
664
|
if _is_grad_accumulation(cell):
|
|
@@ -675,23 +695,23 @@ def build_train_network(network, optimizer, loss_fn=None, level='O0', boost_leve
|
|
|
675
695
|
Build the mixed precision training cell automatically.
|
|
676
696
|
|
|
677
697
|
Note:
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
698
|
+
After using `custom_mixed_precision` or `auto_mixed_precision` for precision conversion, it is not supported
|
|
699
|
+
to perform the precision conversion again. If `build_train_network` is used to train a converted network,
|
|
700
|
+
`level` need to be configured to ``O0`` to avoid the duplicated accuracy conversion.
|
|
681
701
|
|
|
682
702
|
Args:
|
|
683
703
|
network (Cell): Definition of the network.
|
|
684
704
|
optimizer (:class:`mindspore.nn.Optimizer`): Define the optimizer to update the Parameter.
|
|
685
|
-
loss_fn (Union[None, Cell]): Define the loss function. If None,
|
|
686
|
-
Default: ``None`` .
|
|
687
|
-
level (str): Supports ['O0', 'O1', 'O2', 'O3', 'auto']. Default: ``'O0'`` .
|
|
705
|
+
loss_fn (Union[None, Cell], optional): Define the loss function. If None,
|
|
706
|
+
the `network` should have the loss inside. Default: ``None`` .
|
|
707
|
+
level (str, optional): Supports ['O0', 'O1', 'O2', 'O3', 'auto']. Default: ``'O0'`` .
|
|
688
708
|
|
|
689
709
|
For details on amp level, refer to :func:`mindspore.amp.auto_mixed_precision`.
|
|
690
710
|
|
|
691
711
|
Property of `keep_batchnorm_fp32`, `cast_model_type` and `loss_scale_manager` determined by `level`
|
|
692
712
|
setting may be overwritten by settings in `kwargs`.
|
|
693
713
|
|
|
694
|
-
boost_level (str): Option for argument `level` in `mindspore.boost` , level for boost mode
|
|
714
|
+
boost_level (str, optional): Option for argument `level` in `mindspore.boost` , level for boost mode
|
|
695
715
|
training. Supports ['O0', 'O1', 'O2']. Default: ``'O0'`` .
|
|
696
716
|
|
|
697
717
|
- 'O0': Do not change.
|
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
"""Callback related classes and functions."""
|
|
16
16
|
from __future__ import absolute_import
|
|
17
17
|
|
|
18
|
+
__all__ = ["Callback", "LossMonitor", "TimeMonitor", "ModelCheckpoint", "FlopsUtilizationCollector",
|
|
19
|
+
"SummaryCollector", "CheckpointConfig", "RunContext", "LearningRateScheduler", "SummaryLandscape",
|
|
20
|
+
"History", "LambdaCallback", "ReduceLROnPlateau", "EarlyStopping", "OnRequestExit", "BackupAndRestore",
|
|
21
|
+
"TrainFaultTolerance"]
|
|
22
|
+
|
|
18
23
|
from mindspore.train.callback._callback import Callback
|
|
19
24
|
from mindspore.train.callback._callback import CallbackManager as _CallbackManager
|
|
20
25
|
from mindspore.train.callback._callback import InternalCallbackParam as _InternalCallbackParam
|
|
@@ -37,8 +42,3 @@ from mindspore.train.callback._on_request_exit import OnRequestExit
|
|
|
37
42
|
from mindspore.train.callback._backup_and_restore import BackupAndRestore
|
|
38
43
|
from mindspore.train.callback._flops_collector import FlopsUtilizationCollector
|
|
39
44
|
from mindspore.train.callback._train_fault_tolerance import TrainFaultTolerance
|
|
40
|
-
|
|
41
|
-
__all__ = ["Callback", "LossMonitor", "TimeMonitor", "ModelCheckpoint", "FlopsUtilizationCollector",
|
|
42
|
-
"SummaryCollector", "CheckpointConfig", "RunContext", "LearningRateScheduler", "SummaryLandscape",
|
|
43
|
-
"History", "LambdaCallback", "ReduceLROnPlateau", "EarlyStopping", "OnRequestExit", "BackupAndRestore",
|
|
44
|
-
"TrainFaultTolerance"]
|
|
@@ -60,7 +60,8 @@ def _fill_param_into_net(net, parameter_list):
|
|
|
60
60
|
if np_val.shape == (1,):
|
|
61
61
|
parameter_dict[param_name] = Parameter(np_val, name=param_name)
|
|
62
62
|
elif np_val.shape == ():
|
|
63
|
-
|
|
63
|
+
# pylint:disable=protected-access
|
|
64
|
+
parameter_dict[param_name] = Parameter(Tensor(np_val.tolist(), mstype._pytype_to_dtype(np_val.dtype)),
|
|
64
65
|
name=param_name)
|
|
65
66
|
else:
|
|
66
67
|
parameter_dict[param_name] = Parameter(Tensor(np_val), name=param_name)
|
|
@@ -411,8 +411,6 @@ class CheckpointConfig:
|
|
|
411
411
|
handle_append_info["epoch_num"] = 0
|
|
412
412
|
if "step_num" in append_info:
|
|
413
413
|
handle_append_info["step_num"] = 0
|
|
414
|
-
if "random_op" in append_info:
|
|
415
|
-
handle_append_info["random_op"] = 0
|
|
416
414
|
dict_num = 0
|
|
417
415
|
for element in append_info:
|
|
418
416
|
if not isinstance(element, str) and not isinstance(element, dict):
|
|
@@ -588,8 +586,6 @@ class ModelCheckpoint(Callback):
|
|
|
588
586
|
# save graph (only once)
|
|
589
587
|
if not self._graph_saved:
|
|
590
588
|
graph_file_name = os.path.join(self._directory, self._prefix + '-graph.meta')
|
|
591
|
-
if os.path.isfile(graph_file_name) and context.get_context("mode") == context.GRAPH_MODE:
|
|
592
|
-
os.remove(graph_file_name)
|
|
593
589
|
_save_graph(cb_params.train_network, graph_file_name)
|
|
594
590
|
self._graph_saved = True
|
|
595
591
|
self._save_ckpt(cb_params)
|
|
@@ -632,13 +628,6 @@ class ModelCheckpoint(Callback):
|
|
|
632
628
|
if "step_num" in self._append_dict:
|
|
633
629
|
self._append_dict["step_num"] = self._append_step_num + step_num
|
|
634
630
|
|
|
635
|
-
def _update_save_step(self, cb_params):
|
|
636
|
-
"""update step if used async d2h copy"""
|
|
637
|
-
step_num_in_epoch = int((cb_params.cur_step_num - 1) % cb_params.batch_num + 1)
|
|
638
|
-
if self._d2h_async and self._run_mode == context.GRAPH_MODE:
|
|
639
|
-
step_num_in_epoch -= 1
|
|
640
|
-
return step_num_in_epoch
|
|
641
|
-
|
|
642
631
|
def _save_ckpt(self, cb_params, force_to_save=False):
|
|
643
632
|
"""Save checkpoint files."""
|
|
644
633
|
if cb_params.cur_step_num == self._last_triggered_step:
|
|
@@ -649,7 +638,7 @@ class ModelCheckpoint(Callback):
|
|
|
649
638
|
self._flush_from_cache(cb_params)
|
|
650
639
|
|
|
651
640
|
save_ckpt = self._check_save_ckpt(cb_params, force_to_save)
|
|
652
|
-
step_num_in_epoch =
|
|
641
|
+
step_num_in_epoch = int((cb_params.cur_step_num - 1) % cb_params.batch_num + 1)
|
|
653
642
|
|
|
654
643
|
if save_ckpt:
|
|
655
644
|
|
|
@@ -713,12 +702,13 @@ class ModelCheckpoint(Callback):
|
|
|
713
702
|
save_checkpoint(network, cur_file, False, self._config.async_save,
|
|
714
703
|
self._append_dict, self._config.enc_key, self._config.enc_mode,
|
|
715
704
|
crc_check=self._config.crc_check, format=self._config.format,
|
|
716
|
-
incremental=self._map_param_inc, choice_func=choice_func
|
|
705
|
+
incremental=self._map_param_inc, choice_func=choice_func,
|
|
706
|
+
remove_redundancy=self._config.remove_redundancy)
|
|
717
707
|
else:
|
|
718
708
|
save_checkpoint(network, cur_file, self._config.integrated_save, self._config.async_save,
|
|
719
709
|
self._append_dict, self._config.enc_key, self._config.enc_mode,
|
|
720
710
|
crc_check=self._config.crc_check, format=self._config.format,
|
|
721
|
-
incremental=self._map_param_inc)
|
|
711
|
+
incremental=self._map_param_inc, remove_redundancy=self._config.remove_redundancy)
|
|
722
712
|
|
|
723
713
|
self._latest_ckpt_file_name = cur_file
|
|
724
714
|
|
|
@@ -31,7 +31,6 @@ from mindspore.communication.management import (create_group, get_group_size,
|
|
|
31
31
|
from mindspore.parallel._auto_parallel_context import auto_parallel_context
|
|
32
32
|
from mindspore.ops import operations as P
|
|
33
33
|
from mindspore.common import Tensor
|
|
34
|
-
from mindspore import context
|
|
35
34
|
import mindspore.nn as nn
|
|
36
35
|
|
|
37
36
|
|
|
@@ -53,7 +52,7 @@ class FlopsUtilizationCollector(Callback):
|
|
|
53
52
|
The FlopsUtilizationCollector interface counts the model utilization information MFU
|
|
54
53
|
and the hardware utilization information HFU.
|
|
55
54
|
Currently, the API counts only the forward and backward flops of MatMul,
|
|
56
|
-
BatchMatMul,
|
|
55
|
+
BatchMatMul, flash_attention_score, and Conv2D operators.
|
|
57
56
|
Only used in graph mode with static shape.
|
|
58
57
|
|
|
59
58
|
Args:
|
|
@@ -152,16 +151,21 @@ class FlopsUtilizationCollector(Callback):
|
|
|
152
151
|
"""
|
|
153
152
|
Check whether FlopsUtilizationCollector is working in the current environment
|
|
154
153
|
"""
|
|
155
|
-
if context.get_context("mode") != context.GRAPH_MODE:
|
|
156
|
-
if self.verbose:
|
|
157
|
-
raise ValueError("FlopsUtilizationCollector now only support graph mode.")
|
|
158
|
-
logger.info("FlopsUtilizationCollector now only support graph mode.")
|
|
159
|
-
return False
|
|
160
154
|
cb_params = run_context.original_args()
|
|
161
155
|
if cb_params.mode == 'train':
|
|
162
156
|
network = cb_params.train_network
|
|
157
|
+
if not network.compiled:
|
|
158
|
+
if self.verbose:
|
|
159
|
+
raise ValueError("FlopsUtilizationCollector now only support graph mode.")
|
|
160
|
+
logger.info("FlopsUtilizationCollector now only support graph mode.")
|
|
161
|
+
return False
|
|
163
162
|
elif cb_params.mode == 'eval':
|
|
164
163
|
network = cb_params.eval_network
|
|
164
|
+
if not network.compiled:
|
|
165
|
+
if self.verbose:
|
|
166
|
+
raise ValueError("FlopsUtilizationCollector now only support graph mode.")
|
|
167
|
+
logger.info("FlopsUtilizationCollector now only support graph mode.")
|
|
168
|
+
return False
|
|
165
169
|
else:
|
|
166
170
|
if self.verbose:
|
|
167
171
|
raise ValueError('FlopsUtilizationCollector only support train and eval mode!')
|
|
@@ -404,7 +404,6 @@ class SummaryLandscape:
|
|
|
404
404
|
def _set_context(device_id):
|
|
405
405
|
"""Set context."""
|
|
406
406
|
context.set_context(device_id=device_id)
|
|
407
|
-
context.set_context(mode=context.GRAPH_MODE)
|
|
408
407
|
|
|
409
408
|
def _create_landscape_by_pca(self, epochs, proz, landscape_size, device_ids=None, callback_fn=None, executor=None):
|
|
410
409
|
"""Create landscape by PCA."""
|