安装后自动配置环境变量
描述CANN软件安装完成后,系统通过“set_env.sh”脚本默认配置的程序编译、执行相关的基础环境变量,以及后续程序编译执行时,需要手工配置的跟安装包相关的环境变量。
CANN软件安装完成后,默认会自动配置程序编译、执行所依赖的基础环境变量,但用户进程结束后相关环境变量自动失效,您也可以通过如下环境变量脚本一键式配置。
# root用户安装时环境变量配置示例: # 安装toolkit包时 source /usr/local/Ascend/ascend-toolkit/set_env.sh # 安装nnrt包时 source /usr/local/Ascend/nnrt/set_env.sh # 安装nnae包时 source /usr/local/Ascend/nnae/set_env.sh # 安装nnal包ATB加速库 source /usr/local/Ascend/nnal/atb/set_env.sh # 安装nnal包SiP加速库 source /usr/local/Ascend/nnal/asdsip/set_env.sh
# 非root用户安装时环境变量配置示例:
# 安装toolkit时
source ${HOME}/Ascend/ascend-toolkit/set_env.sh 
# 安装nnrt包时
source ${HOME}/Ascend/nnrt/set_env.sh    
# 安装nnae包时
source ${HOME}/Ascend/nnae/set_env.sh
# 安装nnal包时ATB加速库
source ${HOME}/Ascend/nnal/atb/set_env.sh
# 安装nnal包SiP加速库
source ${HOME}/Ascend/nnal/asdsip/set_env.sh
用户也可以通过修改~/.bashrc文件方式设置永久环境变量,操作如下:
- 以运行用户在任意目录下执行vi ~/.bashrc命令,打开.bashrc文件,在文件最后一行后面添加上述内容。
 - 执行:wq!命令保存文件并退出。
 - 执行source ~/.bashrc命令使其立即生效。
 
详细环境变量说明如下表所示。
软件包  | 
环境变量名称  | 
环境变量说明  | 
|---|---|---|
开发套件包(toolkit)  | 
LD_LIBRARY_PATH  | 
动态库的查找路径。  | 
ASCEND_TOOLKIT_HOME  | 
CANN-toolkit软件包安装后文件存储路径。  | 
|
PYTHONPATH  | 
Python搜索路径。  | 
|
PATH  | 
可执行文件查找路径。  | 
|
ASCEND_AICPU_PATH  | 
AI CPU组件的安装路径。  | 
|
ASCEND_OPP_PATH  | 
算子库根目录。  | 
|
TOOLCHAIN_HOME  | 
工具链安装路径。  | 
|
ASCEND_HOME_PATH  | 
同ASCEND_TOOLKIT_HOME,代表CANN-toolkit软件安装后文件存储路径。  | 
|
离线推理引擎包(nnrt)  | 
ASCEND_NNRT_HOME  | 
nnrt软件包安装后文件存储路径。  | 
LD_LIBRARY_PATH  | 
动态库的查找路径。  | 
|
PYTHONPATH  | 
Python搜索路径。  | 
|
ASCEND_AICPU_PATH  | 
AI CPU组件的安装路径。  | 
|
ASCEND_OPP_PATH  | 
算子库根目录。  | 
|
深度学习引擎包(nnae)  | 
ASCEND_NNAE_HOME  | 
nnae软件包安装后文件存储路径。  | 
LD_LIBRARY_PATH  | 
动态库的查找路径。  | 
|
PYTHONPATH  | 
Python搜索路径。  | 
|
PATH  | 
可执行文件查找路径。  | 
|
ASCEND_AICPU_PATH  | 
AI CPU组件的安装路径。  | 
|
ASCEND_OPP_PATH  | 
算子库根目录。  | 
|
ASCEND_HOME_PATH  | 
同ASCEND_NNAE_HOME,代表nnae软件安装后文件存储路径。  | 
|
BISHENG_INSTALL_PATH  | 
毕昇编译器的安装路径。  | 
|
神经网络加速库(nnal)中ATB加速库  | 
ATB_HOME_PATH  | 
软件包安装后文件存储路径。  | 
LD_LIBRARY_PATH  | 
Linux系统中加载动态库时的搜寻路径列表。  | 
|
PATH  | 
将ATB软件包bin目录的路径添加到系统PATH环境变量中,推荐使用默认路径。  | 
|
ATB_STREAM_SYNC_EVERY_KERNEL_ENABLE  | 
用于问题定位,确定报错所在的kernel。当变量配置为1时,每个Kernel的Execute结束时就做流同步。  | 
|
ATB_STREAM_SYNC_EVERY_RUNNER_ENABLE  | 
用于问题定位,确定报错所在的runner。当变量配置为1时,每个Runner的Execute时就做流同步。  | 
|
ATB_STREAM_SYNC_EVERY_OPERATION_ENABLE  | 
用于问题定位,确定报错所在的Operation。当变量配置为1时,每个Operation的Execute时就做同步。  | 
|
ATB_OPSRUNNER_SETUP_CACHE_ENABLE  | 
是否开启ATB的SetupCache功能。该功能在检测到operation的输入和输出tensor未发生变化时会跳过setup的大部分流程,进而提升调度侧性能。 默认开启,以进行性能加速。  | 
|
ATB_OPSRUNNER_KERNEL_CACHE_LOCAL_COUNT  | 
本地kernelCache的槽位数。 
  | 
