在host、device和timeline目录下均保存timeline数据总表,其中timeline目录下的数据总表为host和device目录下两个数据总表之和。
timeline数据总表文件为msprof*.json。
msprof*.json在“chrome://tracing”中展示如下。
如图1所示,timeline汇总数据主要展示如下区域:
集群或单机多卡场景下,开启了HCCL性能数据采集开关时,除了生成HCCL性能数据(hccl_*.json)外,还会在msprof*.json下生成“Overlap Analysis”计算及通信的流水掩盖分析数据。如图2所示。
集群或多卡场景下,计算和通信存在并行,那么可通过查看流水掩盖的重叠时间(计算和通信并行的时间)从而判断计算通信效率。
字段名 |
字段含义 |
---|---|
Communication |
通信时间。 |
Communication(Not Overlaopped) |
无掩盖的通信时间。 |
Computing |
计算时间。 |
Free |
间隙时间。 |
Start |
表示当前接口开始调用的时刻点,单位ms。 |
Wall Duration |
表示当前接口调用耗时,单位ms。 |
在tracing中查看.json文件时,开启“Flow events”下的选项后,应用层算子到NPU算子之间通过连线方式展示下发到执行的对应关系。如图3所示。
主要包括的对应关系有:
通过单击连线两端的算子或接口,即可查看算子下发的方向。如图4所示。
其中Event(s)列查看该算子或接口的出入方向,Link列查看映射关系两端的信息。