CUDA 环境变量
有关 CUDA 运行时环境变量的更多信息,请参阅 CUDA 环境变量。
PyTorch 环境变量
| 变量 | 描述 | 
|---|
| PYTORCH_NO_CUDA_MEMORY_CACHING
 | 如果设置为 1,则禁用在 CUDA 中缓存内存分配。这对于调试很有用。 | 
| PYTORCH_CUDA_ALLOC_CONF
 | 有关此环境变量的更深入解释,请参阅 内存管理。 | 
| PYTORCH_NVML_BASED_CUDA_CHECK
 | 如果设置为 1,在导入检查 CUDA 是否可用的 PyTorch 模块之前,PyTorch 将使用 NVML 检查 CUDA 驱动程序是否正常运行,而不是使用 CUDA 运行时。如果分叉进程因 CUDA 初始化错误而失败,这将很有用。 | 
| TORCH_CUDNN_V8_API_LRU_CACHE_LIMIT
 | cuDNN v8 API 的缓存限制。这用于限制 cuDNN v8 API 使用的内存。默认值为 10000,假设每个 ExecutionPlan 为 200KiB,这大致对应于 2GiB。设置为 0表示无限制,或设置为负值表示无缓存。 | 
| TORCH_CUDNN_V8_API_DISABLED
 | 如果设置为 1,则禁用 cuDNN v8 API。并将回退到 cuDNN v7 API。 | 
| TORCH_ALLOW_TF32_CUBLAS_OVERRIDE
 | 如果设置为 1,则强制启用 TF32,覆盖set_float32_matmul_precision设置。 | 
| TORCH_NCCL_USE_COMM_NONBLOCKING
 | 如果设置为 1,则在 NCCL 中启用非阻塞错误处理。 | 
| TORCH_NCCL_AVOID_RECORD_STREAMS
 | 如果设置为 0,则启用回退到基于记录流的同步行为在 NCCL 中。 | 
| TORCH_CUDNN_V8_API_DEBUG
 | 如果设置为 1,则检查是否正在使用 cuDNN V8。 | 
CUDA 运行时和库环境变量
| 变量 | 描述 | 
|---|
| CUDA_VISIBLE_DEVICES
 | 应使 CUDA 运行时可用的 GPU 设备 ID 的逗号分隔列表。如果设置为 -1,则没有 GPU 可用。 | 
| CUDA_LAUNCH_BLOCKING
 | 如果设置为 1,则使 CUDA 调用同步。这对于调试很有用。 | 
| CUBLAS_WORKSPACE_CONFIG
 | 此环境变量用于设置每个分配的 cuBLAS 工作区配置。格式为 :[SIZE]:[COUNT]。例如,每个分配的默认工作区大小为CUBLAS_WORKSPACE_CONFIG=:4096:2:16:8,它指定了总大小为2 * 4096 + 8 * 16 KiB。要强制 cuBLAS 避免使用工作区,请设置CUBLAS_WORKSPACE_CONFIG=:0:0。 | 
| CUDNN_CONV_WSCAP_DBG
 | 与 CUBLAS_WORKSPACE_CONFIG类似,此环境变量用于设置每个分配的 cuDNN 工作区配置。 | 
| CUBLASLT_WORKSPACE_SIZE
 | 与 CUBLAS_WORKSPACE_CONFIG类似,此环境变量用于设置 cuBLASLT 的工作区大小。 | 
| CUDNN_ERRATA_JSON_FILE
 | 可以设置为一个错误修复过滤器的文件路径,该过滤器可以传递给 cuDNN 以避免特定的引擎配置,主要用于调试或硬编码自动调整。 | 
| NVIDIA_TF32_OVERRIDE
 | 如果设置为 0,则在所有内核中全局禁用 TF32,覆盖所有 PyTorch 设置。 |