Profiling

参数名

描述

profiling_config.enable_profiling

是否开启Profiling功能,默认关闭。

  • True:开启Profiling功能,从profiling_options读取Profiling的采集选项。
  • False:关闭Profiling功能。
配置示例:
npu.global_options().profiling_config.enable_profiling=True

profiling_config.profiling_options

Profiling配置选项。

  • output:Profiling采集结果文件保存路径。该参数指定的目录需要在启动训练的环境上(容器或Host侧)提前创建且确保安装时配置的运行用户具有读写权限,支持配置绝对路径或相对路径(相对执行命令行时的当前路径)。
    • 绝对路径配置以“/”开头,例如:/home/HwHiAiUser/output。
    • 相对路径配置直接以目录名开始,例如:output。
  • storage_limit:用于指定Profiling数据文件保存至磁盘时的存储空间上限。当累计存放的Profiling数据文件大小接近参数设置值(<=20MB)或数据存放目录所在磁盘的可用空间即将不足(<=20MB)时,除特定的Profiling数据文件外,最早保存的Profiling数据文件将被删除,以保证新生成的数据文件可以循环覆盖保存。

    单位为MB,参数值配置格式为数值+单位,例如--storage-limit=200MB,有效取值范围为[200, 4294967296]。

    未配置本参数时,默认取值为Profiling数据文件存放目录所在磁盘可用空间的90%。

  • training_trace:采集迭代轨迹数据,即训练任务及AI软件栈的软件信息,实现对训练任务的性能分析,重点关注数据增强、前后向计算、梯度聚合更新等相关数据。非必选项配置,用户可不配置,当用户配置时必须设为“on”。
  • task_trace:采集任务轨迹数据,即昇腾AI处理器HWTS,分析任务开始、结束等信息。取值on/off。如果将该参数配置为“on”和“off”之外的任意值,则按配置为“off”处理。
  • hccl:控制hccl数据采集开关,可选on或off,默认为off。
  • aicpu:采集aicpu数据增强的Profiling数据。取值on/off。如果将该参数配置为“on”和“off”之外的任意值,则按配置为“off”处理。
  • fp_point:training_trace为on时需要配置。指定训练网络迭代轨迹正向算子的开始位置,用于记录前向计算开始时间戳。配置值为指定的正向第一个算子名字。用户可以在训练脚本中,通过tf.io.write_graph将graph保存成.pbtxt文件,并获取文件中的name名称填入。
  • bp_point:training_trace为on时需要配置。指定训练网络迭代轨迹反向算子的结束位置,记录后向计算结束时间戳,fp_point和bp_point可以计算出正反向时间。配置值为指定的反向最后一个算子名字。用户可以在训练脚本中,通过tf.io.write_graph将graph保存成.pbtxt文件,并获取文件中的name名称填入。
  • aic_metrics:AICore的硬件信息,取值如下:

    ArithmeticUtilization:各种计算类指标占比统计

    PipeUtilization: 计算单元和搬运单元耗时占比,该项为默认值

    Memory:外部内存读写类指令占比

    MemoryL0:内部内存读写类指令占比

    ResourceConflictRatio:流水线队列类指令占比

  • l2:控制L2采样数据的开关,可选on或off,默认为off。
  • msproftx:控制msproftx用户和上层框架程序输出性能数据的开关,可选on或off,默认值为off。

    Profiling开启msproftx功能之前,需要在程序内调用msproftx相关接口来开启程序的Profiling数据流的输出,详细操作请参见应用软件开发指南 (C&C++)“高级功能>Profiling性能数据采集”章节。

配置示例:
npu.global_options().profiling_config.profiling_options = '{"output":"/tmp/profiling","training_trace":"on","fp_point":"resnet_model/conv2d/Conv2Dresnet_model/batch_normalization/FusedBatchNormV3_Reduce","bp_point":"gradients/AddN_70"}'