简介
进行性能调优时,可以使用性能调优工具来采集和分析运行在昇腾AI处理器上的AI任务各个运行阶段的关键性能指标,用户可根据输出的性能数据,快速定位软、硬件性能瓶颈,提升AI任务性能分析的效率。
为方便用户使用,本文提供了多种性能数据采集方式,如图1所示,下面从便捷性角度给出选取建议:

采集方式 |
说明 |
---|---|
msprof命令行工具不仅可以解析采集到的性能数据,且提供了完整的性能数据采集能力(更多的数据类型)。 推荐使用msprof命令行工具完成性能分析全过程。 |
|
基于PyTorch框架编程时使用。 约束:仅支持训练和在线推理场景且需要在AI框架编程时调用Profiling相关代码。 |
|
基于TensorFlow框架编程时使用。 约束:仅支持训练和在线推理场景且需要在AI框架编程时调用Profiling相关代码。 |
|
最灵活的Profiling数据采集方案,提供定制化的性能数据采集能力。 约束:仅支持离线推理场景且需要在应用程序中调用Profiling相关接口。 |
|
AscendCL API的Python封装版本。 约束:仅支持离线推理场景且需要在应用程序中调用Profiling相关接口。 |
|
昇腾Graph开发时使用。 约束:仅支持训练和在线推理场景且需要在Ascend Graph编程中调用Profiling相关接口。 |
|
配置文件方式,支持Profiling与其他组件的统一配置。 约束:仅支持离线推理场景且需要修改配置文件。 |
|
通过设置特定的环境变量控制Profiling,Profiling配置可以迁移到不同的训练或在线推理的环境变量脚本中执行。 约束:仅支持训练和在线推理场景。 |

- 如果当前环境未安装Ascend-cann-toolkit开发套件包,则无法使用msprof命令。
- 在上图给出的使用流程中,需要注意,当用户使用msprof命令行或使用PyTorch框架接口采集性能数据后,无需使用msprof进行数据解析,这是因为这两种方式在采集后可自动解析;其余采集方式,在采集完成后,需要使用msprof工具进行数据解析。