总体介绍
Profiling对外提供了两套pyACL API接口用于应用工程调用、使能Profiling功能,两种方式说明如下:
- Profiling AscendCL API(通过Profiling AscendCL API采集并落盘性能数据):将采集到的Profiling数据写入文件,再使用Profiling工具解析该文件,并展示性能分析数据。
acl.prof.init、acl.prof.finalize、acl.prof.start、 acl.prof.stop接口配合使用,实现该方式的性能数据采集。该方式可获取pyACL的接口性能数据、AI Core上算子的执行时间、AI Core性能指标数据等。
- Profiling AscendCL API for Subscription(订阅算子信息的Profiling AscendCL API):将采集到的Profiling数据解析后写入管道,由用户读入内存,再由用户调用pyACL的接口获取性能数据。
acl.prof.model_subscribe接口、acl.prof.get*接口、acl.prof.model_un_subscribe接口配合使用,实现该方式的性能数据采集,当前支持获取网络模型中算子的性能数据,包括算子名称、算子类型名称、算子执行时间等。
以上两种方式接口详细使用方法及约束请参见《应用软件开发指南(Python)》手册“pyACL API参考”章节下“Profiling数据采集”章节相关内容。