后续版本废弃配置

如下配置在后续版本即将废弃,请不要使用如下配置。

参数名

描述

enable_data_pre_proc

性能调优相关配置。

getnext算子是否下沉到昇腾AI处理器侧执行,getnext算子下沉是使能训练迭代循环下沉的必要条件。

  • True:下沉,默认为True。getnext算子下沉的前提是必须使用TF Dataset方式读数据。
  • False:不下沉。

配置示例:

config = NPURunConfig(enable_data_pre_proc=True)

variable_format_optimize

性能调优相关配置。

是否开启变量格式优化。

  • True:开启,默认开启。
  • False:关闭。

为了提高训练效率,在网络执行的变量初始化过程中,将变量转换成更适合在昇腾AI处理器上运行的数据格式。但在用户特殊要求场景下,可以选择关闭该功能开关。

配置示例:

config = NPURunConfig(variable_format_optimize=True)

op_debug_level

算子debug功能开关,取值:

  • 0:不开启算子debug功能,默认为0。
  • 1:开启算子debug功能,在训练脚本执行目录下的kernel_meta文件夹中生成TBE指令映射文件(算子cce文件*.cce、python-cce映射文件*_loc.json、.o和.json文件),用于后续工具进行AICore Error问题定位。
  • 2:开启算子debug功能,在训练脚本执行目录下的kernel_meta文件夹中生成TBE指令映射文件(算子cce文件*.cce、python-cce映射文件*_loc.json、.o和.json文件),并关闭ccec编译器的编译优化开关且打开ccec调试功能(ccec编译器选项设置为-O0-g),用于后续工具进行AICore Error问题定位。
  • 3:不开启算子debug功能,且在训练脚本执行目录下的kernel_meta文件夹中保留.o和.json文件。
  • 4:不开启算子debug功能,在训练脚本执行目录下的kernel_meta文件夹中保留.o(算子二进制文件)和.json文件(算子描述文件),生成TBE指令映射文件(算子cce文件*.cce)和UB融合计算描述文件({$kernel_name}_compute.json)。
    须知:

    训练执行时,建议配置为0或3。如果需要进行问题定位,再选择调试开关选项1和2,是因为加入了调试功能会导致网络性能下降。

配置示例:

config = NPURunConfig(op_debug_level=1)

op_select_implmode

昇腾AI处理器部分内置算子有高精度和高性能实现方式,用户可以通过该参数配置模型编译时选择哪种算子。取值包括:

  • high_precision:表示算子选择高精度实现。高精度实现算子是指在fp16输入的情况下,通过泰勒展开/牛顿迭代等手段进一步提升算子的精度。
  • high_performance:表示算子选择高性能实现。高性能实现算子是指在fp16输入的情况下,不影响网络精度前提的最优性能实现。默认为high_performance。
配置示例:
config = NPURunConfig(op_select_implmode="high_precision")

optypelist_for_implmode

列举算子optype的列表,该列表中的算子使用op_select_implmode参数指定的模式,当前支持的算子为Pooling、SoftmaxV2、LRN、ROIAlign,多个算子以“,”分隔。

该参数需要与op_select_implmode参数配合使用,配置示例:

config = NPURunConfig(
    op_select_implmode="high_precision",
    optypelist_for_implmode="Pooling,SoftmaxV2")