class_docstr: Analyse operator event in profiling data, correlate with its device event.
class_docstr_tok: ["Analyse","operator","event","in","profiling","data",",","correlate","with","its","device","event","."]
docstr: Analysis operator event in the nodetress.
docstr_tok: ["Analysis","operator","event","in","the","nodetress","."]
code: def parse(self, nodetrees):
      r"""
      Analysis operator event in the nodetress.
      """
      node_statistic_trees, thread2host_statistic_nodes = wrap_tree(
          nodetrees
      )
      for (
          threadid,
          host_statistic_nodes,
      ) in thread2host_statistic_nodes.items():
          for host_statistic_node in host_statistic_nodes[
              1:
          ]:  # skip root node
              if host_statistic_node.type == "Operator":
                  self.add_operator_item(host_statistic_node)
  
file_path: VisualDL/visualdl/component/profiler/parser/operator_parser.py
imports: import collections
  from .kernel_parser import DeviceItem
  from .utils import wrap_tree
label_desc: Use image node_id 2 for calling the OperatorParser obj's underlying member method code with example usage: obj.parse(nodetrees) without return types