|
ATB_OPSRUNNER_KERNEL_CACHE_GLOABL_COUNT  | 
全局kernelCache的槽位数。 
  | 
|
ATB_WORKSPACE_MEM_ALLOC_ALG_TYPE  | 
workspace内存分配算法选择。根据环境变量配置不同,ATB会选择不同的算法去计算workspace大小与workspace分配,用户可通过选择不同算法自行测试workspace分配情况。  | 
|
ATB_WORKSPACE_MEM_ALLOC_GLOBAL  | 
是否使用全局中间tensor内存分配算法。开启后会对中间tensor内存进行大小计算与分配。  | 
|
ATB_COMPARE_TILING_EVERY_KERNEL  | 
每个Kernel运行后,比较运行前和后的NPU上tiling内容是否变化,一般用于检查是否发生tiling内存踩踏。  | 
|
ATB_HOST_TILING_BUFFER_BLOCK_NUM  | 
Context内部HostTilingBuffer块数,数量与OP并行的最大并行数有关,通常使用默认值,不建议修改。  | 
|
ATB_DEVICE_TILING_BUFFER_BLOCK_NUM  | 
Context内部DeviceTilingBuffer块数,数量与OP并行的最大并行数有关,通常使用默认值,不建议修改。  | 
|
ATB_SHARE_MEMORY_NAME_SUFFIX  | 
共享内存命名后缀,多用户同时使用通信算子时,需通过设置该值进行共享内存的区分。  | 
|
ATB_MATMUL_SHUFFLE_K_ENABLE  | 
Shuffle-K使能,矩阵乘的结果矩阵不同位置计算时的累加序一致/不一致。会影响matmul算子内部累加序。  | 
|
ASDOPS_LOG_LEVEL  | 
算子库日志级别。  | 
|
ASDOPS_LOG_TO_STDOUT  | 
算子库日志是否输出到控制台。  | 
|
ASDOPS_LOG_TO_FILE  | 
算子库日志是否输出到文件。  | 
|
ASDOPS_LOG_TO_FILE_FLUSH  | 
日志写文件是否刷新。  | 
|
ASDOPS_LOG_TO_BOOST_TYPE  | 
加速库日志目录名称。  | 
|
ASDOPS_LOG_PATH  | 
算子库日志保存路径。  | 
|
LCCL_DETERMINISTIC  | 
LCCL确定性AllReduce(保序加)是否开启。需注意,开启功能在rankSize<=8时生效。 开启后会有如下影响: 
  | 
|
神经网络加速库(nnal)中SiP加速库  | 
ASCEND_PROCESS_LOG_PATH  | 
设置日志落盘路径。  | 
ASCEND_SLOG_PRINT_TO_STDOUT  | 
是否开启日志打屏。  | 
|
ASCEND_GLOBAL_LOG_LEVEL  | 
设置应用类日志的日志级别及各模块日志级别,仅支持调试日志。  |