CUDA 环境变量
有关 CUDA 运行时环境变量的更多信息,请参阅 CUDA Environment Variables。
PyTorch 环境变量
变量 |
描述 |
PYTORCH_NO_CUDA_MEMORY_CACHING
|
如果设置为 1 ,则禁用 CUDA 中的内存分配缓存。这对于调试很有用。 |
PYTORCH_CUDA_ALLOC_CONF
|
有关此环境变量更深入的解释,请参阅 内存管理。 |
PYTORCH_NVML_BASED_CUDA_CHECK
|
如果设置为 1 ,在导入检查 CUDA 是否可用的 PyTorch 模块之前,PyTorch 将使用 NVML 检查 CUDA 驱动程序是否正常工作,而不是使用 CUDA 运行时。这有助于解决 fork 进程出现 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
|
逗号分隔的 GPU 设备 ID 列表,应提供给 CUDA 运行时。如果设置为 -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
|
可以设置为 errata 过滤器的文件路径,该过滤器可以传递给 cuDNN 以避免特定的引擎配置,主要用于调试或硬编码自动调优。 |
NVIDIA_TF32_OVERRIDE
|
如果设置为 0 ,则全局禁用所有内核的 TF32,覆盖所有 PyTorch 设置。 |