功能描述
Profiling配置选项。
- output:Profiling采集结果文件保存路径。该参数指定的目录需要在启动训练的环境上(容器或Host侧)提前创建且确保安装时配置的运行用户具有读写权限,支持配置绝对路径或相对路径(相对执行命令行时的当前路径)。
- 绝对路径配置以“/”开头,例如:/home/HwHiAiUser/output。
- 相对路径配置直接以目录名开始,例如:output。
- storage_limit:指定落盘目录允许存放的最大文件容量。当Profiling数据文件在磁盘中即将占满本参数设置的最大存储空间(剩余空间<=20MB)或剩余磁盘总空间即将被占满时(总空间剩余<=20MB),则将磁盘内最早的文件进行老化删除处理。
单位为MB,取值范围为[200, 4294967295],默认未配置本参数。
参数值配置格式为数值+单位,例如"storage_limit": "200MB"。
未配置本参数时,不开启数据老化功能。
- training_trace:采集迭代轨迹数据,即训练任务及AI软件栈的软件信息,实现对训练任务的性能分析,重点关注数据增强、前后向计算、梯度聚合更新等相关数据。当训练profiling mode开启即采集训练Job Profiling数据时,必须配置training_trace为on。
- task_trace:采集任务信息数据以及Host与Device之间、Device间的同步异步内存复制时延,即昇腾AI处理器HWTS数据,分析任务开始、结束等信息。取值on/off。如果将该参数配置为“on”和“off”之外的任意值,则按配置为“off”处理。当训练profiling mode开启即采集训练Job Profiling数据时,配置task_trace为on的同时training_trace也必须配置为on。
- hccl:控制hccl数据采集开关,可选on或off,默认为off。
- aicpu:采集AICPU算子的详细信息,如:算子执行时间、数据拷贝时间等。取值on/off。如果将该参数配置为“on”和“off”之外的任意值,则按配置为“off”处理。
- fp_point:指定训练网络迭代轨迹正向算子的开始位置,用于记录前向计算开始时间戳。配置值为指定的正向第一个算子名字。用户可以在训练脚本中,通过tf.io.write_graph将graph保存成.pbtxt文件,并获取文件中的name名称填入;也可直接配置为空,由系统自动识别正向算子的开始位置,例如"fp_point":""。
- bp_point:指定训练网络迭代轨迹反向算子的结束位置,记录后向计算结束时间戳,BP_POINT和FP_POINT可以计算出正反向时间。配置值为指定的反向最后一个算子名字。用户可以在训练脚本中,通过tf.io.write_graph将graph保存成.pbtxt文件,并获取文件中的name名称填入;也可直接配置为空,由系统自动识别反向算子的结束位置,例如"bp_point":""。
- aic_metrics:AI Core的硬件信息,取值如下:
ArithmeticUtilization:各种计算类指标占比统计;
PipeUtilization: 计算单元和搬运单元耗时占比,该项为默认值;
Memory:外部内存读写类指令占比;
MemoryL0:内部内存读写类指令占比;
ResourceConflictRatio:流水线队列类指令占比。
- l2:控制L2采样数据的开关,可选on或off,默认为off。该参数配置前提是application参数已配置。可选参数。
- msproftx:控制msproftx用户和上层框架程序输出性能数据的开关,可选on或off,默认值为off。
Profiling开启msproftx功能之前,需要在程序内调用msproftx相关接口来开启程序的Profiling数据流的输出,详细操作请参见《应用软件开发指南 (C&C++)》手册“高级功能>Profiling性能数据采集”章节。
- 除动态shape场景外的其他场景,fp_point、bp_point为自动配置项,无需用户手动配置。动态shape场景不支持自动配置fp/bp,需要用户手动设置。
- 在线推理支持task_trace和aicpu,不支持training_trace。
配置示例
export PROFILING_OPTIONS='{"output":"/tmp/profiling","training_trace":"on","task_trace":"on","aicpu":"on","fp_point":"resnet_model/conv2d/Conv2Dresnet_model/batch_normalization/FusedBatchNormV3_Reduce","bp_point":"gradients/AddN_70","aic_metrics":"PipeUtilization"}'