diff --git a/ge/CMakeLists.txt b/ge/CMakeLists.txt index 5470542f..2fa96735 100755 --- a/ge/CMakeLists.txt +++ b/ge/CMakeLists.txt @@ -110,70 +110,27 @@ endif () ################################################################## set(EXECUTOR_SRC_LIST "analyzer/analyzer.cc" - #"client/ge_api.cc" "common/dump/dump_manager.cc" "common/dump/dump_op.cc" "common/dump/dump_properties.cc" "common/dump/exception_dumper.cc" "common/dump/opdebug_register.cc" - #"common/formats/format_transfers/datatype_transfer.cc" - #"common/formats/format_transfers/format_transfer_c1hwncoc0_hwcn.cc" - #"common/formats/format_transfers/format_transfer_dhwcn_fracz3D.cc" - #"common/formats/format_transfers/format_transfer_dhwnc_fracz3D_transpose.cc" - #"common/formats/format_transfers/format_transfer_fractal_nz.cc" - #"common/formats/format_transfers/format_transfer_fractal_z.cc" - #"common/formats/format_transfers/format_transfer_fractal_zz.cc" - #"common/formats/format_transfers/format_transfer_fracz_hwcn.cc" - #"common/formats/format_transfers/format_transfer_fracz_nchw.cc" - #"common/formats/format_transfers/format_transfer_fracz_nhwc.cc" - #"common/formats/format_transfers/format_transfer_hwcn_c1hwncoc0.cc" - #"common/formats/format_transfers/format_transfer_nc1hwc0_nchw.cc" - #"common/formats/format_transfers/format_transfer_nc1hwc0_nhwc.cc" - #"common/formats/format_transfers/format_transfer_nchw_nc1hwc0.cc" - #"common/formats/format_transfers/format_transfer_nhwc_nc1hwc0.cc" "common/formats/format_transfers/format_transfer_transpose.cc" - #"common/formats/formats.cc" "common/formats/utils/formats_trans_utils.cc" "common/fp16_t.cc" "common/ge/op_tiling_manager.cc" "common/ge/plugin_manager.cc" - #"common/helper/model_cache_helper.cc" "common/profiling/ge_profiling.cc" - #"common/profiling/ge_runner_profiling.cc" "common/profiling/profiling_manager.cc" "engine_manager/dnnengine_manager.cc" "executor/ge_executor.cc" "ge_local_engine/engine/host_cpu_engine.cc" - #"ge_opt_info/ge_opt_info.cc" - #"generator/ge_generator.cc" - #"generator/generator_api.cc" - #"graph/build/graph_builder.cc" - #"graph/build/label_allocator.cc" - #"graph/build/logical_stream_allocator.cc" - #"graph/build/memory/binary_block_mem_assigner.cc" - #"graph/build/memory/block_mem_assigner.cc" - #"graph/build/memory/buffer_pool_mem_assigner.cc" - #"graph/build/memory/graph_mem_assigner.cc" - #"graph/build/memory/hybrid_mem_assigner.cc" - #"graph/build/memory/max_block_mem_assigner.cc" - #"graph/build/memory/memory_assigner.cc" "graph/build/memory/var_mem_assign_util.cc" - #"graph/build/model_builder.cc" - #"graph/build/run_context.cc" - #"graph/build/stream_allocator.cc" - #"graph/build/stream_graph_optimizer.cc" - #"graph/build/task_generator.cc" "graph/common/bcast.cc" "graph/common/local_context.cc" "graph/common/omg_util.cc" - #"graph/common/transop_util.cc" "graph/execute/graph_execute.cc" "graph/execute/model_executor.cc" - #"graph/label/case_label_maker.cc" - #"graph/label/if_label_maker.cc" - #"graph/label/label_maker.cc" - #"graph/label/partitioned_call_label_maker.cc" - #"graph/label/while_label_maker.cc" "graph/load/graph_loader.cc" "graph/load/model_manager/aipp_utils.cc" "graph/load/model_manager/cpu_queue_schedule.cc" @@ -208,8 +165,6 @@ set(EXECUTOR_SRC_LIST "graph/load/model_manager/zero_copy_offset.cc" "graph/load/model_manager/zero_copy_task.cc" "graph/manager/graph_caching_allocator.cc" - #"graph/manager/graph_context.cc" - #"graph/manager/graph_manager.cc" "graph/manager/graph_manager_utils.cc" "graph/manager/graph_mem_allocator.cc" "graph/manager/graph_mem_manager.cc" @@ -217,128 +172,12 @@ set(EXECUTOR_SRC_LIST "graph/manager/host_mem_allocator.cc" "graph/manager/host_mem_manager.cc" #"graph/manager/memory_api.cc" # Just for runner. - #"graph/manager/model_manager/event_manager.cc" "graph/manager/rdma_pool_allocator.cc" "graph/manager/session_scope_mem_allocator.cc" "graph/manager/trans_var_data_utils.cc" "graph/manager/util/debug.cc" #"graph/manager/util/hcom_util.cc" # Just for runner. - #"graph/manager/util/rt_context_util.cc" - #"graph/manager/util/variable_accelerate_ctrl.cc" - #"graph/optimize/graph_optimize.cc" - #"graph/optimize/mem_rw_conflict_optimize.cc" - #"graph/optimize/summary_optimize.cc" - #"graph/partition/dynamic_shape_partition.cc" - #"graph/partition/engine_place.cc" - #"graph/partition/graph_partition.cc" - #"graph/partition/stage_partition.cc" - #"graph/passes/addn_pass.cc" - #"graph/passes/aicpu_constant_folding_pass.cc" - #"graph/passes/assert_pass.cc" - #"graph/passes/assign_remove_pass.cc" - #"graph/passes/atomic_addr_clean_pass.cc" - #"graph/passes/attach_stream_label_pass.cc" - #"graph/passes/base_pass.cc" - #"graph/passes/bitcast_pass.cc" - #"graph/passes/buffer_pool_memory_pass.cc" - #"graph/passes/cast_remove_pass.cc" - #"graph/passes/cast_translate_pass.cc" - #"graph/passes/common_subexpression_elimination_pass.cc" - #"graph/passes/compile_nodes_pass.cc" - #"graph/passes/cond_pass.cc" - #"graph/passes/cond_remove_pass.cc" - #"graph/passes/constant_folding_pass.cc" - #"graph/passes/constant_fuse_same_pass.cc" - #"graph/passes/control_trigger_pass.cc" - #"graph/passes/ctrl_edge_transfer_pass.cc" - #"graph/passes/data_pass.cc" - #"graph/passes/dimension_adjust_pass.cc" - #"graph/passes/dimension_compute_pass.cc" - #"graph/passes/dropout_pass.cc" - #"graph/passes/end_of_sequence_add_control_pass.cc" - #"graph/passes/enter_pass.cc" - #"graph/passes/flow_ctrl_pass.cc" - #"graph/passes/folding_pass.cc" - #"graph/passes/for_pass.cc" - #"graph/passes/fuse_data_nodes_with_common_input_pass.cc" - #"graph/passes/get_original_format_pass.cc" - #"graph/passes/global_step_insert_pass.cc" - #"graph/passes/guarantee_const_pass.cc" - #"graph/passes/hccl_continuous_memcpy_pass.cc" - #"graph/passes/hccl_group_pass.cc" - #"graph/passes/hccl_memcpy_pass.cc" - #"graph/passes/hccl_tailing_optimization_pass.cc" - #"graph/passes/identity_pass.cc" - #"graph/passes/infer_base_pass.cc" - #"graph/passes/infer_value_range_pass.cc" - #"graph/passes/infershape_pass.cc" - #"graph/passes/inplace_support_check_pass.cc" - #"graph/passes/input_output_connection_identify_pass.cc" - #"graph/passes/iterator_op_pass.cc" - #"graph/passes/link_gen_mask_nodes_pass.cc" - #"graph/passes/mark_agnostic_pass.cc" - #"graph/passes/mark_force_unknown_for_cond_pass.cc" - #"graph/passes/mark_graph_unknown_status_pass.cc" - #"graph/passes/mark_node_unknown_shape_pass.cc" - #"graph/passes/mark_same_addr_pass.cc" - #"graph/passes/memcpy_addr_async_pass.cc" - #"graph/passes/merge_input_memcpy_pass.cc" - #"graph/passes/merge_pass.cc" - #"graph/passes/merge_to_stream_merge_pass.cc" - #"graph/passes/multi_batch_clone_pass.cc" - #"graph/passes/multi_batch_pass.cc" - #"graph/passes/net_output_pass.cc" - #"graph/passes/next_iteration_pass.cc" - #"graph/passes/no_use_reshape_remove_pass.cc" - #"graph/passes/parallel_concat_start_op_pass.cc" - #"graph/passes/parallel_group_pass.cc" - #"graph/passes/pass_manager.cc" "graph/passes/pass_utils.cc" - #"graph/passes/permute_pass.cc" - #"graph/passes/placeholder_with_default_pass.cc" - #"graph/passes/prevent_gradient_pass.cc" - #"graph/passes/print_op_pass.cc" - #"graph/passes/prune_pass.cc" - #"graph/passes/ref_identity_delete_op_pass.cc" - #"graph/passes/remove_same_const_pass.cc" - #"graph/passes/replace_transshape_pass.cc" - #"graph/passes/replace_with_empty_const_pass.cc" - #"graph/passes/reshape_recovery_pass.cc" - #"graph/passes/reshape_remove_pass.cc" - #"graph/passes/resource_pair_add_control_pass.cc" - #"graph/passes/resource_pair_remove_control_pass.cc" - #"graph/passes/same_transdata_breadth_fusion_pass.cc" - #"graph/passes/save_pass.cc" - #"graph/passes/set_input_output_offset_pass.cc" - #"graph/passes/shape_operate_op_remove_pass.cc" - #"graph/passes/snapshot_pass.cc" - #"graph/passes/stop_gradient_pass.cc" - #"graph/passes/subexpression_migration_pass.cc" - #"graph/passes/subgraph_const_migration_pass.cc" - #"graph/passes/subgraph_pass.cc" - #"graph/passes/switch_data_edges_bypass.cc" - #"graph/passes/switch_dead_branch_elimination.cc" - #"graph/passes/switch_logic_remove_pass.cc" - #"graph/passes/switch_to_stream_switch_pass.cc" - #"graph/passes/transop_breadth_fusion_pass.cc" - #"graph/passes/transop_depth_fusion_pass.cc" - #"graph/passes/transop_nearby_allreduce_fusion_pass.cc" - #"graph/passes/transop_symmetry_elimination_pass.cc" - #"graph/passes/transop_without_reshape_fusion_pass.cc" - #"graph/passes/transpose_transdata_pass.cc" - #"graph/passes/unused_args_clean_pass.cc" - #"graph/passes/unused_const_pass.cc" - #"graph/passes/useless_control_out_remove_pass.cc" - #"graph/passes/var_is_initialized_op_pass.cc" - #"graph/passes/variable_op_pass.cc" - #"graph/passes/variable_prepare_op_pass.cc" - #"graph/passes/variable_ref_delete_op_pass.cc" - #"graph/passes/variable_ref_useless_control_out_delete_pass.cc" - #"graph/preprocess/graph_preprocess.cc" - #"graph/preprocess/insert_op/ge_aipp_op.cc" - #"graph/preprocess/insert_op/util_insert_aipp_op.cc" - #"graph/preprocess/multi_batch_copy_graph.cc" - #"graph/preprocess/multi_batch_options.cc" "host_kernels/add_kernel.cc" "host_kernels/broadcast_args_kernel.cc" "host_kernels/broadcast_gradient_args_kernel.cc" @@ -416,17 +255,10 @@ set(EXECUTOR_SRC_LIST "hybrid/node_executor/rts/rts_task_factory.cc" "hybrid/node_executor/task_context.cc" "init/gelib.cc" - #"ir_build/attr_options/keep_dtype_option.cc" - #"ir_build/attr_options/utils.cc" - #"ir_build/attr_options/weight_compress_option.cc" - #"ir_build/ge_ir_build.cc" - #"ir_build/option_utils.cc" "model/ge_model.cc" "model/ge_root_model.cc" "opskernel_manager/ops_kernel_builder_manager.cc" "opskernel_manager/ops_kernel_manager.cc" - #"session/inner_session.cc" - #"session/session_manager.cc" "single_op/single_op.cc" "single_op/single_op_manager.cc" "single_op/single_op_model.cc" @@ -445,9 +277,6 @@ set(COMPILER_SRC_LIST "common/dump/dump_manager.cc" "common/dump/dump_op.cc" "common/dump/dump_properties.cc" - #"common/dump/dump_server.cc" - "common/dump/exception_dumper.cc" - "common/dump/opdebug_register.cc" "common/formats/format_transfers/datatype_transfer.cc" "common/formats/format_transfers/format_transfer_c1hwncoc0_hwcn.cc" "common/formats/format_transfers/format_transfer_dhwcn_fracz3D.cc" @@ -497,44 +326,12 @@ set(COMPILER_SRC_LIST "graph/common/local_context.cc" "graph/common/omg_util.cc" "graph/common/transop_util.cc" - #"graph/execute/graph_execute.cc" "graph/label/case_label_maker.cc" "graph/label/if_label_maker.cc" "graph/label/label_maker.cc" "graph/label/partitioned_call_label_maker.cc" "graph/label/while_label_maker.cc" - "graph/load/graph_loader.cc" - "graph/load/model_manager/aipp_utils.cc" - "graph/load/model_manager/cpu_queue_schedule.cc" - "graph/load/model_manager/data_dumper.cc" - "graph/load/model_manager/data_inputer.cc" - "graph/load/model_manager/davinci_model.cc" - "graph/load/model_manager/model_manager.cc" "graph/load/model_manager/model_utils.cc" - "graph/load/model_manager/task_info/end_graph_task_info.cc" - "graph/load/model_manager/task_info/event_record_task_info.cc" - "graph/load/model_manager/task_info/event_wait_task_info.cc" - "graph/load/model_manager/task_info/ffts_task_info.cc" - "graph/load/model_manager/task_info/fusion_start_task_info.cc" - "graph/load/model_manager/task_info/fusion_stop_task_info.cc" - "graph/load/model_manager/task_info/kernel_ex_task_info.cc" - "graph/load/model_manager/task_info/kernel_task_info.cc" - "graph/load/model_manager/task_info/label_goto_ex_task_info.cc" - "graph/load/model_manager/task_info/label_set_task_info.cc" - "graph/load/model_manager/task_info/label_switch_by_index_task_info.cc" - "graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc" - "graph/load/model_manager/task_info/memcpy_async_task_info.cc" - "graph/load/model_manager/task_info/model_exit_task_info.cc" - "graph/load/model_manager/task_info/profiler_trace_task_info.cc" - "graph/load/model_manager/task_info/stream_active_task_info.cc" - "graph/load/model_manager/task_info/stream_switch_task_info.cc" - "graph/load/model_manager/task_info/stream_switchn_task_info.cc" - "graph/load/model_manager/task_info/super_kernel/super_kernel.cc" - "graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc" - "graph/load/model_manager/task_info/task_info.cc" - "graph/load/model_manager/tbe_handle_store.cc" - "graph/load/model_manager/zero_copy_offset.cc" - "graph/load/model_manager/zero_copy_task.cc" "graph/manager/graph_caching_allocator.cc" "graph/manager/graph_context.cc" "graph/manager/graph_manager.cc" @@ -704,7 +501,6 @@ set(COMPILER_SRC_LIST "host_kernels/transpose_kernel.cc" "host_kernels/unpack_kernel.cc" "host_kernels/unsqueeze_kernel.cc" - #"hybrid/hybrid_davinci_model_stub.cc" "hybrid/node_executor/aicpu/aicpu_ext_info.cc" "init/gelib.cc" "ir_build/attr_options/keep_dtype_option.cc" @@ -828,8 +624,6 @@ target_link_libraries(ge_runner PRIVATE ############ libge_compiler.so ############ add_library(ge_compiler SHARED - "common/dump/dump_server.cc" - "hybrid/hybrid_davinci_model_stub.cc" ${COMPILER_SRC_LIST} ) diff --git a/ge/graph/execute/model_executor.cc b/ge/graph/execute/model_executor.cc index 2fc7b0af..d1683f1d 100644 --- a/ge/graph/execute/model_executor.cc +++ b/ge/graph/execute/model_executor.cc @@ -47,6 +47,13 @@ Status ModelExecutor::Initialize(const map &options, uint64_t se return MEMALLOC_FAILED; } + const auto model_manager = ModelManager::GetInstance(); + GE_CHECK_NOTNULL(model_manager); + Status status = model_manager->EnableExceptionDump(options); + if (status != SUCCESS) { + return status; + } + session_id_ = session_id; train_graph_flag_ = ParseTrainGraphFlag(); thread_run_flag_.store(true); diff --git a/ge/graph/label/while_label_maker.h b/ge/graph/label/while_label_maker.h index 6c30475b..1561b860 100644 --- a/ge/graph/label/while_label_maker.h +++ b/ge/graph/label/while_label_maker.h @@ -19,57 +19,59 @@ #include "graph/node.h" #include "graph/label/label_maker.h" -/******************************************************************************* - +------------+ - | Node | - +------------+ - | Node | - +------------+ - | While | - +------------+ - +-----------+ - | Node | +------------+ - +-----------+ | LabelSet |\ - | Node | +------------+ \ - +-----------+ |StreamActive| \ - | Node | +------------+ A - +-----------+ | c | | - | While | +------------+ | - +-----------+ | o | | - | Node | +------------+ | - +-----------+ | n | | - | Node | +------------+ | - +-----------+ | d | | - | Node | +------------+ | - +-----------+ /|SwitchByIdx | | - / +------------+ | - ====> / | - | \ +------------+ | - | \|LabelSet(1) | | - | +------------+ | - | |StreamActive| | - | +------------+ | - +-----------+ +-----------+ | | b | | - | c | | b | | +------------+ | - +-----------+ +-----------+ | | o | | - | o | | o | | +------------+ | - +-----------+ +-----------+ | | d | | - | n | | d | | +------------+ | - +-----------+ +-----------+ | | y | / - | d | | y | V +------------+ / - +-----------+ +-----------+ \ | LabelGoto |/ - \ +------------+ - \|LabelSet(0) | - +------------+ - - +------------+ - | Node | - +------------+ - | Node | - +------------+ - | Node | - +------------+ -*******************************************************************************/ +/*********************************************************************************************************************** + +------------+ Step0: DavinciModel::InitNodes + | Node | + +------------+ rtLabelCreateExV2 + | Node | + +------------+ + | Node | + +------------+ + | While | + +------------+ + +-----------+ Step1: TaskInfo::Init + | Node | +------------+ + +-----------+ | LabelSet(0)|\ LabelSetTaskInfo --> id=0 + | Node | +------------+ \ + +-----------+ |StreamActive| \ If active_stream_list empty, not task. + | Node | +------------+ A + +-----------+ | c | | + | While | +------------+ | + +-----------+ | o | | + | Node | +------------+ | + +-----------+ | n | | + | Node | +------------+ | + +-----------+ | d | | + | Node | +------------+ | + +-----------+ /|SwitchByIdx | | LabelSwitchByIndexTaskInfo --> rtLabelListCpy({1,2}) + / +------------+ | + ====> / | + | \ +------------+ | + | \| LabelSet(1)| | LabelSetTaskInfo --> id=1 + | +------------+ | + | |StreamActive| | If active_stream_list empty, not task. + | +------------+ | + +-----------+ +-----------+ | | b | | + | c | | b | | +------------+ | + +-----------+ +-----------+ | | o | | + | o | | o | | +------------+ | + +-----------+ +-----------+ | | d | | + | n | | d | | +------------+ | + +-----------+ +-----------+ | | y | / + | d | | y | V +------------+ / + +-----------+ +-----------+ \ | LabelGoto |/ LabelGotoExTaskInfo --> GetLabelGotoAddr(id=0) + \ +------------+ + \| LabelSet(2)| LabelSetTaskInfo --> id=2 + +------------+ + Step2: TaskInfo::Distribute + +------------+ + | Node | LabelSetTaskInfo --> rtLabelSet + +------------+ LabelSwitchByIndexTaskInfo --> rtLabelSwitchByIndex + | Node | LabelSetTaskInfo --> rtLabelSet + +------------+ LabelGotoExTaskInfo --> rtLabelSwitchByIndex + | Node | LabelSetTaskInfo --> rtLabelSet + +------------+ +***********************************************************************************************************************/ namespace ge { class WhileOpLabelMaker : public LabelMaker { public: diff --git a/ge/init/gelib.cc b/ge/init/gelib.cc index 0350328d..1a2f0d5b 100644 --- a/ge/init/gelib.cc +++ b/ge/init/gelib.cc @@ -37,7 +37,6 @@ #include "graph/common/ge_call_wrapper.h" #include "graph/ge_context.h" #include "graph/ge_global_options.h" -#include "graph/load/model_manager/model_manager.h" #include "graph/manager/graph_mem_manager.h" #include "graph/manager/host_mem_manager.h" #include "graph/manager/graph_var_manager.h" @@ -196,12 +195,6 @@ Status GELib::SystemInitialize(const map &options) { // In train and infer, profiling is always needed. InitProfiling(this->options_); - auto model_manager = ModelManager::GetInstance(); - GE_CHECK_NOTNULL(model_manager); - GE_IF_BOOL_EXEC(model_manager->EnableExceptionDump(options) != SUCCESS, - REPORT_CALL_ERROR("E19999", "ModelManager EnableExceptionDump failed."); - GELOGE(FAILED, "[Enable][ExceptionDump] failed."); - return FAILED); // 1.`is_train_mode_` means case: train // 2.`(!is_train_mode_) && (options_.device_id != kDefaultDeviceIdForInfer)` means case: online infer // these two case with logical device id