昇腾社区首页
中文
注册

场景介绍

当前用于推理的昇腾AI处理器进行Profiling时,主要通过CANN软件包来进行Profiling数据的获取与解析,具体如下。

表1 CANN软件包使能Profiling说明

软件包

Profiling使能说明

开发套件包

Ascend-cann-toolkit

通过AscendCL API接口支持在推理过程中采集应用工程的Profiling数据。

pyACL(Python Ascend Computing Language)就是在AscendCL的基础上使用CPython封装得到的python API库,使用户可以通过python进行昇腾 AI 处理器的运行管理、资源管理等。通过pyACL的Python API接口在推理过程中采集应用工程的Profiling数据。

调测工具包,内部包含Profiling数据采集工具msprof和Profiling解析工具msprof.py,针对Profiling分别作用如下。

  • msprof:通过命令行方式采集应用工程的Profiling数据;
  • msprof.py:通过Python脚本工具解析应用工程的Profiling数据。

离线推理引擎包

Ascend-cann-nnrt

通过AscendCL API接口支持在推理过程中采集应用工程的Profiling数据。

pyACL(Python Ascend Computing Language)就是在AscendCL的基础上使用CPython封装得到的python API库,使用户可以通过python进行昇腾 AI 处理器的运行管理、资源管理等。通过pyACL的Python API接口在推理过程中采集应用工程的Profiling数据。

深度学习引擎包

Ascend-cann-nnae

提供AscendCL API接口,支持在推理过程中采集应用工程的Profiling数据。

适用于Atlas 200 AI加速模块(RC场景)的软件包

通过AscendCL API接口支持在推理过程中采集应用工程的Profiling数据。

内部包含驱动包Ascend310-driver-<version>-ubuntu18.04/16.04.aarch64-minirc.tar.gz,驱动包内包含Profiling数据采集工具msprof,作用为通过命令行方式采集应用工程的Profiling数据。

适用于Atlas 500智能小站的软件包

可通过AscendCL API接口支持在推理过程中采集应用工程的Profiling数据。

根据表1中组合包不同安装场景,当前主要有以下三种常见场景(场景一、二、三)和两种智能边缘场景(场景四、五):

  • 场景一:昇腾设备部署开发套件包Ascend-cann-toolkit,对应开发环境但同时可以作为运行环境运行应用程序。

    此场景下能通过命令行(msprof)、acl.json配置文件、AscendCL API(pyACL API)三种方式采集Profiling数据,同时采集好的Profiling数据也能在当前环境中进行解析。用户在此场景下可实现Profiling全部操作,当用户需要进行代码开发、编译、运行、调测等开发活动,推荐使用此场景。

  • 场景二:昇腾设备部署离线推理引擎包Ascend-cann-nnrt或深度学习引擎包Ascend-cann-nnae,对应运行环境。

    此场景下能通过acl.json配置文件、AscendCL API(pyACL API)两种方式采集Profiling数据,只能采集软件的性能数据,无法采集硬件的性能数据,采集好的数据无法在当前环境中解析。此场景主要进行应用工程运行,应用工程运行过程中采集的Profiling数据需要拷贝至安装了开发套件包Ascend-cann-toolkit的环境中进行数据解析。如果用户想进行性能分析,不推荐此场景。

  • 场景三:非昇腾设备上安装开发套件包Ascend-cann-toolkit,对应纯开发环境,不能作为运行环境运行应用程序。

    此场景仅能通过Profiling解析工具msprof.py进行Profiling数据的解析。

  • 场景四:Atlas 200 AI加速模块(RC场景或Atlas 200 DK)。

    此场景仅针对智能边缘设备200 RC提供相应的Profiling数据采集能力,此场景下能通过命令行(msprof)、acl.json配置文件、AscendCL API三种方式采集Profiling数据,但采集的数据需要拷贝至安装了开发套件包Ascend-cann-toolkit的环境中进行数据解析,此场景无法采集Host侧Profiling数据。

  • 场景五:Atlas 500智能小站。

    此场景仅针对智能边缘设备Atlas 500智能小站提供相应的Profiling数据采集能力,此场景下能通过acl.json配置文件、AscendCL API两种方式采集Profiling数据,采集的数据需要拷贝至安装了开发套件包Ascend-cann-toolkit的环境中进行数据解析。

  • 支持在容器场景下进行Profiling数据的采集和解析,容器场景下的采集方式取决于在容器中安装的CANN软件包,参见表1
  • 用户在容器场景下指定Profiling数据落盘路径时,容器场景需要指定为宿主机中映射进容器的路径,方便用户后续提取Profiling数据进行解析。