|
|
@ -18,6 +18,7 @@
|
|
|
|
#include <map>
|
|
|
|
#include <map>
|
|
|
|
#include <set>
|
|
|
|
#include <set>
|
|
|
|
#include <string>
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
#include <utility>
|
|
|
|
#include "common/formats/format_transfers/format_transfer_fractal_nz.h"
|
|
|
|
#include "common/formats/format_transfers/format_transfer_fractal_nz.h"
|
|
|
|
#include "common/formats/format_transfers/format_transfer_fractal_z.h"
|
|
|
|
#include "common/formats/format_transfers/format_transfer_fractal_z.h"
|
|
|
|
#include "common/formats/format_transfers/format_transfer_nchw_nc1hwc0.h"
|
|
|
|
#include "common/formats/format_transfers/format_transfer_nchw_nc1hwc0.h"
|
|
|
@ -27,9 +28,13 @@
|
|
|
|
#include "common/helper/model_helper.h"
|
|
|
|
#include "common/helper/model_helper.h"
|
|
|
|
#include "common/math/math_util.h"
|
|
|
|
#include "common/math/math_util.h"
|
|
|
|
#include "common/op/ge_op_utils.h"
|
|
|
|
#include "common/op/ge_op_utils.h"
|
|
|
|
|
|
|
|
#include "common/util/error_manager/error_manager.h"
|
|
|
|
|
|
|
|
#include "common/formats/utils/formats_trans_utils.h"
|
|
|
|
|
|
|
|
#include "framework/common/debug/ge_log.h"
|
|
|
|
#include "graph/common/ge_call_wrapper.h"
|
|
|
|
#include "graph/common/ge_call_wrapper.h"
|
|
|
|
#include "graph/common/local_context.h"
|
|
|
|
#include "graph/common/local_context.h"
|
|
|
|
#include "graph/common/transop_util.h"
|
|
|
|
#include "graph/common/transop_util.h"
|
|
|
|
|
|
|
|
#include "graph/debug/ge_attr_define.h"
|
|
|
|
#include "graph/ge_context.h"
|
|
|
|
#include "graph/ge_context.h"
|
|
|
|
#include "graph/shape_refiner.h"
|
|
|
|
#include "graph/shape_refiner.h"
|
|
|
|
#include "graph/manager/graph_var_manager.h"
|
|
|
|
#include "graph/manager/graph_var_manager.h"
|
|
|
@ -39,21 +44,29 @@
|
|
|
|
#include "graph/passes/aicpu_constant_folding_pass.h"
|
|
|
|
#include "graph/passes/aicpu_constant_folding_pass.h"
|
|
|
|
#include "graph/passes/assert_pass.h"
|
|
|
|
#include "graph/passes/assert_pass.h"
|
|
|
|
#include "graph/passes/assign_pass.h"
|
|
|
|
#include "graph/passes/assign_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/base_pass.h"
|
|
|
|
#include "graph/passes/common_subexpression_elimination_pass.h"
|
|
|
|
#include "graph/passes/common_subexpression_elimination_pass.h"
|
|
|
|
#include "graph/passes/cond_pass.h"
|
|
|
|
#include "graph/passes/cond_pass.h"
|
|
|
|
#include "graph/passes/cond_remove_pass.h"
|
|
|
|
#include "graph/passes/cond_remove_pass.h"
|
|
|
|
#include "graph/passes/constant_folding_pass.h"
|
|
|
|
#include "graph/passes/constant_folding_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/constant_fuse_same_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/control_trigger_pass.h"
|
|
|
|
#include "graph/passes/dimension_adjust_pass.h"
|
|
|
|
#include "graph/passes/dimension_adjust_pass.h"
|
|
|
|
#include "graph/passes/dimension_compute_pass.h"
|
|
|
|
#include "graph/passes/dimension_compute_pass.h"
|
|
|
|
#include "graph/passes/dropout_pass.h"
|
|
|
|
#include "graph/passes/dropout_pass.h"
|
|
|
|
#include "graph/passes/enter_pass.h"
|
|
|
|
#include "graph/passes/enter_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/flow_ctrl_pass.h"
|
|
|
|
#include "graph/passes/for_pass.h"
|
|
|
|
#include "graph/passes/for_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/get_original_format_pass.h"
|
|
|
|
#include "graph/passes/guarantee_const_pass.h"
|
|
|
|
#include "graph/passes/guarantee_const_pass.h"
|
|
|
|
#include "graph/passes/hccl_group_pass.h"
|
|
|
|
#include "graph/passes/hccl_group_pass.h"
|
|
|
|
#include "graph/passes/hccl_memcpy_pass.h"
|
|
|
|
#include "graph/passes/hccl_memcpy_pass.h"
|
|
|
|
#include "graph/passes/identity_pass.h"
|
|
|
|
#include "graph/passes/identity_pass.h"
|
|
|
|
#include "graph/passes/infershape_pass.h"
|
|
|
|
#include "graph/passes/infershape_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/iterator_op_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/merge_pass.h"
|
|
|
|
#include "graph/passes/net_output_pass.h"
|
|
|
|
#include "graph/passes/net_output_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/next_iteration_pass.h"
|
|
|
|
#include "graph/passes/no_use_reshape_remove_pass.h"
|
|
|
|
#include "graph/passes/no_use_reshape_remove_pass.h"
|
|
|
|
#include "graph/passes/parallel_concat_start_op_pass.h"
|
|
|
|
#include "graph/passes/parallel_concat_start_op_pass.h"
|
|
|
|
#include "graph/passes/placeholder_with_default_pass.h"
|
|
|
|
#include "graph/passes/placeholder_with_default_pass.h"
|
|
|
@ -68,18 +81,45 @@
|
|
|
|
#include "graph/passes/shape_operate_op_remove_pass.h"
|
|
|
|
#include "graph/passes/shape_operate_op_remove_pass.h"
|
|
|
|
#include "graph/passes/snapshot_pass.h"
|
|
|
|
#include "graph/passes/snapshot_pass.h"
|
|
|
|
#include "graph/passes/stop_gradient_pass.h"
|
|
|
|
#include "graph/passes/stop_gradient_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/subgraph_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/switch_data_edges_bypass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/switch_dead_branch_elimination.h"
|
|
|
|
|
|
|
|
#include "graph/passes/switch_logic_remove_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/merge_to_stream_merge_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/switch_to_stream_switch_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/attach_stream_label_pass.h"
|
|
|
|
#include "graph/passes/unused_const_pass.h"
|
|
|
|
#include "graph/passes/unused_const_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/unused_op_remove_pass.h"
|
|
|
|
#include "graph/passes/var_is_initialized_op_pass.h"
|
|
|
|
#include "graph/passes/var_is_initialized_op_pass.h"
|
|
|
|
#include "graph/passes/variable_prepare_op_pass.h"
|
|
|
|
#include "graph/passes/variable_prepare_op_pass.h"
|
|
|
|
#include "graph/preprocess/insert_op/util_insert_aipp_op.h"
|
|
|
|
#include "graph/preprocess/insert_op/util_insert_aipp_op.h"
|
|
|
|
|
|
|
|
#include "graph/types.h"
|
|
|
|
|
|
|
|
#include "graph/utils/tensor_utils.h"
|
|
|
|
#include "graph/utils/type_utils.h"
|
|
|
|
#include "graph/utils/type_utils.h"
|
|
|
|
#include "inc/pass_manager.h"
|
|
|
|
#include "inc/pass_manager.h"
|
|
|
|
#include "init/gelib.h"
|
|
|
|
#include "init/gelib.h"
|
|
|
|
#include "multi_batch_copy_graph.h"
|
|
|
|
#include "multi_batch_copy_graph.h"
|
|
|
|
|
|
|
|
#include "runtime/dev.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include "graph/passes/dimension_adjust_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/link_gen_mask_nodes_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/permute_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/reshape_remove_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/same_transdata_breadth_fusion_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/transop_breadth_fusion_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/transop_depth_fusion_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/transop_nearby_allreduce_fusion_pass.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include "graph/passes/cast_remove_pass.h"
|
|
|
|
#include "graph/passes/data_pass.h"
|
|
|
|
#include "graph/passes/data_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/transop_without_reshape_fusion_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/transpose_transdata_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/variable_op_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/variable_prepare_op_pass.h"
|
|
|
|
|
|
|
|
#include "graph/passes/variable_ref_delete_op_pass.h"
|
|
|
|
#include "graph/passes/mark_agnostic_pass.h"
|
|
|
|
#include "graph/passes/mark_agnostic_pass.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace ge {
|
|
|
|
namespace ge {
|
|
|
|
namespace {
|
|
|
|
namespace {
|
|
|
|
static std::map<std::string, ge::DataType> output_type_str_to_datatype = {
|
|
|
|
static std::map<std::string, ge::DataType> output_type_str_to_datatype = {
|
|
|
|