Browse Source

!888 Sort graphs by name when receive multi_graphs

From: @maning202007
Reviewed-by: @ouwenchang,@ouwenchang,@wangyue01
Signed-off-by: @wangyue01
tags/v1.1.0
mindspore-ci-bot Gitee 5 years ago
parent
commit
1d674bbffd
1 changed files with 19 additions and 1 deletions
  1. +19
    -1
      mindinsight/debugger/stream_handler/graph_handler.py

+ 19
- 1
mindinsight/debugger/stream_handler/graph_handler.py View File

@@ -71,7 +71,8 @@ class GraphHandler(StreamHandlerBase):
value (GraphProto): The Graph proto message. value (GraphProto): The Graph proto message.
""" """
log.info("Put graph into cache.") log.info("Put graph into cache.")
for graph_name, graph_value in value.items():
sorted_value_list = self._sort_graph(value)
for graph_name, graph_value in sorted_value_list:
self._graph_proto[graph_name] = graph_value self._graph_proto[graph_name] = graph_value
# build sub graph # build sub graph
graph = DebuggerGraph() graph = DebuggerGraph()
@@ -686,3 +687,20 @@ class GraphHandler(StreamHandlerBase):
if not graph.exist_node(name=node_name): if not graph.exist_node(name=node_name):
log.error("graph %s doesn't find node: %s.", graph_name, node_name) log.error("graph %s doesn't find node: %s.", graph_name, node_name)
raise DebuggerNodeNotInGraphError(node_name) raise DebuggerNodeNotInGraphError(node_name)

def _sort_graph(self, graphs):
"""
Sort graph by graph_name.

Args:
graphs(dict): <graph_name, GraphProto object>.
"""
if len(graphs) == 1:
return graphs.items()
sorted_graphs = sorted(graphs.items(), key=lambda x: get_graph_number(x[0]))
return sorted_graphs


def get_graph_number(graph_name):
number = graph_name.split("_")[-1]
return int(number)

Loading…
Cancel
Save