数据格式 |
说明 |
---|---|
ACL_PRECISION_MODE= 0 |
算子精度模式。 |
ACL_AICORE_NUM= 1 |
模型编译时使用的AI Core数量。 |
ACL_AUTO_TUNE_MODE= 2 |
算子的自动调优模式。 |
ACL_OP_SELECT_IMPL_MODE= 3 |
选择算子是高精度实现还是高性能实现。 |
ACL_OPTYPELIST_FOR_IMPLMODE = 4 |
列举算子类型的列表,该列表中的算子使用ACL_OP_SELECT_IMPL_MODE指定的模式。 |
ACL_OP_DEBUG_LEVEL = 5 |
TBE算子编译debug功能开关。 |
ACL_DEBUG_DIR = 6 |
保存模型转换、网络迁移过程中算子编译生成的调试相关过程文件的路径,包括算子.o/.json/.cce等文件。 |
ACL_OP_COMPILER_CACHE_MODE = 7 |
算子编译磁盘缓存模式。 |
ACL_OP_COMPILER_CACHE_DIR = 8 |
算子编译磁盘缓存的目录。 |
ACL_OP_PERFORMANCE_MODE = 9 |
该参数已废弃,请勿配置,否则后续版本可能存在兼容性问题。 通过该选项设置是否按照算子执行高性能的方式编译算子。 |
ACL_OP_JIT_COMPILE |
选择是在线编译算子,还是使用已编译的算子二进制文件。 |
编译选项 |
取值说明 |
---|---|
ACL_PRECISION_MODE |
用于配置算子精度模式。如果不配置该编译选项,默认采用allow_fp32_to_fp16。
|
ACL_AICORE_NUM |
用于配置模型编译时使用的AI Core数量。 当前版本设置无效。 |
ACL_AUTO_TUNE_MODE |
用于配置算子的自动调优模式。 不支持该参数。 |
ACL_OP_SELECT_IMPL_MODE |
用于选择算子是高精度实现还是高性能实现。如果不配置该编译选项,默认采用high_precision。
|
ACL_OPTYPELIST_FOR_IMPLMODE |
通过ACL_OPTYPELIST_FOR_IMPLMODE选项设置算子类型的列表(多个算子使用英文逗号进行分隔),与ACL_OP_SELECT_IMPL_MODE选项配合使用,设置列表中的算子通过高精度实现或高性能实现。 |
ACL_OP_DEBUG_LEVEL |
用于配置TBE算子编译debug功能开关。
说明:
配置为2(即开启ccec编译选项)时,会导致算子Kernel(*.o文件)大小增大。动态Shape场景下,由于算子编译时会遍历可能的Shape场景,因此可能会导致算子Kernel文件过大而无法进行编译,此种场景下,建议不要配置ccec编译选项。 由于算子Kernel文件过大而无法编译的报错日志示例如下: message:link error ld.lld: error: InputSection too large for range extension thunk ./kernel_meta_xxxxx.o |
ACL_DEBUG_DIR |
用于配置保存模型转换、网络迁移过程中算子编译生成的调试相关过程文件的路径,包括算子.o/.json/.cce等文件。 具体生成哪些文件以ACL_OP_DEBUG_LEVEL选项设置的取值为准。 路径支持大小写字母(a-z,A-Z)、数字(0-9)、下划线(_)、中划线(-)、句点(.)、中文字符。 |
ACL_OP_COMPILER_CACHE_MODE |
用于配置算子编译磁盘缓存模式。该编译选项需要与ACL_OP_COMPILER_CACHE_DIR配合使用。
使用该参数时,可以通过环境变量ASCEND_MAX_OP_CACHE_SIZE来限制某个芯片下缓存文件夹的磁盘空间的大小,当编译缓存空间大小达到ASCEND_MAX_OP_CACHE_SIZE设置的取值,且需要删除旧的kernel文件时,可以通过环境变量ASCEND_REMAIN_CACHE_SIZE_RATIO设置需要保留缓存的空间大小比例。配置示例如下:
# ASCEND_MAX_OP_CACHE_SIZE环境变量默认值为500,单位为MB export ASCEND_MAX_OP_CACHE_SIZE=500 # ASCEND_REMAIN_CACHE_SIZE_RATIO环境变量默认值为50,单位为百分比 export ASCEND_REMAIN_CACHE_SIZE_RATIO=50 |
ACL_OP_COMPILER_CACHE_DIR |
用于配置算子编译磁盘缓存的目录,默认目录为$HOME/atc_data。该编译选项需要与ACL_OP_COMPILER_CACHE_MODE配合使用。 路径支持大小写字母(a-z,A-Z)、数字(0-9)、下划线(_)、中划线(-)、句点(.)、中文字符。 如果设置了ACL_OP_DEBUG_LEVEL编译选项,则只有编译选项值为0或3才会启用编译缓存功能,其它取值禁用编译缓存功能。 |
ACL_OP_PERFORMANCE_MODE |
该参数已废弃,请勿配置,否则后续版本可能存在兼容性问题。 通过该选项设置是否按照算子执行高性能的方式编译算子,默认采用normal方式。 取值范围:
|
ACL_OP_JIT_COMPIL |
选择是在线编译算子,还是使用已编译的算子二进制文件。预留参数,当前暂不支持。
|
ACL_OP_DETERMINISTIC |
是否开启确定性计算。
当开启确定性计算功能时,算子在相同的硬件和输入下,多次执行将产生相同的输出。但启用确定性计算往往导致算子执行变慢。 默认情况下,不开启确定性计算,算子在相同的硬件和输入下,多次执行的结果可能不同。这个差异的来源,一般是因为在算子实现中,存在异步的多线程执行,会导致浮点数累加的顺序变化。 通常建议不开启确定性计算,因为确定性计算往往会导致算子执行变慢,进而影响性能。当发现模型多次执行结果不同,或者是进行精度调优时,可开启确定性计算,辅助模型调试、调优。 |
ACL_CUSTOMIZE_DTYPES |
*.cfg配置文件路径,包含文件名,配置文件中列举需要指定计算精度的算子名称或算子类型,每个算子单独一行。通过该配置,在模型编译时,可自定义某个或某些算子的计算精度。 配置约束:
|