Please enable Javascript to view the contents

NVIDIA 环境变量配置

 ·  ☕ 2 分钟

NVIDIA_VISIBLE_DEVICES

指定程序可见的 GPU 设备

1
CUDA_VISIBLE_DEVICES=0,1

可用值:

  • 1,2,以逗号分隔的 GPU UUID 或索引列表
  • all,所有 GPU
  • none,加载驱动,但无法访问 GPU
  • void,不加载驱动

NVIDIA_DRIVER_CAPABILITIES

控制哪些驱动程序库/二进制文件将被安装在容器内

1
NVIDIA_DRIVER_CAPABILITIES=compute,utility

可用值:

  • compute,CUDA 和 OpenCL 应用程序所需。
  • compat32,运行 32 位应用程序所需。
  • graphics,运行 OpenGL 和 Vulkan 应用程序所需。
  • utility,nvidia-smi 使用和 NVML 所需。
  • video,使用视频编解码器 SDK 所必需的。
  • display,利用 X11 显示所需。

NVIDIA_REQUIRE_CUDA

用于指定所需的 CUDA 版本和驱动程序版本

1
NVIDIA_REQUIRE_CUDA="cuda>=11.0 driver>=450"
1
NVIDIA_REQUIRE_CUDA="cuda>=11.7"

NVIDIA_REQUIRE_DRIVER

用于指定所需的驱动程序版本

1
NVIDIA_REQUIRE_DRIVER="driver>=470"

NVIDIA_REQUIRE_BRAND

用于指定所需的 GPU 品牌

1
2
NVIDIA_REQUIRE_BRAND="tesla"
NVIDIA_REQUIRE_BRAND="geforce"

NVIDIA_REQUIRE_ARCH

用于指定所需的 GPU 架构

1
NVIDIA_REQUIRE_ARCH "maxwell pascal volta turing ampere"

CUDA_DEVICE_ORDER

按照 PCI_BUS_ID 顺序从 0 开始排列 GPU 设备。

1
export CUDA_VISIBLE_DEVICES='PCI_BUS_ID'

只使用前两个 GPU

LD_LIBRARY_PATH

指定动态链接库的路径,确保运行时可以找到 CUDA 库文件。

1
LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/lib/x86_64-linux-gnu:/usr/local/nvidia/lib

CUDNN_PATH

指定 cuDNN 库的安装路径

1
CUDNN_PATH=/usr/local/cuda

CUDA_HOME

构建 CUDA 应用时,搜索 CUDA 库文件和工具的路径

1
CUDA_HOME=/usr/local/cuda

CUDA_PATH

NVIDIA 自己的开发工具搜索 CUDA 库文件和工具的路径

1
CUDA_PATH=/usr/local/cuda

NCCL_IB_HCA

用于指定要用于通信的 RDMA 接口

1
NCCL_IB_HCA=mlx5_0,mlx5_1

NCCL_PXN_DISABLE

禁用使用非本地 NIC 的节点间通信

1
NCCL_PXN_DISABLE=1

NCCL_IB_TIMEOUT

控制 InfiniBand 超时,取值范围 1-22

1
NCCL_IB_TIMEOUT=22

设置较大的值以避免 NCCL 超时

NCCL_IB_RETRY_CNT

控制 InfiniBand 的重试次数

1
NCCL_IB_RETRY_CNT=13

NCCL_DEBUG

启用 NCCL 调试日志

1
NCCL_DEBUG=INFO

NCCL_DEBUG_FILE

指定 NCCL 调试日志文件的路径,方便调试

1
NCCL_DEBUG_FILE=/tmp/nccl.log

NCCL_IB_PCI_RELAXED_ORDERING

可以提高虚拟化环境下 InfiniBand 网络的性能

1
NCCL_IB_PCI_RELAXED_ORDERING=1

0 表示禁用,1 表示启用,2 表示自动,默认值为 2。

NCCL_SOCKET_IFNAME

指定用于通信的网络接口

1
NCCL_SOCKET_IFNAME=eth0

NCCL_IB_DISABLE

禁用 InfiniBand 网络

1
NCCL_IB_DISABLE=1

NCCL_IB_GID_INDEX

指定要使用的 GID 索引

1
NCCL_IB_GID_INDEX=3

0、1 表示使用 ipv5,2、3 表示 ipv4。

其中,2 表示 RoCE v1 协议,3 表示 RoCE v2 协议。


微信公众号
作者
微信公众号