昇腾社区首页
中文
注册

环境变量列表

本手册描述开发者在Ascend Extension for PyTorch训练和在线推理过程中可使用的环境变量。基于CANN构建AI应用和业务过程中使用的环境变量请参考CANN 环境变量参考

表1 环境变量列表

环境变量名称

简介

算子执行

INF_NAN_MODE_ENABLE

通过此环境变量可控制AI处理器对输入数据为Inf/NaN的处理能力,即控制AI处理器使用饱和模式还是INF_NAN模式。

INF_NAN_MODE_FORCE_DISABLE

Atlas A2 训练系列产品/Atlas A3 训练系列产品,通过此环境变量可强制关闭INF_NAN模式。

COMBINED_ENABLE

通过此环境变量可设置combined标志。

ASCEND_LAUNCH_BLOCKING

通过此环境变量可控制算子执行时是否启动同步模式。

TASK_QUEUE_ENABLE

通过此环境变量可配置task_queue算子下发队列是否开启和优化等级。

算子编译

ACL_OP_COMPILER_CACHE_DIR

通过此环境变量可配置算子编译磁盘缓存的目录。

ACL_OP_COMPILER_CACHE_MODE

通过此环境变量可配置算子编译磁盘缓存模式。

内存管理

PYTORCH_NPU_ALLOC_CONF

通过此环境变量可控制缓存分配器行为。配置此环境变量会改变内存占用量,可能造成性能波动。

PYTORCH_NO_NPU_MEMORY_CACHING

通过此环境变量可配置是否关闭内存复用机制。

OOM_SNAPSHOT_ENABLE

通过此环境变量可配置在网络发生“NPU out of memory. Tried to allocate...”的内存不足报错时,是否保存内存数据,以供分析内存不足原因。

OOM_SNAPSHOT_PATH

通过此环境变量可配置在网络发生内存不足报错时,内存数据保存路径。

MULTI_STREAM_MEMORY_REUSE

通过此环境变量可配置多流内存复用是否开启。

集合通信

HCCL_ASYNC_ERROR_HANDLING

当使用HCCL作为通信后端时,通过此环境变量可控制是否开启异步错误处理。

HCCL_DESYNC_DEBUG

当使用HCCL作为通信后端时,通过此环境变量可控制是否进行通信超时分析。

HCCL_EVENT_TIMEOUT

当使用HCCL作为通信后端时,通过此环境变量可设置等待Event完成的超时时间。

P2P_HCCL_BUFFSIZE

通过此环境变量可配置是否开启点对点通信(torch.distributed.isend、torch.distributed.irecv和torch.distributed.batch_isend_irecv)使用独立通信域功能。

RANK_TABLE_FILE

通过此环境变量可配置是否通过ranktable file进行集合通信域建链。

TORCH_HCCL_ZERO_COPY

训练或在线推理场景下,可通过此环境变量开启集合通信片内零拷贝功能,减少all_gather、reduce_scatter在通信过程中的片内拷贝次数,提升集合通信效率,降低通信耗时。同时在计算通信并行场景下,降低通信过程中对显存带宽的抢占。

告警信息打印

TORCH_NPU_DISABLED_WARNING

通过此环境变量可配置是否打印Ascend Extension for PyTorch的告警信息。

同步超时

ACL_DEVICE_SYNC_TIMEOUT

通过此环境变量可配置设备同步的超时时间。

特征值检测

NPU_ASD_ENABLE

通过此环境变量可控制是否开启Ascend Extension for PyTorch的特征值检测功能。

NPU_ASD_UPPER_THRESH

通过此环境变量可配置特征值检测功能的绝对阈值。

NPU_ASD_SIGMA_THRESH

通过此环境变量可配置特征值检测功能的相对阈值。

性能优化

CPU_AFFINITY_CONF

通过此环境变量可以控制CPU端算子任务的处理器亲和性,即设定任务绑核。该配置能够优化任务的执行效率,避免跨NUMA(非统一内存访问架构)节点的内存访问,减少任务调度开销。

PROF_CONFIG_PATH

PyTorch训练场景Ascend PyTorch Profiler接口的dynamic_profile采集功能profiler_config.json配置文件路径环境变量。

KINETO_USE_DAEMON

PyTorch训练场景用于设置是否通过msMonitor nputrace方式开启dynamic_profile采集功能。