总体说明
采集性能原始数据,并解析导出成可视化的性能数据文件后,文件目录结构及主要文件如下。
目录结构及文件说明
性能数据目录结构示例如下(仅展示性能数据):
1 2 3 4 5 6 7 8 9 10 11 | ├── msprof_*.db // 需要msprof命令执行时配置--type=db,此时将仅生成一个汇总所有性能数据的.db格式文件 ├── mindstudio_profiler_output │ ├── msprof_*.json │ ├── step_trace_*.json │ ├── xx_*.csv ... │ └── README.txt ├── device_{id} │ └── data ├── host └── data |
- mindstudio_profiler_output目录保存Host和各个Device的性能数据汇总(性能数据分析推荐查看该目录下文件)。
- device_{id}目录主要保存各个Device运行昇腾AI应用的性能原始数据和昇腾AI处理器系统原始数据。
- host目录主要保存上层应用接口(msproftx)的昇腾AI应用运行性能原始数据和Host系统原始数据。
该目录下的各个文件数据量较大,可能出现数据文件分片,若不需要切分文件,可参见性能数据文件分片修改分片容量上限。
默认采集的性能数据文件如表1所示。
文件名 |
说明 |
---|---|
msprof_*.json |
timeline数据总表。 |
step_trace_*.json |
迭代轨迹数据,每轮迭代的耗时。单算子场景(如PyTorch场景)下无此性能数据文件。 |
op_summary_*.csv |
AI Core和AI CPU算子数据。 |
op_statistic _*.csv |
AI Core和AI CPU算子调用次数及耗时统计。 |
step_trace_*.csv |
迭代轨迹数据。单算子场景(如PyTorch场景)下无此性能数据文件。 |
task_time_*.csv |
Task Scheduler任务调度信息。 |
fusion_op_*.csv |
模型中算子融合前后信息。单算子场景(如PyTorch场景)下无此性能数据文件。 |
api_statistic_*.csv |
用于统计CANN层的API执行耗时信息。 |
注:表中的json文件为timeline信息文件,主要收集算子、任务等运行耗时,以色块形式展示;csv文件为summary信息文件,主要以表格形式汇总运行耗时。 |
文件命名格式说明
mindstudio_profiler_output目录下的结果文件命名格式为:“模块名_{timestamp}.{json/csv}”。
如何查看timeline文件
使用Perfetto UI打开:在Chrome浏览器中输入“https://ui.perfetto.dev/”地址,将.json文件拖到空白处打开,通过键盘上的快捷键(w:放大,s:缩小,a:左移,d:右移)进行查看。
使用tracing打开:在Chrome浏览器中输入“chrome://tracing”地址,将.json文件拖到空白处打开,通过键盘上的快捷键(w:放大,s:缩小,a:左移,d:右移)进行查看。
超大文件推荐使用Perfetto UI打开。
summary文件说明
- 生成的summary数据文件使用excel打开时,可能会出现字段值为科学计数的情况,例如“1.00159E+12”。此时可选中该单元格,然后 ,在弹出的对话框中“数字”标签下选择“数值”,单击“确定”就能正常显示。
- 生成的summary数据文件中某些字段值为“N/A”时,表示此时该值不存在。