提交 6ba5cd57 编写于 作者: M mindspore-ci-bot 提交者: Gitee

!5765 modify the log which nodes forming loop

Merge pull request !5765 from Margaret_wangrui/get_loop_nodes_log
...@@ -286,6 +286,9 @@ void KernelGraph::GetLoopNodesByDFS(AnfNodePtr node, uint32_t *loop_num) { ...@@ -286,6 +286,9 @@ void KernelGraph::GetLoopNodesByDFS(AnfNodePtr node, uint32_t *loop_num) {
MS_LOG(DEBUG) << "Node [" << node->DebugString() << "] don't have input edges."; MS_LOG(DEBUG) << "Node [" << node->DebugString() << "] don't have input edges.";
return; return;
} }
if (*loop_num != 0) {
return;
}
visited_nodes_.insert(node); visited_nodes_.insert(node);
for (auto input_edge : node_input_edges_[node]) { for (auto input_edge : node_input_edges_[node]) {
size_t input_num = node_input_num_[input_edge.first]; size_t input_num = node_input_num_[input_edge.first];
...@@ -300,19 +303,24 @@ void KernelGraph::GetLoopNodesByDFS(AnfNodePtr node, uint32_t *loop_num) { ...@@ -300,19 +303,24 @@ void KernelGraph::GetLoopNodesByDFS(AnfNodePtr node, uint32_t *loop_num) {
AnfNodePtr node_iter = node; AnfNodePtr node_iter = node;
MS_EXCEPTION_IF_NULL(node_iter); MS_EXCEPTION_IF_NULL(node_iter);
MS_LOG(DEBUG) << "Print loop nodes start:"; MS_LOG(DEBUG) << "Print loop nodes start:";
for (; node_iter != input_edge.first; node_iter = edge_to_[node_iter]) { for (; node_iter != input_edge.first && node_iter != nullptr; node_iter = edge_to_[node_iter]) {
MS_EXCEPTION_IF_NULL(node_iter);
loop_nodes_.push(node_iter); loop_nodes_.push(node_iter);
node_input_num_[node_iter]--; node_input_num_[node_iter]--;
MS_LOG(DEBUG) << "Get loop node:" << node_iter->DebugString(); MS_LOG(DEBUG) << "Get loop node:" << node_iter->DebugString();
} }
loop_nodes_.push(node_iter); if (node_iter != nullptr) {
loop_nodes_.push(node); loop_nodes_.push(node_iter);
(*loop_num)++; loop_nodes_.push(node);
node_input_num_[node_iter]--; (*loop_num)++;
MS_LOG(DEBUG) << "Get loop node:" << node_iter->DebugString(); node_input_num_[node_iter]--;
MS_LOG(DEBUG) << "Get loop node:" << node->DebugString(); MS_LOG(DEBUG) << "Get loop node:" << node_iter->DebugString();
MS_LOG(DEBUG) << "Print loop nodes end, Loop num:" << *loop_num; MS_LOG(DEBUG) << "Get loop node:" << node->DebugString();
MS_LOG(DEBUG) << "Print loop nodes end, Loop num:" << *loop_num;
while (!loop_nodes_.empty()) {
loop_nodes_.pop();
}
return;
}
} }
} }
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册