mindspore 2.4.1__cp39-cp39-win_amd64.whl → 2.5.0__cp39-cp39-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
- mindspore/Newtonsoft.Json.dll +0 -0
- mindspore/__init__.py +8 -3
- mindspore/_c_dataengine.cp39-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp39-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp39-win_amd64.pyd +0 -0
- mindspore/_checkparam.py +0 -5
- mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
- mindspore/_extends/parse/compile_config.py +64 -0
- mindspore/_extends/parse/deprecated/__init__.py +0 -0
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +375 -0
- mindspore/_extends/parse/parser.py +23 -5
- mindspore/_extends/parse/standard_method.py +123 -27
- mindspore/_extends/pijit/pijit_func_white_list.py +1 -1
- mindspore/amp.py +7 -1
- 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/boost_cell_wrapper.py +136 -41
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/common/__init__.py +3 -1
- mindspore/common/_register_for_tensor.py +0 -1
- mindspore/common/_stub_tensor.py +25 -4
- mindspore/common/_tensor_cpp_method.py +17 -0
- mindspore/common/_tensor_docs.py +6132 -0
- mindspore/common/api.py +99 -25
- mindspore/common/dtype.py +34 -34
- mindspore/common/dump.py +2 -1
- mindspore/common/file_system.py +8 -1
- mindspore/common/generator.py +2 -0
- mindspore/common/hook_handle.py +3 -1
- mindspore/common/initializer.py +3 -4
- mindspore/common/lazy_inline.py +8 -2
- mindspore/common/mindir_util.py +10 -2
- mindspore/common/parameter.py +30 -27
- mindspore/common/tensor.py +713 -1337
- mindspore/communication/__init__.py +1 -1
- mindspore/communication/_comm_helper.py +10 -0
- mindspore/communication/comm_func.py +215 -173
- mindspore/communication/management.py +23 -20
- mindspore/context.py +292 -193
- mindspore/dataset/__init__.py +23 -19
- mindspore/dataset/callback/ds_callback.py +2 -1
- mindspore/dataset/core/config.py +84 -3
- mindspore/dataset/engine/cache_admin.py +3 -3
- mindspore/dataset/engine/cache_client.py +5 -4
- mindspore/dataset/engine/datasets.py +192 -149
- mindspore/dataset/engine/datasets_audio.py +14 -0
- mindspore/dataset/engine/datasets_standard_format.py +28 -11
- mindspore/dataset/engine/datasets_text.py +38 -1
- mindspore/dataset/engine/datasets_user_defined.py +125 -65
- mindspore/dataset/engine/datasets_vision.py +81 -8
- mindspore/dataset/engine/iterators.py +281 -63
- mindspore/dataset/engine/obs/util.py +8 -0
- mindspore/dataset/engine/queue.py +40 -0
- mindspore/dataset/engine/samplers.py +26 -2
- mindspore/dataset/engine/serializer_deserializer.py +1 -1
- mindspore/dataset/engine/validators.py +43 -11
- mindspore/dataset/transforms/py_transforms_util.py +17 -0
- mindspore/dataset/transforms/transforms.py +29 -12
- mindspore/dataset/vision/validators.py +1 -2
- mindspore/device_context/__init__.py +21 -0
- mindspore/device_context/ascend/__init__.py +25 -0
- mindspore/device_context/ascend/device.py +72 -0
- mindspore/device_context/ascend/op_debug.py +94 -0
- mindspore/device_context/ascend/op_precision.py +193 -0
- mindspore/device_context/ascend/op_tuning.py +127 -0
- mindspore/device_context/cpu/__init__.py +25 -0
- mindspore/device_context/cpu/device.py +62 -0
- mindspore/device_context/cpu/op_tuning.py +43 -0
- mindspore/device_context/gpu/__init__.py +21 -0
- mindspore/device_context/gpu/device.py +70 -0
- mindspore/device_context/gpu/op_precision.py +67 -0
- mindspore/device_context/gpu/op_tuning.py +175 -0
- mindspore/device_manager.py +134 -0
- mindspore/dnnl.dll +0 -0
- mindspore/dpcmi.dll +0 -0
- mindspore/experimental/llm_boost/__init__.py +3 -2
- mindspore/experimental/llm_boost/ascend_native/__init__.py +22 -0
- mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +211 -0
- mindspore/experimental/llm_boost/ascend_native/llm_boost.py +52 -0
- mindspore/experimental/llm_boost/atb/boost_base.py +239 -64
- mindspore/experimental/llm_boost/atb/llama_boost.py +52 -30
- mindspore/experimental/llm_boost/atb/qwen_boost.py +47 -24
- mindspore/experimental/llm_boost/register.py +1 -0
- mindspore/experimental/optim/adadelta.py +26 -22
- mindspore/experimental/optim/adam.py +3 -0
- mindspore/experimental/optim/lr_scheduler.py +33 -24
- mindspore/experimental/optim/radam.py +33 -30
- mindspore/hal/device.py +28 -0
- mindspore/hal/event.py +17 -0
- mindspore/hal/memory.py +94 -3
- mindspore/hal/stream.py +91 -6
- mindspore/include/api/context.h +1 -2
- mindspore/include/dataset/constants.h +2 -2
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +12 -0
- mindspore/mindrecord/__init__.py +1 -1
- mindspore/mindrecord/config.py +17 -316
- mindspore/mindrecord/filereader.py +1 -9
- mindspore/mindrecord/filewriter.py +5 -15
- mindspore/mindrecord/mindpage.py +1 -9
- mindspore/mindspore_backend.dll +0 -0
- mindspore/mindspore_common.dll +0 -0
- mindspore/mindspore_core.dll +0 -0
- mindspore/mindspore_glog.dll +0 -0
- mindspore/mindspore_ops.dll +0 -0
- mindspore/mint/__init__.py +824 -218
- mindspore/mint/distributed/__init__.py +66 -4
- mindspore/mint/distributed/distributed.py +2594 -44
- mindspore/mint/linalg/__init__.py +6 -0
- mindspore/mint/nn/__init__.py +473 -14
- mindspore/mint/nn/functional.py +486 -11
- mindspore/mint/nn/layer/__init__.py +17 -4
- mindspore/mint/nn/layer/_functions.py +330 -0
- mindspore/mint/nn/layer/activation.py +169 -1
- mindspore/mint/nn/layer/basic.py +123 -0
- mindspore/mint/nn/layer/conv.py +727 -0
- mindspore/mint/nn/layer/normalization.py +215 -19
- mindspore/mint/nn/layer/padding.py +797 -0
- mindspore/mint/nn/layer/pooling.py +170 -0
- mindspore/mint/optim/__init__.py +2 -1
- mindspore/mint/optim/adam.py +223 -0
- mindspore/mint/optim/adamw.py +26 -19
- mindspore/mint/special/__init__.py +2 -1
- mindspore/msobj140.dll +0 -0
- mindspore/mspdb140.dll +0 -0
- mindspore/mspdbcore.dll +0 -0
- mindspore/mspdbst.dll +0 -0
- mindspore/mspft140.dll +0 -0
- mindspore/msvcdis140.dll +0 -0
- mindspore/msvcp140_1.dll +0 -0
- mindspore/msvcp140_2.dll +0 -0
- mindspore/msvcp140_atomic_wait.dll +0 -0
- mindspore/msvcp140_codecvt_ids.dll +0 -0
- mindspore/multiprocessing/__init__.py +5 -0
- mindspore/nn/__init__.py +2 -0
- mindspore/nn/cell.py +142 -21
- mindspore/nn/dynamic_lr.py +2 -1
- mindspore/nn/layer/activation.py +6 -6
- mindspore/nn/layer/basic.py +35 -25
- mindspore/nn/layer/channel_shuffle.py +3 -3
- mindspore/nn/layer/conv.py +3 -0
- mindspore/nn/layer/embedding.py +3 -3
- mindspore/nn/layer/normalization.py +8 -7
- mindspore/nn/layer/padding.py +4 -3
- mindspore/nn/layer/pooling.py +55 -23
- mindspore/nn/layer/rnn_cells.py +1 -1
- mindspore/nn/layer/rnns.py +2 -1
- mindspore/nn/layer/timedistributed.py +5 -5
- mindspore/nn/layer/transformer.py +48 -26
- mindspore/nn/learning_rate_schedule.py +5 -3
- mindspore/nn/loss/loss.py +31 -36
- mindspore/nn/optim/ada_grad.py +1 -0
- mindspore/nn/optim/adadelta.py +2 -2
- mindspore/nn/optim/adam.py +1 -1
- mindspore/nn/optim/lars.py +1 -4
- mindspore/nn/optim/optimizer.py +1 -1
- mindspore/nn/optim/rprop.py +2 -2
- mindspore/nn/optim/thor.py +2 -1
- mindspore/nn/utils/__init__.py +22 -0
- mindspore/nn/utils/init.py +73 -0
- mindspore/nn/wrap/cell_wrapper.py +4 -6
- mindspore/nn/wrap/loss_scale.py +3 -4
- mindspore/numpy/array_creations.py +60 -62
- mindspore/numpy/array_ops.py +148 -143
- mindspore/numpy/logic_ops.py +41 -42
- mindspore/numpy/math_ops.py +361 -359
- mindspore/numpy/utils.py +16 -16
- mindspore/numpy/utils_const.py +4 -4
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +2 -1
- mindspore/ops/_grad_experimental/grad_comm_ops.py +107 -8
- mindspore/ops/_grad_experimental/grad_debug_ops.py +6 -1
- mindspore/ops/_grad_experimental/grad_inner_ops.py +9 -0
- mindspore/ops/_grad_experimental/grad_math_ops.py +2 -1
- mindspore/ops/_op_impl/cpu/__init__.py +1 -0
- mindspore/ops/_op_impl/cpu/raise_op.py +28 -0
- mindspore/ops/_vmap/vmap_array_ops.py +20 -19
- mindspore/ops/_vmap/vmap_base.py +0 -2
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +19 -13
- mindspore/ops/_vmap/vmap_math_ops.py +11 -9
- mindspore/ops/_vmap/vmap_nn_ops.py +20 -34
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +149 -12
- mindspore/ops/auto_generate/gen_arg_handler.py +0 -61
- mindspore/ops/auto_generate/gen_extend_func.py +554 -60
- mindspore/ops/auto_generate/gen_ops_def.py +1621 -115
- mindspore/ops/auto_generate/gen_ops_prim.py +8027 -3411
- mindspore/ops/auto_generate/pyboost_inner_prim.py +183 -79
- mindspore/ops/composite/base.py +1 -1
- mindspore/ops/composite/multitype_ops/_compile_utils.py +229 -30
- mindspore/ops/composite/multitype_ops/pow_impl.py +0 -29
- mindspore/ops/function/__init__.py +12 -0
- mindspore/ops/function/array_func.py +561 -159
- mindspore/ops/function/clip_func.py +64 -0
- mindspore/ops/function/debug_func.py +28 -20
- mindspore/ops/function/image_func.py +1 -1
- mindspore/ops/function/linalg_func.py +5 -4
- mindspore/ops/function/math_func.py +1664 -294
- mindspore/ops/function/nn_func.py +988 -317
- mindspore/ops/function/parameter_func.py +3 -56
- mindspore/ops/function/random_func.py +243 -33
- mindspore/ops/function/sparse_unary_func.py +1 -1
- mindspore/ops/functional.py +18 -5
- mindspore/ops/functional_overload.py +897 -0
- mindspore/ops/operations/__init__.py +3 -2
- mindspore/ops/operations/_embedding_cache_ops.py +4 -4
- mindspore/ops/operations/_grad_ops.py +2 -34
- mindspore/ops/operations/_infer_ops.py +2 -1
- mindspore/ops/operations/_inner_ops.py +38 -8
- mindspore/ops/operations/array_ops.py +45 -303
- mindspore/ops/operations/comm_ops.py +23 -17
- mindspore/ops/operations/custom_ops.py +7 -49
- mindspore/ops/operations/debug_ops.py +42 -47
- mindspore/ops/operations/inner_ops.py +6 -4
- mindspore/ops/operations/linalg_ops.py +3 -2
- mindspore/ops/operations/manually_defined/ops_def.py +185 -104
- mindspore/ops/operations/math_ops.py +11 -216
- mindspore/ops/operations/nn_ops.py +153 -310
- mindspore/ops/primitive.py +23 -21
- mindspore/ops/tensor_method.py +1669 -0
- mindspore/ops_generate/aclnn_kernel_register_auto_cc_generator.py +110 -0
- mindspore/ops_generate/add_tensor_docs_generator.py +54 -0
- mindspore/ops_generate/arg_handler.py +0 -61
- mindspore/ops_generate/auto_grad_impl_cc_generator.py +135 -0
- mindspore/ops_generate/auto_grad_reg_cc_generator.py +93 -0
- mindspore/ops_generate/base_generator.py +11 -0
- mindspore/ops_generate/cpp_create_prim_instance_helper_generator.py +108 -0
- mindspore/ops_generate/functional_map_cpp_generator.py +491 -0
- mindspore/ops_generate/functional_overload_py_generator.py +110 -0
- mindspore/ops_generate/functions_cc_generator.py +233 -0
- mindspore/ops_generate/gen_aclnn_implement.py +110 -114
- mindspore/ops_generate/gen_constants.py +157 -3
- mindspore/ops_generate/gen_ops.py +245 -990
- mindspore/ops_generate/gen_pyboost_func.py +97 -998
- mindspore/ops_generate/gen_utils.py +119 -33
- mindspore/ops_generate/lite_ops_cpp_generator.py +155 -0
- mindspore/ops_generate/op_api_proto.py +206 -0
- mindspore/ops_generate/op_def_py_generator.py +131 -0
- mindspore/ops_generate/op_prim_py_generator.py +480 -0
- mindspore/ops_generate/op_proto.py +373 -108
- mindspore/ops_generate/op_template_parser.py +436 -0
- mindspore/ops_generate/ops_def_cc_generator.py +288 -0
- mindspore/ops_generate/ops_def_h_generator.py +74 -0
- mindspore/ops_generate/ops_name_h_generator.py +68 -0
- mindspore/ops_generate/ops_primitive_h_generator.py +81 -0
- mindspore/ops_generate/pyboost_functions_cpp_generator.py +370 -0
- mindspore/ops_generate/pyboost_functions_h_generator.py +68 -0
- mindspore/ops_generate/pyboost_functions_py_generator.py +148 -0
- mindspore/ops_generate/pyboost_grad_function_cpp_generator.py +154 -0
- mindspore/ops_generate/pyboost_inner_prim_generator.py +131 -0
- mindspore/ops_generate/pyboost_native_grad_functions_generator.py +268 -0
- mindspore/ops_generate/pyboost_op_cpp_code_generator.py +851 -0
- mindspore/ops_generate/pyboost_overload_functions_cpp_generator.py +344 -0
- mindspore/ops_generate/pyboost_utils.py +92 -33
- mindspore/ops_generate/template.py +294 -44
- mindspore/ops_generate/tensor_func_reg_cpp_generator.py +422 -0
- mindspore/parallel/__init__.py +3 -3
- mindspore/parallel/_auto_parallel_context.py +44 -34
- mindspore/parallel/_cell_wrapper.py +22 -3
- mindspore/parallel/_parallel_serialization.py +13 -2
- mindspore/parallel/_utils.py +4 -2
- mindspore/parallel/algo_parameter_config.py +1 -1
- mindspore/parallel/checkpoint_transform.py +44 -0
- mindspore/parallel/cluster/process_entity/_api.py +131 -37
- mindspore/parallel/cluster/process_entity/_utils.py +41 -6
- mindspore/parallel/cluster/run.py +20 -3
- mindspore/parallel/parameter_broadcast.py +1 -1
- mindspore/parallel/shard.py +3 -0
- mindspore/parallel/transform_safetensors.py +119 -253
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +17 -4
- mindspore/profiler/analysis/__init__.py +0 -0
- mindspore/profiler/analysis/parser/__init__.py +0 -0
- mindspore/profiler/analysis/parser/ascend_cann_parser.py +166 -0
- mindspore/profiler/analysis/parser/base_parser.py +158 -0
- mindspore/profiler/analysis/parser/framework_cann_relation_parser.py +45 -0
- mindspore/profiler/analysis/parser/ms_framework_parser.py +142 -0
- mindspore/profiler/analysis/parser/ms_minddata_parser.py +145 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +261 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +40 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +84 -0
- mindspore/profiler/analysis/parser/timeline_creator/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_creator/base_timeline_creator.py +44 -0
- mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +90 -0
- mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +76 -0
- mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +103 -0
- mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +134 -0
- mindspore/profiler/analysis/parser/timeline_event/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_event/base_event.py +233 -0
- mindspore/profiler/analysis/parser/timeline_event/cpu_op_event.py +47 -0
- mindspore/profiler/analysis/parser/timeline_event/flow_event.py +36 -0
- mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +260 -0
- mindspore/profiler/analysis/parser/timeline_event/msprof_event.py +73 -0
- mindspore/profiler/analysis/parser/timeline_event/scope_layer_event.py +53 -0
- mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +146 -0
- mindspore/profiler/analysis/task_manager.py +131 -0
- mindspore/profiler/analysis/time_converter.py +84 -0
- mindspore/profiler/analysis/viewer/__init__.py +0 -0
- mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +333 -0
- mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +87 -0
- mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +252 -0
- mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +313 -0
- mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +322 -0
- mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +265 -0
- mindspore/profiler/analysis/viewer/ascend_timeline_viewer.py +58 -0
- mindspore/profiler/analysis/viewer/base_viewer.py +26 -0
- mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +97 -0
- mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +581 -0
- mindspore/profiler/analysis/work_flow.py +73 -0
- mindspore/profiler/common/ascend_msprof_exporter.py +138 -0
- mindspore/profiler/common/command_executor.py +90 -0
- mindspore/profiler/common/constant.py +174 -3
- mindspore/profiler/common/file_manager.py +208 -0
- mindspore/profiler/common/log.py +130 -0
- mindspore/profiler/common/msprof_cmd_tool.py +202 -0
- mindspore/profiler/common/path_manager.py +371 -0
- mindspore/profiler/common/process_bar.py +168 -0
- mindspore/profiler/common/process_pool.py +9 -3
- mindspore/profiler/common/profiler_context.py +476 -0
- mindspore/profiler/common/profiler_info.py +304 -0
- mindspore/profiler/common/profiler_output_path.py +284 -0
- mindspore/profiler/common/profiler_parameters.py +210 -0
- mindspore/profiler/common/profiler_path_manager.py +120 -0
- mindspore/profiler/common/record_function.py +76 -0
- mindspore/profiler/common/tlv_decoder.py +76 -0
- mindspore/profiler/common/util.py +75 -2
- mindspore/profiler/dynamic_profiler.py +270 -37
- mindspore/profiler/envprofiler.py +138 -0
- mindspore/profiler/mstx.py +199 -0
- mindspore/profiler/platform/__init__.py +21 -0
- mindspore/profiler/platform/base_profiler.py +40 -0
- mindspore/profiler/platform/cpu_profiler.py +124 -0
- mindspore/profiler/platform/gpu_profiler.py +74 -0
- mindspore/profiler/platform/npu_profiler.py +309 -0
- mindspore/profiler/profiler.py +580 -93
- mindspore/profiler/profiler_action_controller.py +187 -0
- mindspore/profiler/profiler_interface.py +114 -0
- mindspore/profiler/schedule.py +208 -0
- mindspore/rewrite/api/symbol_tree.py +1 -2
- mindspore/run_check/_check_version.py +18 -13
- mindspore/runtime/__init__.py +37 -0
- mindspore/runtime/device.py +27 -0
- mindspore/runtime/event.py +209 -0
- mindspore/runtime/executor.py +148 -0
- mindspore/runtime/memory.py +392 -0
- mindspore/runtime/stream.py +460 -0
- mindspore/runtime/thread_bind_core.py +401 -0
- 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 +2 -2
- mindspore/train/_utils.py +53 -18
- mindspore/train/amp.py +8 -4
- mindspore/train/callback/_checkpoint.py +32 -18
- mindspore/train/callback/_early_stop.py +1 -1
- mindspore/train/callback/_flops_collector.py +105 -69
- mindspore/train/callback/_history.py +1 -1
- mindspore/train/callback/_summary_collector.py +44 -6
- mindspore/train/callback/_tft_register.py +37 -15
- mindspore/train/dataset_helper.py +11 -11
- mindspore/train/metrics/precision.py +4 -5
- mindspore/train/mind_ir_pb2.py +167 -46
- mindspore/train/model.py +13 -14
- mindspore/train/serialization.py +461 -72
- mindspore/train/summary/summary_record.py +1 -2
- mindspore/train/train_thor/model_thor.py +1 -1
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +4 -2
- mindspore/utils/dryrun.py +138 -0
- mindspore/utils/runtime_execution_order_check.py +550 -0
- mindspore/vcmeta.dll +0 -0
- mindspore/vcruntime140.dll +0 -0
- mindspore/vcruntime140_1.dll +0 -0
- mindspore/version.py +1 -1
- {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/METADATA +3 -4
- {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/RECORD +391 -265
- {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/entry_points.txt +1 -1
- mindspore/common/_tensor_overload.py +0 -139
- mindspore/mindspore_np_dtype.dll +0 -0
- mindspore/profiler/envprofiling.py +0 -254
- mindspore/profiler/profiling.py +0 -1926
- {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/WHEEL +0 -0
- {mindspore-2.4.1.dist-info → mindspore-2.5.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
# Copyright 2024 Huawei Technologies Co., Ltd
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
# ============================================================================
|
|
15
|
+
"""NPU platform profiler."""
|
|
16
|
+
import os
|
|
17
|
+
import glob
|
|
18
|
+
import json
|
|
19
|
+
from typing import List, Optional
|
|
20
|
+
|
|
21
|
+
from mindspore import context
|
|
22
|
+
from mindspore import log as logger
|
|
23
|
+
import mindspore._c_dataengine as cde
|
|
24
|
+
import mindspore._c_expression as c_expression
|
|
25
|
+
|
|
26
|
+
from mindspore.profiler.common.path_manager import PathManager
|
|
27
|
+
from mindspore.profiler.common.registry import PROFILERS
|
|
28
|
+
from mindspore.profiler.common.constant import DeviceTarget, ProfilerActivity, AnalysisMode
|
|
29
|
+
|
|
30
|
+
from mindspore._c_expression import _framework_profiler_enable_mi, _framework_profiler_disable_mi
|
|
31
|
+
from mindspore.profiler.common.profiler_context import ProfilerContext
|
|
32
|
+
from mindspore.profiler.platform.base_profiler import BaseProfiler
|
|
33
|
+
from mindspore.profiler.common.profiler_path_manager import ProfilerPathManager
|
|
34
|
+
from mindspore.profiler.common.profiler_info import ProfilerInfo
|
|
35
|
+
from mindspore.profiler.common.process_pool import MultiProcessPool
|
|
36
|
+
from mindspore.profiler.analysis.task_manager import TaskManager
|
|
37
|
+
from mindspore.profiler.analysis.time_converter import TimeConverter
|
|
38
|
+
from mindspore.profiler.analysis.parser.ascend_cann_parser import AscendMsprofParser
|
|
39
|
+
from mindspore.profiler.analysis.parser.ms_framework_parser import FrameworkParser
|
|
40
|
+
from mindspore.profiler.analysis.parser.ms_minddata_parser import MindDataParser
|
|
41
|
+
from mindspore.profiler.analysis.parser.framework_cann_relation_parser import FrameworkCannRelationParser
|
|
42
|
+
from mindspore.profiler.analysis.viewer.ms_dataset_viewer import MsDatasetViewer
|
|
43
|
+
from mindspore.profiler.analysis.viewer.ascend_timeline_viewer import AscendTimelineViewer
|
|
44
|
+
from mindspore.profiler.analysis.viewer.ascend_kernel_details_viewer import AscendKernelDetailsViewer
|
|
45
|
+
from mindspore.profiler.analysis.viewer.ascend_step_trace_time_viewer import AscendStepTraceTimeViewer
|
|
46
|
+
from mindspore.profiler.analysis.viewer.ascend_communication_viewer import AscendCommunicationViewer
|
|
47
|
+
from mindspore.profiler.analysis.viewer.ascend_integrate_viewer import AscendIntegrateViewer
|
|
48
|
+
from mindspore.profiler.analysis.viewer.ascend_memory_viewer import AscendMemoryViewer
|
|
49
|
+
from mindspore.profiler.analysis.viewer.ascend_op_memory_viewer import AscendOpMemoryViewer
|
|
50
|
+
from mindspore.profiler.analysis.viewer.ms_minddata_viewer import (
|
|
51
|
+
MindDataPipelineRawViewer,
|
|
52
|
+
MindDataPiplineSummaryViewer,
|
|
53
|
+
)
|
|
54
|
+
from mindspore.profiler.common.util import print_msg_with_pid
|
|
55
|
+
from mindspore.profiler.common.log import ProfilerLogger
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
@PROFILERS.register_module(DeviceTarget.NPU.value)
|
|
59
|
+
class NpuProfiler(BaseProfiler):
|
|
60
|
+
"""
|
|
61
|
+
NPU platform profiler
|
|
62
|
+
"""
|
|
63
|
+
|
|
64
|
+
def __init__(self) -> None:
|
|
65
|
+
super().__init__()
|
|
66
|
+
self._prof_ctx = ProfilerContext()
|
|
67
|
+
self._prof_info = ProfilerInfo()
|
|
68
|
+
self._prof_path_mgr = ProfilerPathManager()
|
|
69
|
+
ProfilerLogger.init(self._prof_ctx.ascend_ms_dir)
|
|
70
|
+
self._logger = ProfilerLogger.get_instance()
|
|
71
|
+
|
|
72
|
+
self._profiler = c_expression.Profiler.get_instance(DeviceTarget.NPU.value)
|
|
73
|
+
# initialize profiler backend
|
|
74
|
+
self._profiler.init(
|
|
75
|
+
self._prof_ctx.ascend_ms_dir,
|
|
76
|
+
int(self._prof_ctx.device_id),
|
|
77
|
+
json.dumps(self._prof_ctx.npu_profiler_params),
|
|
78
|
+
)
|
|
79
|
+
self._logger.info("NpuProfiler init profiler backend params %s",
|
|
80
|
+
json.dumps(self._prof_ctx.npu_profiler_params, indent=4))
|
|
81
|
+
|
|
82
|
+
# record original profiler params
|
|
83
|
+
self._prof_info.profiler_parameters = self._prof_ctx.original_params
|
|
84
|
+
self._prof_info.ms_profiler_info = {
|
|
85
|
+
"context_mode": context.get_context("mode"),
|
|
86
|
+
"rank_id": self._prof_ctx.rank_id,
|
|
87
|
+
"device_id": self._prof_ctx.device_id,
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
# initialize minddata profiler
|
|
91
|
+
if self._prof_ctx.data_process:
|
|
92
|
+
self._md_profiler = cde.GlobalContext.profiling_manager()
|
|
93
|
+
self._md_profiler.init()
|
|
94
|
+
self._logger.info("NpuProfiler init minddata profiler")
|
|
95
|
+
|
|
96
|
+
self._prof_mgr = c_expression.ProfilerManager.get_instance()
|
|
97
|
+
|
|
98
|
+
def start(self) -> None:
|
|
99
|
+
"""Start profiling."""
|
|
100
|
+
self._logger.info("NpuProfiler start.")
|
|
101
|
+
|
|
102
|
+
if ProfilerActivity.CPU in self._prof_ctx.activities:
|
|
103
|
+
_framework_profiler_enable_mi()
|
|
104
|
+
self._prof_mgr.set_profile_framework("time")
|
|
105
|
+
self._logger.info("NpuProfiler start enable framework")
|
|
106
|
+
|
|
107
|
+
if self._profiler:
|
|
108
|
+
self._profiler.start()
|
|
109
|
+
|
|
110
|
+
if self._prof_ctx.data_process:
|
|
111
|
+
self._md_profiler.start()
|
|
112
|
+
self._logger.info("NpuProfiler start minddata profiler")
|
|
113
|
+
|
|
114
|
+
def stop(self) -> None:
|
|
115
|
+
"""Stop profiling."""
|
|
116
|
+
self._logger.info("NpuProfiler stop.")
|
|
117
|
+
if self._profiler:
|
|
118
|
+
self._profiler.stop()
|
|
119
|
+
|
|
120
|
+
if ProfilerActivity.CPU in self._prof_ctx.activities:
|
|
121
|
+
_framework_profiler_disable_mi()
|
|
122
|
+
self._prof_mgr.set_profile_framework("NULL")
|
|
123
|
+
self._logger.info("NpuProfiler stop disable framework")
|
|
124
|
+
|
|
125
|
+
if self._prof_ctx.data_process:
|
|
126
|
+
self._md_profiler.stop()
|
|
127
|
+
self._md_profiler.save(self._prof_ctx.framework_path)
|
|
128
|
+
|
|
129
|
+
self._prof_info.save(self._prof_ctx.ascend_ms_dir, self._prof_ctx.rank_id)
|
|
130
|
+
|
|
131
|
+
def analyse(self, **kwargs) -> None:
|
|
132
|
+
"""Analyse the profiling data."""
|
|
133
|
+
self._logger.info("NpuProfiler analyse.")
|
|
134
|
+
|
|
135
|
+
NPUProfilerAnalysis.online_analyse()
|
|
136
|
+
|
|
137
|
+
def finalize(self) -> None:
|
|
138
|
+
"""Finalize profiling data."""
|
|
139
|
+
self._logger.info("NpuProfiler finalize.")
|
|
140
|
+
if self._profiler:
|
|
141
|
+
self._profiler.finalize()
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
class NPUProfilerAnalysis:
|
|
145
|
+
"""
|
|
146
|
+
NPU profiler analysis interface
|
|
147
|
+
"""
|
|
148
|
+
|
|
149
|
+
@classmethod
|
|
150
|
+
def online_analyse(cls):
|
|
151
|
+
"""
|
|
152
|
+
Online analysis for NPU
|
|
153
|
+
"""
|
|
154
|
+
cls._pre_analyse_online()
|
|
155
|
+
if ProfilerContext().mode == AnalysisMode.SYNC_MODE.value:
|
|
156
|
+
cls._run_tasks(**ProfilerContext().to_dict())
|
|
157
|
+
elif ProfilerContext().mode == AnalysisMode.ASYNC_MODE.value:
|
|
158
|
+
MultiProcessPool().add_async_job(cls._run_tasks, **ProfilerContext().to_dict())
|
|
159
|
+
|
|
160
|
+
@classmethod
|
|
161
|
+
def offline_analyse(
|
|
162
|
+
cls,
|
|
163
|
+
path: str,
|
|
164
|
+
pretty: bool,
|
|
165
|
+
step_list: Optional[List[int]],
|
|
166
|
+
data_simplification: bool,
|
|
167
|
+
) -> None:
|
|
168
|
+
"""Analyze profiling data in offline mode."""
|
|
169
|
+
ProfilerLogger.init(path)
|
|
170
|
+
cls._pre_analyse_offline(path, pretty, step_list, data_simplification)
|
|
171
|
+
cls._run_tasks(**ProfilerContext().to_dict())
|
|
172
|
+
|
|
173
|
+
@classmethod
|
|
174
|
+
def _pre_analyse_online(cls):
|
|
175
|
+
"""
|
|
176
|
+
Pre-process for online analysis
|
|
177
|
+
"""
|
|
178
|
+
prof_ctx = ProfilerContext()
|
|
179
|
+
if ProfilerActivity.NPU in prof_ctx.activities:
|
|
180
|
+
prof_dir = glob.glob(os.path.join(prof_ctx.ascend_ms_dir, "PROF_*"))
|
|
181
|
+
if not prof_dir:
|
|
182
|
+
logger.error(f"No PROF_* directory found in {prof_ctx.ascend_ms_dir}")
|
|
183
|
+
return
|
|
184
|
+
|
|
185
|
+
prof_ctx.msprof_profile_path = prof_dir[0]
|
|
186
|
+
ProfilerPathManager().clean_analysis_cache()
|
|
187
|
+
ProfilerPathManager().create_output_path()
|
|
188
|
+
ProfilerInfo().load_time_parameters(
|
|
189
|
+
prof_ctx.msprof_profile_path, prof_ctx.msprof_profile_host_path
|
|
190
|
+
)
|
|
191
|
+
TimeConverter.init_parameters(**ProfilerInfo().time_parameters)
|
|
192
|
+
|
|
193
|
+
elif prof_ctx.activities == [ProfilerActivity.CPU]:
|
|
194
|
+
ProfilerPathManager().create_output_path()
|
|
195
|
+
TimeConverter.init_parameters(freq=100.0, cntvct=0, localtime_diff=0)
|
|
196
|
+
|
|
197
|
+
@classmethod
|
|
198
|
+
def _pre_analyse_offline(
|
|
199
|
+
cls,
|
|
200
|
+
ascend_ms_dir: str,
|
|
201
|
+
pretty: bool,
|
|
202
|
+
step_list: Optional[List[int]],
|
|
203
|
+
data_simplification: bool,
|
|
204
|
+
) -> None:
|
|
205
|
+
"""Pre-process profiling data for offline analysis."""
|
|
206
|
+
prof_ctx = ProfilerContext()
|
|
207
|
+
prof_info = ProfilerInfo()
|
|
208
|
+
prof_info_file_path = PathManager.get_profiler_info_path(ascend_ms_dir)
|
|
209
|
+
prof_info.load_info(prof_info_file_path)
|
|
210
|
+
prof_ctx.device_id = prof_info.ms_profiler_info["device_id"]
|
|
211
|
+
prof_ctx.rank_id = prof_info.ms_profiler_info["rank_id"]
|
|
212
|
+
prof_ctx.set_params()
|
|
213
|
+
prof_ctx.load_offline_profiler_params(prof_info.profiler_parameters)
|
|
214
|
+
prof_ctx.jit_level = prof_info.jit_level
|
|
215
|
+
prof_ctx.context_mode = prof_info.context_mode
|
|
216
|
+
|
|
217
|
+
if ProfilerActivity.NPU in prof_ctx.activities:
|
|
218
|
+
prof_dir = glob.glob(os.path.join(ascend_ms_dir, "PROF_*"))
|
|
219
|
+
if not prof_dir:
|
|
220
|
+
logger.error(f"No PROF_* directory found in {ascend_ms_dir}")
|
|
221
|
+
return
|
|
222
|
+
prof_path_mgr = ProfilerPathManager()
|
|
223
|
+
|
|
224
|
+
# set PROF_XXX path
|
|
225
|
+
prof_ctx.ascend_ms_dir = ascend_ms_dir
|
|
226
|
+
prof_ctx.msprof_profile_path = prof_dir[0]
|
|
227
|
+
prof_info.load_time_parameters(
|
|
228
|
+
prof_ctx.msprof_profile_path, prof_ctx.msprof_profile_host_path
|
|
229
|
+
)
|
|
230
|
+
prof_ctx.pretty = pretty
|
|
231
|
+
prof_ctx.step_list = step_list
|
|
232
|
+
prof_ctx.data_simplification = data_simplification
|
|
233
|
+
prof_path_mgr.clean_analysis_cache()
|
|
234
|
+
prof_path_mgr.create_output_path()
|
|
235
|
+
TimeConverter.init_parameters(**prof_info.time_parameters)
|
|
236
|
+
elif [ProfilerActivity.CPU] == prof_ctx.activities:
|
|
237
|
+
prof_ctx.ascend_ms_dir = ascend_ms_dir
|
|
238
|
+
ProfilerPathManager().create_output_path()
|
|
239
|
+
TimeConverter.init_parameters(freq=100.0, cntvct=0, localtime_diff=0)
|
|
240
|
+
|
|
241
|
+
@classmethod
|
|
242
|
+
def _run_tasks(cls, **kwargs) -> None:
|
|
243
|
+
"""
|
|
244
|
+
Run tasks for online analysis
|
|
245
|
+
"""
|
|
246
|
+
ascend_ms_dir = kwargs.get("ascend_ms_dir", "")
|
|
247
|
+
print_msg_with_pid(f"Start parsing profiling data in {kwargs.get('mode')} mode at: {ascend_ms_dir}")
|
|
248
|
+
task_mgr = cls._construct_task_mgr(**kwargs)
|
|
249
|
+
task_mgr.run()
|
|
250
|
+
ProfilerLogger.get_instance().info(json.dumps(task_mgr.cost_time, indent=4))
|
|
251
|
+
if kwargs.get("data_simplification"):
|
|
252
|
+
ProfilerPathManager().simplify_data()
|
|
253
|
+
|
|
254
|
+
@classmethod
|
|
255
|
+
def _construct_task_mgr(cls, **kwargs) -> TaskManager:
|
|
256
|
+
"""
|
|
257
|
+
Construct task manager based on activities and parameters
|
|
258
|
+
"""
|
|
259
|
+
task_mgr = TaskManager()
|
|
260
|
+
activities = kwargs.get("activities", [])
|
|
261
|
+
enable_data_process = kwargs.get("data_process", False)
|
|
262
|
+
|
|
263
|
+
# CANN flow parser
|
|
264
|
+
cann_flow_parsers = []
|
|
265
|
+
if ProfilerActivity.NPU.value in activities:
|
|
266
|
+
cann_flow_parsers.append(
|
|
267
|
+
AscendMsprofParser(**kwargs)
|
|
268
|
+
.register_post_hook(AscendMemoryViewer(**kwargs).save)
|
|
269
|
+
.register_post_hook(AscendOpMemoryViewer(**kwargs).save)
|
|
270
|
+
)
|
|
271
|
+
|
|
272
|
+
if ProfilerActivity.CPU.value in activities:
|
|
273
|
+
cann_flow_parsers.append(
|
|
274
|
+
FrameworkParser(**kwargs).register_post_hook(
|
|
275
|
+
MsDatasetViewer(**kwargs).save
|
|
276
|
+
)
|
|
277
|
+
)
|
|
278
|
+
|
|
279
|
+
if ProfilerActivity.NPU.value in activities:
|
|
280
|
+
cann_flow_parsers.append(
|
|
281
|
+
FrameworkCannRelationParser(**kwargs)
|
|
282
|
+
.register_post_hook(AscendTimelineViewer(**kwargs).save)
|
|
283
|
+
.register_post_hook(AscendKernelDetailsViewer(**kwargs).save)
|
|
284
|
+
.register_post_hook(AscendStepTraceTimeViewer(**kwargs).save)
|
|
285
|
+
.register_post_hook(AscendIntegrateViewer(**kwargs).save)
|
|
286
|
+
.register_post_hook(AscendCommunicationViewer(**kwargs).save)
|
|
287
|
+
)
|
|
288
|
+
elif ProfilerActivity.CPU.value in activities:
|
|
289
|
+
cann_flow_parsers.append(
|
|
290
|
+
FrameworkCannRelationParser().register_post_hook(
|
|
291
|
+
AscendTimelineViewer(**kwargs).save
|
|
292
|
+
)
|
|
293
|
+
)
|
|
294
|
+
|
|
295
|
+
task_mgr.create_flow(
|
|
296
|
+
*cann_flow_parsers, flow_name="cann_flow", show_process=True
|
|
297
|
+
)
|
|
298
|
+
|
|
299
|
+
# MindData flow parser
|
|
300
|
+
if enable_data_process:
|
|
301
|
+
task_mgr.create_flow(
|
|
302
|
+
MindDataParser(**kwargs)
|
|
303
|
+
.register_post_hook(MindDataPipelineRawViewer(**kwargs).save)
|
|
304
|
+
.register_post_hook(MindDataPiplineSummaryViewer(**kwargs).save),
|
|
305
|
+
flow_name="minddata_flow",
|
|
306
|
+
show_process=False,
|
|
307
|
+
)
|
|
308
|
+
|
|
309
|
+
return task_mgr
|