性能数据采集

操作须知

操作步骤

  1. 在欢迎界面的左侧导航栏单击“Projects”,单击选择并打开已编译完成的工程。
  2. 单击菜单栏Ascend > System Profiler,弹出系统分析工程界面。

    图1 系统分析工程界面

  3. 进入系统分析工程界面,单击欢迎界面中的“New Project”或左上角的图标,弹出Profiling配置窗口,如图2

    配置“Project Properties”,配置工程名称“Project Name”和选择工程路径“Project Location”。单击“Next”进入下一步。
    表1 Project Properties参数说明

    参数

    说明

    Project Name

    Profiling工程名称,用户自定义。

    配置后在“Project Location”设置的路径下自动创建工程名称文件夹,后续采集和解析产生的原始性能数据目录PROF_XXX和解析结果.json文件均保存在该目录下。

    说明:

    解析结果.json文件命名格式为:report_{时间戳}_{device_id}_{model_id}_{iter_id}.json,其中{device_id}表示设备ID,{model_id}表示模型ID,{iter_id}表示某轮迭代的ID号。

    Project Location

    Profiling数据输出路径。

    完成采集后在该路径下生成以“Project Name”命名的文件目录。

    图2 Project Properties配置

  4. 进入“Executable Properties”配置界面,如下各图所示。

    • Linux使用场景下可选择Remote Run和Local Run两种模式。
    • Windows使用场景下仅支持Remote Run模式,无需配置“Run Mode”
    图3 Remote Run

    配置完成后,Deployment和对应的Environment Variables、Remote Toolkit Path参数为绑定关系,单击“Next”后参数值将被保存。再次配置时,如连接已配置过的Deployment,则Environment Variables、Remote Toolkit Path参数自动填充,可手动修改。

    图4 Local Run(训练工程)
    表2 Executable Properties参数说明

    参数

    说明

    Run Mode

    • Remote Run:远程运行。
    • Local Run:本地运行。

    Deployment

    运行配置,选择Remote Run模式时可见,必选配置。通过Deployment功能,可以将指定项目中的文件、文件夹同步到远程指定机器的指定目录,具体可参见Ascend Deployment

    Project Path

    执行Profiling目标工程目录,必选配置。

    当指定的目标工程为训练工程时,可直接单击“Start”按钮启动Profiling。

    Executable File

    执行Profiling目标工程的可执行文件,必选配置。

    需指定为Project Path子目录下的可执行文件,支持指定二进制脚本文件(如main文件)、Python脚本文件(如train.py文件)和Shell脚本文件(如npu_set_env_1p.sh文件)。

    指定Python脚本文件时由于msprof工具的限制有如下要求:

    • pyacl工程中的Python脚本中的路径信息必须为绝对路径。
    • 不支持异步接口(接口名以async结尾)的调用。

    指定Shell脚本文件由用户自行提供,且无需保存在Project Path目录下。

    Command Arguments

    用户APP的执行参数,由用户自行配置,参数之间用空格分隔,默认为空。

    Environment Variables

    环境变量配置。可直接手动配置或单击符号,在弹出窗中配置管理。可选配置。

    Remote Toolkit Path

    远端运行环境toolkit软件包安装路径,选择Remote Run模式时可见,必选配置。例如配置为${HOME}/Ascend/ascend-toolkit/{version}/toolkit。

    与Deployment参数为绑定关系,单击“Next”后参数值将被保存。再次配置时,如连接已配置过的Deployment,则参数自动填充,可手动修改。

    CANN Version

    指定CANN软件包版本,选择Local Run模式时可见,必选配置。

    在启动MindStudio创建工程时指定,若未指定则需单击“Change”按钮指定对应CANN软件包安装路径。

  5. 单击“Next”后需获取Profiling configuration,如图5所示将出现弹框提示。

    图5 Obtaining Profiling configuration

  6. 进入“Profiling Options”配置界面,其中配置AI Core Profiling时分为Task-based和Sample-based场景。如图6图7所示。

    图6 Task-based场景
    图7 Sample-based场景
    表3 Profiling Options参数说明

    参数

    说明

    AI Core Profiling

    Mode

    • Task-based:AI Core采集开关,以task为粒度进行性能数据采集。默认值为Pipeline Utilization。
    • Sample-based:AI Core采集开关,以固定的时间周期(AI Core-Sampling Interval)进行性能数据采集。默认值为Pipeline Utilization。

    Metrics

    Mode为Task-based时:

    • Pipeline Utilization:采集计算单元和搬运单元耗时占比。
    • Arithmetic Utilization:cube和vector的指令类型耗时占比。
    • UB/L1/L2/Main Memory Bandwidth:UB/L1/L2/主存储器采集内存读写带宽速率。
    • L0A/L0B/L0C Memory Bandwidth:L0A/L0B/L0C采集内存读写带宽速率。
    • UB Memory Bandwidth:mte/vector/scalar采集ub读写带宽速率。

    Mode为Sample-based时:

    • Pipeline Utilization:采集计算单元和搬运单元耗时占比。
    • Arithmetic Utilization:cube和vector的指令类型耗时占比。
    • UB/L1/L2/Main Memory Bandwidth:UB/L1/L2/主存储器采集内存读写带宽速率。
    • L0A/L0B/L0C Memory Bandwidth:L0A/L0B/L0C采集内存读写带宽速率。
    • UB Memory Bandwidth:mte/vector/scalar采集ub读写带宽速率。

    L2Cache

    Task-based场景下控制L2采样数据的开关。可选配置,默认关闭。

    Frequency(Hz)

    Sample-based场景下的采集频率,取值范围为[1, 100],默认值为100,单位Hz。

    MsprofTX

    MsprofTX

    控制MsprofTX用户和上层框架程序输出性能数据采集的开关。可选配置,默认关闭。

    API Trace

    AscendCL API

    AscendCL(Ascend Compute Language)采集开关,采集接口流水信息。默认开启。

    Runtime API

    Runtime采集开关,采集运行管理器接口流水信息。可选配置,默认关闭。

    Graph Engine(GE)

    Graph Engine采集开关,采集模型图引擎调度流水信息。默认开启,不可关闭。

    AICPU Operators

    AI CPU采集开关,采集aicpu数据增强的Profiling数据。可选配置,默认关闭。

    HCCL

    HCCL

    控制HCCL数据采集开关。可选配置,默认关闭。

    当前采集完成后,默认导出对应迭代数目最多模型号(Model ID)的第一轮迭代数据。

    Device System Profiling

    CPU & Memory Usage Profiling

    系统CPU usage及System memory采集开关。可选配置,默认关闭。

    可以更改采样频率Frequency(Hz),取值范围为[1, 10],默认频率为10Hz。

    Host System Profiling

    Application Based System Profiling

    CPU

    采集Host侧CPU资源利用率信息。可选配置,默认关闭。

    Memory

    采集Host侧Memory资源利用率信息。可选配置,默认关闭。

    Disk

    采集Host侧Disk资源利用率信息。可选配置,默认关闭。

    说明:

    采集Disk调用数据需要安装第三方开源工具iotop。参见使用前准备

    Network

    采集Host侧Network资源利用率信息。可选配置,默认关闭。

    Syscall & PThreadcall

    Host侧syscall和pthreadcall数据。可选配置,默认关闭。

    System CPU & Memory Usage

    CPU

    采集Host侧系统和所有进程的CPU资源利用率信息。可选配置,默认关闭。

    Memory

    采集Host侧系统和所有进程的Memory资源利用率信息。可选配置,默认关闭。

    Frequency(Hz)

    CPU利用率和内存利用率的采集频率,取值范围为[1,50],默认值50,单位hz。

    表3 Profiling Options参数说明为全量采集配置项,芯片的实际支持情况请以界面展示为准。

  7. 完成上述配置后单击窗口右下角的“Start”按钮,启动性能数据采集。

    工程执行完成后,MindStudio自动弹出性能分析结果视图。