mindspore 2.6.0__cp39-cp39-win_amd64.whl → 2.7.0rc1__cp39-cp39-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/__init__.py +1 -1
- 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 +40 -9
- mindspore/{_deprecated → _extends/optimize}/__init__.py +9 -3
- mindspore/_extends/optimize/cell_utils.py +96 -0
- mindspore/_extends/parse/__init__.py +2 -2
- mindspore/_extends/parse/compile_config.py +44 -22
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +1 -1
- mindspore/_extends/parse/parser.py +36 -61
- mindspore/_extends/parse/resources.py +39 -0
- mindspore/_extends/parse/standard_method.py +32 -13
- mindspore/_extends/parse/trope.py +8 -1
- mindspore/_extends/pijit/__init__.py +1 -2
- mindspore/amp.py +4 -4
- 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/common/__init__.py +27 -2
- 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 +76 -15
- mindspore/common/api.py +193 -112
- mindspore/common/dtype.py +21 -11
- mindspore/common/dump.py +10 -15
- mindspore/common/generator.py +2 -3
- mindspore/common/hook_handle.py +11 -2
- mindspore/common/jit_config.py +1 -1
- mindspore/common/jit_trace.py +84 -105
- mindspore/common/parameter.py +26 -12
- mindspore/common/recompute.py +3 -3
- mindspore/common/sparse_tensor.py +0 -3
- mindspore/common/symbol.py +0 -1
- mindspore/common/tensor.py +48 -83
- mindspore/communication/_comm_helper.py +46 -4
- mindspore/communication/management.py +79 -7
- mindspore/context.py +38 -23
- mindspore/dataset/core/config.py +3 -3
- mindspore/dataset/engine/datasets.py +20 -7
- mindspore/dataset/engine/datasets_user_defined.py +32 -2
- 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/py_transforms.py +7 -3
- mindspore/dataset/transforms/transforms.py +7 -3
- mindspore/dataset/vision/validators.py +1 -0
- mindspore/device_context/ascend/device.py +1 -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/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +3 -5
- 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 +1 -0
- mindspore/include/api/cell.h +37 -1
- mindspore/include/api/delegate.h +10 -0
- mindspore/include/api/model.h +3 -0
- mindspore/include/api/types.h +2 -2
- mindspore/include/c_api/model_c.h +0 -58
- mindspore/include/c_api/tensor_c.h +0 -26
- mindspore/include/dataset/vision_ascend.h +1 -1
- mindspore/jpeg62.dll +0 -0
- mindspore/mindrecord/tools/cifar10.py +60 -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 +4 -44
- mindspore/mint/distributed/__init__.py +1 -0
- mindspore/mint/distributed/distributed.py +208 -5
- mindspore/mint/nn/__init__.py +1 -1
- mindspore/mint/nn/functional.py +53 -6
- mindspore/mint/nn/layer/_functions.py +164 -294
- mindspore/mint/nn/layer/activation.py +8 -6
- mindspore/mint/nn/layer/conv.py +122 -98
- mindspore/mint/nn/layer/normalization.py +8 -22
- mindspore/mint/optim/adam.py +19 -18
- mindspore/mint/optim/adamw.py +14 -8
- mindspore/mint/optim/sgd.py +5 -5
- mindspore/nn/cell.py +325 -499
- mindspore/nn/grad/cell_grad.py +11 -12
- mindspore/nn/layer/activation.py +32 -34
- mindspore/nn/layer/basic.py +67 -64
- mindspore/nn/layer/channel_shuffle.py +4 -4
- mindspore/nn/layer/combined.py +4 -2
- mindspore/nn/layer/conv.py +86 -85
- mindspore/nn/layer/dense.py +9 -7
- mindspore/nn/layer/embedding.py +50 -52
- mindspore/nn/layer/image.py +37 -39
- 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 +1 -1
- mindspore/nn/optim/adasum.py +2 -2
- mindspore/nn/optim/optimizer.py +1 -1
- mindspore/nn/optim/thor.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 +34 -37
- mindspore/nn/wrap/grad_reducer.py +37 -37
- mindspore/nn/wrap/loss_scale.py +72 -74
- mindspore/numpy/array_creations.py +5 -5
- mindspore/numpy/fft.py +1 -1
- mindspore/numpy/math_ops.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/_vmap/vmap_array_ops.py +6 -13
- mindspore/ops/_vmap/vmap_nn_ops.py +8 -16
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +17 -8
- mindspore/ops/auto_generate/gen_extend_func.py +1 -51
- mindspore/ops/auto_generate/gen_ops_def.py +463 -257
- mindspore/ops/auto_generate/gen_ops_prim.py +1127 -885
- mindspore/ops/auto_generate/pyboost_inner_prim.py +31 -1
- mindspore/ops/composite/__init__.py +10 -0
- mindspore/ops/composite/base.py +8 -4
- mindspore/ops/composite/multitype_ops/__init__.py +12 -1
- mindspore/ops/composite/multitype_ops/_compile_utils.py +132 -108
- 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 +3 -1
- mindspore/ops/function/_add_attr_func.py +11 -6
- mindspore/ops/function/array_func.py +7 -94
- mindspore/ops/function/debug_func.py +4 -3
- mindspore/ops/function/grad/grad_func.py +1 -1
- mindspore/ops/function/math_func.py +21 -367
- mindspore/ops/function/nn_func.py +26 -41
- mindspore/ops/function/other_func.py +4 -1
- mindspore/ops/function/random_func.py +31 -4
- mindspore/ops/functional.py +0 -2
- mindspore/ops/functional_overload.py +463 -6
- mindspore/ops/op_info_register.py +21 -0
- mindspore/ops/operations/__init__.py +5 -2
- mindspore/ops/operations/_custom_ops_utils.py +675 -8
- mindspore/ops/operations/_inner_ops.py +3 -6
- mindspore/ops/operations/_sequence_ops.py +1 -1
- mindspore/ops/operations/comm_ops.py +185 -26
- mindspore/ops/operations/custom_ops.py +235 -172
- mindspore/ops/operations/debug_ops.py +55 -4
- mindspore/ops/operations/image_ops.py +13 -13
- mindspore/ops/operations/manually_defined/ops_def.py +15 -16
- mindspore/ops/operations/math_ops.py +3 -4
- mindspore/ops/operations/nn_ops.py +5 -6
- mindspore/ops/primitive.py +6 -10
- mindspore/ops/tensor_method.py +36 -4
- 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 +7 -2
- 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_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 -0
- 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 +4 -2
- mindspore/parallel/_cell_wrapper.py +106 -40
- mindspore/parallel/_parallel_serialization.py +1 -1
- 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 +13 -8
- mindspore/parallel/auto_parallel.py +12 -5
- mindspore/parallel/checkpoint_convert.py +3 -3
- mindspore/parallel/checkpoint_transform.py +3 -1
- mindspore/parallel/cluster/process_entity/_api.py +84 -48
- mindspore/parallel/cluster/process_entity/_utils.py +95 -7
- mindspore/parallel/cluster/run.py +43 -4
- mindspore/parallel/function/__init__.py +8 -1
- mindspore/parallel/function/reshard_func.py +1 -1
- mindspore/parallel/nn/__init__.py +15 -2
- mindspore/parallel/nn/parallel_cell_wrapper.py +9 -10
- mindspore/parallel/nn/parallel_grad_reducer.py +7 -6
- mindspore/parallel/shard.py +2 -2
- mindspore/parallel/transform_safetensors.py +462 -174
- 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 +3 -0
- 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_op_memory_viewer.py +42 -22
- 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/profiler_context.py +25 -27
- mindspore/profiler/common/profiler_info.py +0 -16
- mindspore/profiler/common/profiler_op_analyse.py +235 -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 +305 -314
- mindspore/profiler/envprofiler.py +12 -7
- mindspore/profiler/experimental_config.py +96 -6
- mindspore/profiler/mstx.py +33 -12
- mindspore/profiler/platform/__init__.py +2 -3
- mindspore/profiler/platform/npu_profiler.py +29 -19
- mindspore/profiler/profiler.py +35 -19
- mindspore/profiler/profiler_action_controller.py +64 -76
- 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 +1 -1
- mindspore/run_check/_check_version.py +7 -10
- mindspore/runtime/__init__.py +5 -5
- mindspore/runtime/event.py +10 -4
- mindspore/runtime/executor.py +60 -45
- mindspore/runtime/memory.py +21 -30
- mindspore/runtime/thread_bind_core.py +298 -164
- mindspore/safeguard/rewrite_obfuscation.py +12 -13
- mindspore/swresample-4.dll +0 -0
- mindspore/swscale-6.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/_utils.py +6 -2
- mindspore/train/amp.py +43 -20
- mindspore/train/callback/__init__.py +5 -5
- mindspore/train/callback/_checkpoint.py +3 -6
- mindspore/train/callback/_flops_collector.py +1 -1
- mindspore/train/callback/_landscape.py +0 -1
- mindspore/train/callback/_train_fault_tolerance.py +71 -13
- mindspore/train/data_sink.py +11 -2
- mindspore/train/dataset_helper.py +9 -0
- mindspore/train/model.py +51 -33
- mindspore/train/serialization.py +133 -111
- mindspore/train/summary/summary_record.py +13 -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 +162 -78
- mindspore/utils/sdc_detect.py +68 -0
- mindspore/utils/utils.py +6 -9
- mindspore/version.py +1 -1
- {mindspore-2.6.0.dist-info → mindspore-2.7.0rc1.dist-info}/METADATA +5 -4
- {mindspore-2.6.0.dist-info → mindspore-2.7.0rc1.dist-info}/RECORD +329 -367
- mindspore/_deprecated/jit.py +0 -198
- mindspore/experimental/es/__init__.py +0 -22
- mindspore/experimental/es/embedding_service.py +0 -891
- mindspore/experimental/es/embedding_service_layer.py +0 -581
- 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-2.6.0.dist-info → mindspore-2.7.0rc1.dist-info}/WHEEL +0 -0
- {mindspore-2.6.0.dist-info → mindspore-2.7.0rc1.dist-info}/entry_points.txt +0 -0
- {mindspore-2.6.0.dist-info → mindspore-2.7.0rc1.dist-info}/top_level.txt +0 -0
|
@@ -29,7 +29,7 @@ from common.op_proto import OpProto
|
|
|
29
29
|
from . import pyboost_utils
|
|
30
30
|
from .pyboost_utils import get_input_dtype, tuple_input_to_cpp_type, get_return_type, \
|
|
31
31
|
number_input_to_cpp_type, get_const_number_convert, get_tuple_input_convert, is_optional_param, \
|
|
32
|
-
get_input_args_type_str
|
|
32
|
+
get_input_args_type_str, basic_type_convert_str, input_dtype_to_cpp_type
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
class OpTemplateParser:
|
|
@@ -45,8 +45,42 @@ class OpTemplateParser:
|
|
|
45
45
|
|
|
46
46
|
def __init__(self, op_proto: OpProto):
|
|
47
47
|
self.op_proto = op_proto
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
self.tensor_arg_handler_prt_template = Template(
|
|
49
|
+
"parse_args.arg_list_[${idx}] = "
|
|
50
|
+
"py::cast((*pynative::${func_str}(\"${func_name}\", \"${op_arg_name}\", "
|
|
51
|
+
"parse_args.arg_list_[${idx}]))->value());\n"
|
|
52
|
+
"parse_args.src_types_[${idx}] = ops::OP_DTYPE::DT_BEGIN;\n"
|
|
53
|
+
"parse_args.dst_types_[${idx}] = ${new_type};\n"
|
|
54
|
+
)
|
|
55
|
+
self.function_arg_handler_prt_template = Template(
|
|
56
|
+
"parse_args.arg_list_[${idx}] = "
|
|
57
|
+
"py::cast((*${func_str}(\"${func_name}\", \"${op_arg_name}\", parse_args.arg_list_[${idx}]))->value());\n"
|
|
58
|
+
"parse_args.src_types_[${idx}] = ops::OP_DTYPE::DT_BEGIN;\n"
|
|
59
|
+
"parse_args.dst_types_[${idx}] = ${new_type};\n"
|
|
60
|
+
)
|
|
61
|
+
self.arg_handler_template = Template(
|
|
62
|
+
"parse_args.arg_list_[${idx}] = "
|
|
63
|
+
"py::cast(pynative::${func_str}(\"${func_name}\", \"${op_arg_name}\", parse_args.arg_list_[${idx}]));\n"
|
|
64
|
+
"parse_args.src_types_[${idx}] = ops::OP_DTYPE::DT_BEGIN;\n"
|
|
65
|
+
"parse_args.dst_types_[${idx}] = ${new_type};\n"
|
|
66
|
+
)
|
|
67
|
+
self.arg_handler_optional_template = Template(
|
|
68
|
+
'if (!py::isinstance<py::none>(parse_args.arg_list_[${idx}])) {\n'
|
|
69
|
+
' ${arg_handler_str}\n'
|
|
70
|
+
'}\n'
|
|
71
|
+
)
|
|
72
|
+
self.arg_handler_type_map = {"to_2d_paddings": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
73
|
+
"dtype_to_type_id": "ops::OP_DTYPE::DT_INT",
|
|
74
|
+
"to_kernel_size": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
75
|
+
"to_strides": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
76
|
+
"str_to_enum": "ops::OP_DTYPE::DT_INT",
|
|
77
|
+
"to_pair": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
78
|
+
"to_dilations": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
79
|
+
"to_output_padding": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
80
|
+
"to_rates": "ops::OP_DTYPE::DT_TUPLE_INT"}
|
|
81
|
+
|
|
82
|
+
@staticmethod
|
|
83
|
+
def _parse_call_args_types(op_proto, basic_type=False, is_convert=False):
|
|
50
84
|
"""
|
|
51
85
|
Parses the data types of the call arguments for the operator.
|
|
52
86
|
|
|
@@ -57,22 +91,37 @@ class OpTemplateParser:
|
|
|
57
91
|
list: A list of data types for the call arguments.
|
|
58
92
|
"""
|
|
59
93
|
call_args_types = []
|
|
60
|
-
|
|
94
|
+
if basic_type and not op_proto.op_view:
|
|
95
|
+
basic_type = False
|
|
96
|
+
raise Exception("Only view op support basic type now, please check.")
|
|
97
|
+
for op_arg in op_proto.op_args:
|
|
61
98
|
is_optional = is_optional_param(op_arg)
|
|
62
|
-
|
|
63
|
-
op_arg.
|
|
99
|
+
if is_convert:
|
|
100
|
+
if op_arg.is_type_id:
|
|
101
|
+
call_args_types.append('TypeId')
|
|
102
|
+
continue
|
|
103
|
+
call_args_types.append(input_dtype_to_cpp_type(
|
|
104
|
+
op_arg.arg_dtype, is_optional))
|
|
105
|
+
else:
|
|
106
|
+
call_args_types.append(get_input_dtype(
|
|
107
|
+
op_arg.arg_dtype, is_optional, basic_type))
|
|
64
108
|
return call_args_types
|
|
65
109
|
|
|
66
|
-
def parse_call_args_with_types(self):
|
|
110
|
+
def parse_call_args_with_types(self, basic_type=False, is_convert=False):
|
|
67
111
|
"""
|
|
68
112
|
Parses the original call arguments and their types for the operator.
|
|
69
113
|
|
|
70
114
|
Returns:
|
|
71
115
|
list: A list of formatted strings representing the call arguments with their types.
|
|
72
116
|
"""
|
|
73
|
-
call_args =
|
|
74
|
-
|
|
117
|
+
call_args = OpTemplateParser.parse_original_call_args(self.op_proto.op_args)
|
|
118
|
+
call_args_after_convert, _, _ = self.op_args_converter()
|
|
119
|
+
call_args_types = self._parse_call_args_types(self.op_proto, basic_type, is_convert)
|
|
75
120
|
call_args_with_types = []
|
|
121
|
+
if is_convert:
|
|
122
|
+
for type_name, arg_name in zip(call_args_types, call_args_after_convert):
|
|
123
|
+
call_args_with_types.append("const " + type_name + " &" + arg_name)
|
|
124
|
+
return call_args_with_types
|
|
76
125
|
for type_name, arg_name in zip(call_args_types, call_args):
|
|
77
126
|
call_args_with_types.append("const " + type_name + " &" + arg_name)
|
|
78
127
|
return call_args_with_types
|
|
@@ -90,7 +139,7 @@ class OpTemplateParser:
|
|
|
90
139
|
need_malloc_tensors = []
|
|
91
140
|
tensor_list_convert = []
|
|
92
141
|
call_args_with_tensor = []
|
|
93
|
-
call_args =
|
|
142
|
+
call_args = OpTemplateParser.parse_original_call_args(self.op_proto.op_args)
|
|
94
143
|
for op_arg, call_arg in zip(self.op_proto.op_args, call_args):
|
|
95
144
|
if pyboost_utils.is_tensor(op_arg):
|
|
96
145
|
call_arg = op_arg.arg_name + "_tensor"
|
|
@@ -105,7 +154,8 @@ class OpTemplateParser:
|
|
|
105
154
|
call_args_with_tensor.append(call_arg)
|
|
106
155
|
return need_malloc_tensors, tensor_list_convert, call_args_with_tensor
|
|
107
156
|
|
|
108
|
-
|
|
157
|
+
@staticmethod
|
|
158
|
+
def parse_original_call_args(op_args):
|
|
109
159
|
"""
|
|
110
160
|
Parses the original call arguments from the operator prototype.
|
|
111
161
|
|
|
@@ -139,7 +189,7 @@ class OpTemplateParser:
|
|
|
139
189
|
call_args_after_convert = []
|
|
140
190
|
value_tuple_convert = []
|
|
141
191
|
const_number_convert = []
|
|
142
|
-
call_args =
|
|
192
|
+
call_args = OpTemplateParser.parse_original_call_args(self.op_proto.op_args)
|
|
143
193
|
for op_arg, call_arg in zip(self.op_proto.op_args, call_args):
|
|
144
194
|
if number_input_to_cpp_type(op_arg.arg_dtype):
|
|
145
195
|
call_args_after_convert.append(call_arg + "_imm")
|
|
@@ -199,8 +249,7 @@ class OpTemplateParser:
|
|
|
199
249
|
args_signature = self.op_proto.op_args_signature
|
|
200
250
|
if args_signature is not None:
|
|
201
251
|
dtype_group = args_signature.dtype_group
|
|
202
|
-
indexes = {arg.arg_name: index for index,
|
|
203
|
-
arg in enumerate(self.op_proto.op_args)}
|
|
252
|
+
indexes = {arg.arg_name: index for index, arg in enumerate(self.op_proto.op_args)}
|
|
204
253
|
if dtype_group is not None:
|
|
205
254
|
match = re.findall(r'\((.*?)\)', dtype_group)
|
|
206
255
|
for item in match:
|
|
@@ -223,10 +272,10 @@ class OpTemplateParser:
|
|
|
223
272
|
list: A list of call arguments that are tensors.
|
|
224
273
|
"""
|
|
225
274
|
call_args_tensor = []
|
|
226
|
-
call_args_types = self._parse_call_args_types(self.op_proto
|
|
227
|
-
call_args =
|
|
275
|
+
call_args_types = self._parse_call_args_types(self.op_proto)
|
|
276
|
+
call_args = OpTemplateParser.parse_original_call_args(self.op_proto.op_args)
|
|
228
277
|
for _type, arg_name in zip(call_args_types, call_args):
|
|
229
|
-
if _type in ("mindspore::tensor::
|
|
278
|
+
if _type in ("mindspore::tensor::TensorPtr", "std::optional<mindspore::tensor::TensorPtr>"):
|
|
230
279
|
call_args_tensor.append(arg_name)
|
|
231
280
|
return call_args_tensor
|
|
232
281
|
|
|
@@ -258,8 +307,8 @@ class OpTemplateParser:
|
|
|
258
307
|
"""
|
|
259
308
|
returns_type = []
|
|
260
309
|
type_convert_to_base = {
|
|
261
|
-
'std::vector<mindspore::tensor::TensorPtr>': 'std::vector<mindspore::tensor::
|
|
262
|
-
'mindspore::tensor::TensorPtr': 'mindspore::tensor::
|
|
310
|
+
'std::vector<mindspore::tensor::TensorPtr>': 'std::vector<mindspore::tensor::TensorPtr>',
|
|
311
|
+
'mindspore::tensor::TensorPtr': 'mindspore::tensor::TensorPtr'
|
|
263
312
|
}
|
|
264
313
|
for return_obj in self.op_proto.op_returns:
|
|
265
314
|
temp_return = get_return_type(return_obj.arg_dtype)
|
|
@@ -316,14 +365,6 @@ class OpTemplateParser:
|
|
|
316
365
|
|
|
317
366
|
return op_outputs, call_outputs
|
|
318
367
|
|
|
319
|
-
def _is_input_arg(self, arg_name, op_name):
|
|
320
|
-
res = False
|
|
321
|
-
if op_name in K.INPUT_NAME_MAP and arg_name == K.INPUT_NAME_MAP[op_name]:
|
|
322
|
-
res = True
|
|
323
|
-
elif op_name not in K.INPUT_NAME_MAP and arg_name in K.INPUT_ARGS_NAME:
|
|
324
|
-
res = True
|
|
325
|
-
return res
|
|
326
|
-
|
|
327
368
|
def generate_signature_str(self, kw_only_args=None, varargs=None, *, is_tensor_api: bool) -> str:
|
|
328
369
|
"""
|
|
329
370
|
Generates a single function signature string for the given operation prototype.
|
|
@@ -348,7 +389,7 @@ class OpTemplateParser:
|
|
|
348
389
|
for arg in self.op_proto.op_args:
|
|
349
390
|
arg_name = arg.arg_name
|
|
350
391
|
|
|
351
|
-
if is_tensor_api and
|
|
392
|
+
if is_tensor_api and _is_input_arg(arg_name, op_name):
|
|
352
393
|
continue
|
|
353
394
|
|
|
354
395
|
single_arg = ''
|
|
@@ -398,42 +439,9 @@ class OpTemplateParser:
|
|
|
398
439
|
Returns:
|
|
399
440
|
str: Generated argument handler processing code.
|
|
400
441
|
"""
|
|
401
|
-
tensor_arg_handler_prt_template = Template(
|
|
402
|
-
"parse_args.arg_list_[${idx}] = "
|
|
403
|
-
"py::cast((*pynative::${func_str}(\"${func_name}\", \"${op_arg_name}\", \
|
|
404
|
-
parse_args.arg_list_[${idx}]))->value());\n"
|
|
405
|
-
"parse_args.src_types_[${idx}] = ops::OP_DTYPE::DT_BEGIN;\n"
|
|
406
|
-
"parse_args.dst_types_[${idx}] = ${new_type};\n"
|
|
407
|
-
)
|
|
408
|
-
function_arg_handler_prt_template = Template(
|
|
409
|
-
"parse_args.arg_list_[${idx}] = "
|
|
410
|
-
"py::cast((*${func_str}(\"${func_name}\", \"${op_arg_name}\", parse_args.arg_list_[${idx}]))->value());\n"
|
|
411
|
-
"parse_args.src_types_[${idx}] = ops::OP_DTYPE::DT_BEGIN;\n"
|
|
412
|
-
"parse_args.dst_types_[${idx}] = ${new_type};\n"
|
|
413
|
-
)
|
|
414
442
|
arg_handler_prt_template = (
|
|
415
|
-
tensor_arg_handler_prt_template) if is_tensor_api else function_arg_handler_prt_template
|
|
443
|
+
self.tensor_arg_handler_prt_template) if is_tensor_api else self.function_arg_handler_prt_template
|
|
416
444
|
|
|
417
|
-
arg_handler_template = Template(
|
|
418
|
-
"parse_args.arg_list_[${idx}] = "
|
|
419
|
-
"py::cast(pynative::${func_str}(\"${func_name}\", \"${op_arg_name}\", parse_args.arg_list_[${idx}]));\n"
|
|
420
|
-
"parse_args.src_types_[${idx}] = ops::OP_DTYPE::DT_BEGIN;\n"
|
|
421
|
-
"parse_args.dst_types_[${idx}] = ${new_type};\n"
|
|
422
|
-
)
|
|
423
|
-
arg_handler_optional_template = Template(
|
|
424
|
-
'if (!py::isinstance<py::none>(parse_args.arg_list_[${idx}])) {\n'
|
|
425
|
-
' ${arg_handler_str}\n'
|
|
426
|
-
'}\n'
|
|
427
|
-
)
|
|
428
|
-
arg_handler_type_map = {"to_2d_paddings": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
429
|
-
"dtype_to_type_id": "ops::OP_DTYPE::DT_INT",
|
|
430
|
-
"to_kernel_size": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
431
|
-
"to_strides": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
432
|
-
"str_to_enum": "ops::OP_DTYPE::DT_INT",
|
|
433
|
-
"to_pair": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
434
|
-
"to_dilations": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
435
|
-
"to_output_padding": "ops::OP_DTYPE::DT_TUPLE_INT",
|
|
436
|
-
"to_rates": "ops::OP_DTYPE::DT_TUPLE_INT"}
|
|
437
445
|
arg_handler_processor = []
|
|
438
446
|
op_args = op_proto.op_args
|
|
439
447
|
for idx, op_arg in enumerate(op_args):
|
|
@@ -442,7 +450,7 @@ parse_args.arg_list_[${idx}]))->value());\n"
|
|
|
442
450
|
for word in arg_handler.split('_'))
|
|
443
451
|
if arg_handler:
|
|
444
452
|
op_arg_name = op_arg.arg_name
|
|
445
|
-
new_type = arg_handler_type_map
|
|
453
|
+
new_type = self.arg_handler_type_map.get(arg_handler, "Not exist")
|
|
446
454
|
if func_str in ("StrToEnum", "DtypeToTypeId"):
|
|
447
455
|
arg_handler_str = arg_handler_prt_template.replace(func_str=func_str,
|
|
448
456
|
func_name=func_name,
|
|
@@ -450,20 +458,21 @@ parse_args.arg_list_[${idx}]))->value());\n"
|
|
|
450
458
|
idx=idx,
|
|
451
459
|
new_type=new_type)
|
|
452
460
|
else:
|
|
453
|
-
arg_handler_str = arg_handler_template.replace(func_str=func_str,
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
461
|
+
arg_handler_str = self.arg_handler_template.replace(func_str=func_str,
|
|
462
|
+
func_name=func_name,
|
|
463
|
+
op_arg_name=op_arg_name,
|
|
464
|
+
idx=idx,
|
|
465
|
+
new_type=new_type)
|
|
458
466
|
|
|
459
467
|
if op_arg.default == "None":
|
|
460
|
-
arg_handler_str = arg_handler_optional_template.replace(idx=idx,
|
|
461
|
-
|
|
468
|
+
arg_handler_str = self.arg_handler_optional_template.replace(idx=idx,
|
|
469
|
+
arg_handler_str=arg_handler_str)
|
|
462
470
|
arg_handler_processor.append(arg_handler_str)
|
|
463
471
|
|
|
464
472
|
return arg_handler_processor
|
|
465
473
|
|
|
466
|
-
|
|
474
|
+
@staticmethod
|
|
475
|
+
def get_input_tensor_index(op_proto):
|
|
467
476
|
"""
|
|
468
477
|
Get index of input.
|
|
469
478
|
|
|
@@ -500,14 +509,22 @@ parse_args.arg_list_[${idx}]))->value());\n"
|
|
|
500
509
|
if is_tensor_api:
|
|
501
510
|
self_index = self.get_input_tensor_index(op_proto)
|
|
502
511
|
convert_args_str = ""
|
|
512
|
+
arg_basic_convert_template = Template("parse_args.${convert_func}(${index}), ")
|
|
503
513
|
for idx, op_arg in enumerate(op_proto.op_args):
|
|
504
514
|
if is_tensor_api:
|
|
505
515
|
if self_index == idx:
|
|
506
516
|
convert_args_str += "input_tensor, "
|
|
507
517
|
continue
|
|
508
518
|
is_optional = is_optional_param(op_arg)
|
|
519
|
+
if op_proto.op_view:
|
|
520
|
+
convert_func = basic_type_convert_str(op_arg.arg_dtype, False)
|
|
521
|
+
if convert_func != "":
|
|
522
|
+
arg_convert_str = arg_basic_convert_template.replace(convert_func=convert_func,
|
|
523
|
+
index=idx)
|
|
524
|
+
convert_args_str += arg_convert_str
|
|
525
|
+
continue
|
|
509
526
|
arg_convert_template = Template("parse_args.ConvertOptional<${des_type}>(${index}), ") if is_optional \
|
|
510
|
-
|
|
527
|
+
else Template("parse_args.Convert<${des_type}>(${index}), ")
|
|
511
528
|
if op_arg.is_type_id:
|
|
512
529
|
arg_type_str = get_input_args_type_str('type', False)
|
|
513
530
|
else:
|
|
@@ -515,3 +532,12 @@ parse_args.arg_list_[${idx}]))->value());\n"
|
|
|
515
532
|
convert_args_str += arg_convert_template.replace(index=idx,
|
|
516
533
|
des_type=arg_type_str[:-3])
|
|
517
534
|
return convert_args_str[:-2]
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
def _is_input_arg(arg_name, op_name):
|
|
538
|
+
res = False
|
|
539
|
+
if op_name in K.INPUT_NAME_MAP and arg_name == K.INPUT_NAME_MAP[op_name]:
|
|
540
|
+
res = True
|
|
541
|
+
elif op_name not in K.INPUT_NAME_MAP and arg_name in K.INPUT_ARGS_NAME:
|
|
542
|
+
res = True
|
|
543
|
+
return res
|