| @@ -15,6 +15,7 @@ | |||||
| */ | */ | ||||
| #include "hybrid/model/hybrid_model_builder.h" | #include "hybrid/model/hybrid_model_builder.h" | ||||
| #include <algorithm> | |||||
| #include "common/math/math_util.h" | #include "common/math/math_util.h" | ||||
| #include "graph/ge_context.h" | #include "graph/ge_context.h" | ||||
| #include "graph/build/memory/var_mem_assign_util.h" | #include "graph/build/memory/var_mem_assign_util.h" | ||||
| @@ -70,7 +71,7 @@ Status CollectDependenciesForFusedGraph(NodeItem &node_item, std::set<OpDesc *> | |||||
| for (auto &input_name : depends) { | for (auto &input_name : depends) { | ||||
| auto input_index = op_desc->GetInputIndexByName(input_name); | auto input_index = op_desc->GetInputIndexByName(input_name); | ||||
| const auto &in_anchor = ge_node->GetInDataAnchor(input_index); | |||||
| const auto &in_anchor = node->GetInDataAnchor(input_index); | |||||
| GE_CHECK_NOTNULL(in_anchor); | GE_CHECK_NOTNULL(in_anchor); | ||||
| const auto &peer_out_anchor = in_anchor->GetPeerOutAnchor(); | const auto &peer_out_anchor = in_anchor->GetPeerOutAnchor(); | ||||
| GE_CHECK_NOTNULL(peer_out_anchor); | GE_CHECK_NOTNULL(peer_out_anchor); | ||||
| @@ -307,7 +308,7 @@ Status HybridModelBuilder::ParseDependentInputNodes(NodeItem &node_item, const s | |||||
| node_item.dependents_for_shape_inference.emplace_back(dep_node); | node_item.dependents_for_shape_inference.emplace_back(dep_node); | ||||
| } | } | ||||
| GE_CHK_STATUS_RET(ParseDependentForFusedSubgraph(noe_item)); | |||||
| GE_CHK_STATUS_RET(ParseDependentForFusedSubgraph(node_item)); | |||||
| return SUCCESS; | return SUCCESS; | ||||
| } | } | ||||
| @@ -320,10 +321,10 @@ Status HybridModelBuilder::ParseDependentForFusedSubgraph(NodeItem &node_item) { | |||||
| GE_CHK_STATUS_RET_NOLOG(CollectDependenciesForFusedGraph(node_item, data_ops)); | GE_CHK_STATUS_RET_NOLOG(CollectDependenciesForFusedGraph(node_item, data_ops)); | ||||
| for (auto &op_desc : data_ops) { | for (auto &op_desc : data_ops) { | ||||
| uint32_t parent_index = 0; | uint32_t parent_index = 0; | ||||
| if (!AttrUtils::GetInt(data_op_desc, ATTR_NAME_PARENT_NODE_INDEX, parent_index)) { | |||||
| if (!AttrUtils::GetInt(*op_desc, ATTR_NAME_PARENT_NODE_INDEX, parent_index)) { | |||||
| GELOGE(INTERNAL_ERROR, | GELOGE(INTERNAL_ERROR, | ||||
| "[%s] Failed to get attr [%s]", | "[%s] Failed to get attr [%s]", | ||||
| data_op_desc->GetName().c_str(), | |||||
| op_desc->GetName().c_str(), | |||||
| ATTR_NAME_PARENT_NODE_INDEX.c_str()); | ATTR_NAME_PARENT_NODE_INDEX.c_str()); | ||||
| return INTERNAL_ERROR; | return INTERNAL_ERROR; | ||||
| } | } | ||||
| @@ -337,7 +338,7 @@ Status HybridModelBuilder::ParseDependentForFusedSubgraph(NodeItem &node_item) { | |||||
| NodeItem *src_node_item = nullptr; | NodeItem *src_node_item = nullptr; | ||||
| GE_CHK_STATUS_RET_NOLOG(GetOrCreateNodeItem(src_node, &src_node_item)); | GE_CHK_STATUS_RET_NOLOG(GetOrCreateNodeItem(src_node, &src_node_item)); | ||||
| op_desc->SetId(src_node_item->op_desc->GetId()); | op_desc->SetId(src_node_item->op_desc->GetId()); | ||||
| GELOGD("[%S::%S] Node id was set to that of outer src node's, src_node = %s", | |||||
| GELOGD("[%s::%s] Node id was set to that of outer src node's, src_node = %s", | |||||
| node_item.NodeName().c_str(), | node_item.NodeName().c_str(), | ||||
| op_desc->GetName().c_str(), | op_desc->GetName().c_str(), | ||||
| src_node_item->NodeName().c_str()); | src_node_item->NodeName().c_str()); | ||||