配置环境变量
场景说明
- 在线调优:指在生成网络模型的时候同步进行调优,包括使用ATC工具进行模型转换时调优,IR模型构建时调优。此种场景下,调优过程中生成的模型即可享受本次调优带来的收益。
- 离线调优:指生成网络模型时不进行调优,仅生成调优依赖的DUMP数据,然后用户基于DUMP数据进行调优。此种场景,调优过程可以脱离ATC模型转换或者IR模型构建。
无论是在线调优还是离线调优,调优生成的自定义知识库,后续的模型转换过程都可以直接使用。
环境变量说明
下面分别描述两种调优场景依赖的环境变量。
- 基础环境变量
- CANN软件基础环境变量
安装CANN软件后,使用CANN运行用户编译、运行时,需要以CANN运行用户登录环境,执行. ${install_path}/set_env.sh命令设置环境变量。
- Auto Tune工具依赖Python,以Python3.7.5为例,请以运行用户执行如下命令设置Python3.7.5的相关环境变量。
#用于设置python3.7.5库文件路径 export LD_LIBRARY_PATH=/usr/local/python3.7.5/lib:$LD_LIBRARY_PATH #如果用户环境存在多个python3版本,则指定使用python3.7.5版本 export PATH=/usr/local/python3.7.5/bin:$PATH
Python3.7.5安装路径请根据实际情况进行替换,您也可以将以上命令写入~/.bashrc文件中,然后执行source ~/.bashrc命令使其立即生效。
- CANN软件基础环境变量
- 在线调优场景下环境变量
除了•基础环境变量外,以下为在线调优场景下的可选环境变量。
export ASCEND_DEVICE_ID=0 export TE_PARALLEL_COMPILER=8 export TUNE_BANK_PATH=/home/username/custom_tune_bank export REPEAT_TUNE=False export TUNE_OPS_NAME=conv_layers/Pad_1 # 网络中需要调优的节点的name, 若指定此环境变量,则仅对指定的节点进行调优 export ENABLE_TUNE_BANK=True
- 离线调优场景下环境变量
除了•基础环境变量外,还需要配置如下必选环境变量,开启离线调优场景下生成DUMP数据的开关。
export ENABLE_TUNE_DUMP=True
以下为基于DUMP数据进行调优场景下的可选环境变量。
export TUNE_DUMP_PATH=/home/username/DumpData export ASCEND_DEVICE_ID=0 export TE_PARALLEL_COMPILER=8 export TUNE_BANK_PATH=/home/username/custom_tune_bank export REPEAT_TUNE=False export ENABLE_TUNE_BANK=True

- 利用export命令在当前终端下声明的环境变量,关闭Shell终端就会失效。
- 用户可将以上设置可选环境变量的命令写入自定义脚本,方便后续执行。
详细环境变量说明如下表所示。
环境变量 |
说明 |
---|---|
ASCEND_DEVICE_ID |
可选配置。 通过该环境变量指定昇腾AI处理器的逻辑ID。 取值范围[0,N-1],默认为0。其中N为当前物理机/虚拟机/容器内的设备总数。 |
TE_PARALLEL_COMPILER |
可选配置。 算子编译所需环境变量。 网络模型较大时,可通过配置此环境变量,开启算子的并行编译功能。 TE_PARALLEL_COMPILER的值代表算子并行编译进程数(配置为整数),默认值为8,取值范围为0~32。当该取值等于0时,表示不开启算子的并行编译功能,当该取值大于0时,表示开启算子的并行编译功能。 开启Auto Tune调优场景下:配置不能超过CPU核数*80%/昇腾AI处理器的个数。 |
TUNE_BANK_PATH |
可选配置。 可通过此环境变量指定调优后自定义知识库的存储路径。 针对RL调优模式支持的算子:
针对GA调优模式支持的算子:
|
REPEAT_TUNE |
可选配置。 是否重新发起调优,此环境变量仅在开启了Auto Tune调优的场景下生效。 如果知识库(内置或者自定义)中已经存在网络模型中的调优case(针对某shape的调优策略),则会跳过此case的调优流程,若想重新发起调优,可设置此环境变量为True。例如某些算子进行了逻辑的变更,如GEMM算子新增了支持ND的输入,该情况下需要设置此环境变量后, 重新发起调优。 取值范围:True或者False,默认值为False。 |
ENABLE_TUNE_BANK |
可选配置。 使能知识库开关,有以下两种取值:
默认值为True。 |
TUNE_OPS_NAME |
可选配置。 指定层调优,用于网络调优场景中。例如,在对网络进行Profiling性能分析后,可通过此环境变量指定对某个性能较低的算子进行调优。
说明:
此环境变量仅支持生成网络模型时同步调优的场景,不支持基于DUMP数据离线调优的场景。 |
ENABLE_TUNE_DUMP |
可选配置。 此环境变量应用于基于DUMP数据离线调优的场景。 进行离线调优时,开启生成算子DUMP数据的开关。 取值范围:True或者False,默认值为False。 说明:
若需要生成DUMP数据,除了将此环境变量设置为True,还需要使能Auto Tune调优开关。 |
TUNE_DUMP_PATH |
可选配置。 此环境变量应用于基于DUMP数据离线调优的场景。 可通过此环境变量指定生成的DUMP数据的存储路径。 可配置为绝对路径或相对于执行Auto Tune工具所在路径的相对路径,可指定任意执行用户具有可读、写、执行的目录。 若不配置此环境变量,则默认在工具执行路径下生成tune_dump目录进行存储。 |