昇腾社区首页
中文
注册

Ascend Graph开发方式Profiling

采集性能原始数据

该章节提供通过Ascend Graph API编程接口的两种方式使能Profiling:

  • 通过GEInitialize传入option参数:
    • ge.exec.profilingMode;
    • ge.exec.profilingOptions。
  • 通过aclgrphProfInit、aclgrphProfFinalize、aclgrphProfCreateConfig、aclgrphProfDestroyConfig、aclgrphProfStart和aclgrphProfStop接口采集性能数据。

    如果需要采集迭代轨迹数据,还需要通过GEInitialize传入option参数ge.exec.profilingOptions或通过环境变量PROFILING_OPTIONS传入。传入字段包括training_trace。

接口详细说明,请参考Ascend Graph开发指南

采集数据说明

可采集数据如下所示。

表1 timeline文件介绍

timeline文件名

相关参数

说明

msprof_{device_id}_{model_id}_{iter_id}.json

all

timeline数据总表。对采集到的timeline性能数据按照迭代粒度进行性能展示。详情请参见timeline数据总表

task_time_{device_id}_{model_id}_{iter_id}.json

kProfTaskTime

AI core、AI cpu、All reduce并行度分析数据。文件详情请参见AI core、AI cpu、All reduce并行度分析数据说明

step_trace_{device_id}_{model_id}_{iter_id}.json

-

迭代轨迹数据,每轮迭代的耗时。文件详情请参见迭代轨迹数据说明

hccl_{device_id}_{model_id}_{iter_id}.json

kProfHccl

HCCL数据。文件详情请参见HCCL数据说明

表2 summary文件介绍

summary文件名

相关参数

说明

op_summary_{device_id}_{model_id}_{iter_id}.csv

kProfTaskTime(可选)

kProfAiCoreMetrics(可选)

kProfAicpu(可选)

配置kProfTaskTime和kProfAiCoreMetrics生成AI Core算子信息,配置kProfAicpu生成AI CPU算子信息。

AI Core数据,获取每轮迭代的每个task的ai core metrics的耗时。文件详情请参见AI Core数据说明

op_statistic_{device_id}_{model_id}_{iter_id}.csv

kProfTaskTime(可选)

kProfAiCoreMetrics(可选)

kProfAicpu(可选)

配置kProfTaskTime和kProfAiCoreMetrics生成AI Core算子信息,配置kProfAicpu生成AI CPU算子信息。

AI Core算子计数表,从算子类型维度找出耗时最大的算子类型。文件详情请参见AI Core算子调用次数及耗时数据说明

step_trace_{device_id}_{model_id}_{iter_id}.csv

-

迭代轨迹数据。文件详情请参见迭代轨迹数据说明

task_time_{device_id}_{model_id}_{iter_id}.csv

kProfTaskTime

Task Scheduler任务调度信息。文件详情请参见Task Scheduler的任务调度信息数据说明

aicpu_{device_id}_{model_id}_{iter_id}.csv

kProfAicpu

AI CPU数据。文件详情请参见AI CPU数据说明

dp_{device_id}_{model_id}_{iter_id}.csv

-

数据增强Data PreProcess数据。文件详情请参见数据增强数据说明

fusion_op_{device_id}_{model_id}_{iter_id}.csv

-

模型中算子融合前后信息。详情请参见模型中算子融合前后信息数据说明

l2_cache_{device_id}_{model_id}_{iter_id}.csv

kProfL2cache

L2Cache数据。详情请参见L2Cache数据说明