安装 gIB NCCL 插件

本页面介绍如何使用 Debian 软件包 (.deb) 或 Red Hat 软件包管理器 (.rpm) 安装 NCCL/gIB。安装后,您可以在 A4X Max、A4X、A4 和 A3 Ultra 实例上运行 NCCL 工作负载。

(适用于 A4X Max)更新用户空间库

在 A4X Max 上,您必须先安装最新的用户空间库,然后才能运行 NCCL 工作负载。如果您以根用户身份登录,请省略 sudo(如果出现)以直接运行命令。

Debian 12+/Ubuntu 20.04+(.deb 软件包)

sudo apt update
sudo apt install curl

# Fetch DOCA OFED userspace libraries
export DOCA_URL="https://linux.mellanox.com/public/repo/doca/latest/ubuntu22.04/arm64-sbsa/"
export BASE_URL="https://linux.mellanox.com/public/repo/doca"
curl "${BASE_URL}/GPG-KEY-Mellanox.pub" | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/GPG-KEY-Mellanox.pub
echo "deb [signed-by=/etc/apt/trusted.gpg.d/GPG-KEY-Mellanox.pub] ${DOCA_URL} ./" | sudo tee /etc/apt/sources.list.d/doca.list

sudo apt update
sudo apt install doca-ofed-userspace

# Upgrade to latest NCCL for best compatibility
sudo apt install --only-upgrade --allow-change-held-packages libnccl2 libnccl-dev

安装 NCCL/gIB

根据您运行工作负载的位置,您可以在计算实例或容器映像中安装 NCCL/gIB。

nccl-gib 软件包捆绑了未经修改的 NVidia NCCL 库 (libnccl2.so) 和标头。所有 NCCL/gIB 内容都安装到 /usr/local/gib 目录中,插件库也安装到系统文件夹(位于 /usr/lib 下)中。一些依赖项也会通过分发版代码库提取。

Debian 12+/Ubuntu 20.04+(.deb 软件包)

# If on an image not from Google, trust the Google Cloud signing key
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/cloud.google.gpg

# Add gpudirect-gib-apt repo
echo 'deb https://packages.cloud.google.com/apt gpudirect-gib-apt main' | sudo tee /etc/apt/sources.list.d/nccl-gib.list

sudo apt update
sudo apt install nccl-gib

RockyLinux/CentOS/RHEL 9+(.rpm 软件包)

# Add gpudirect-gib-rpm repo
sudo tee -a /etc/yum.repos.d/nccl-gib.repo << EOL
[gpudirect-gib-rpm]
name=NCCL/gIB
baseurl=https://packages.cloud.google.com/yum/repos/gpudirect-gib-rpm
enabled=1
repo_gpgcheck=0
gpgcheck=0

sudo dnf makecache
sudo dnf install nccl-gib

安装 NCCL 插件

如需仅安装 gIB NCCL 插件(不包含捆绑的 NCCL 库),请安装 nccl-gib-plugins 软件包。如果您使用的是 gIB 随附的 NCCL 版本,则无需单独安装该软件包。但是,如果您提供自己的自定义 NCCL 版本,则必须使用此选项来安装插件。

Debian 12+/Ubuntu 20.04+(.deb 软件包)

# If on an image not from Google, trust the Google Cloud signing key
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/cloud.google.gpg

# Add gpudirect-gib-apt repo
echo 'deb https://packages.cloud.google.com/apt gpudirect-gib-apt main' | sudo tee /etc/apt/sources.list.d/nccl-gib.list

sudo apt update
sudo apt install nccl-gib-plugins

RockyLinux/CentOS/RHEL 9+(.rpm 软件包)

# Add gpudirect-gib-rpm repo
sudo tee -a /etc/yum.repos.d/nccl-gib.repo << EOL
[gpudirect-gib-rpm]
name=NCCL/gIB
baseurl=https://packages.cloud.google.com/yum/repos/gpudirect-gib-rpm
enabled=1
repo_gpgcheck=0
gpgcheck=0

sudo dnf makecache
sudo dnf install nccl-gib-plugins

如果您使用的是标准操作系统映像,则还必须安装最新的 NVIDIA DOCA-OFED 驱动程序。 如果您使用的是 Google 的加速器 优化映像(例如 Container OS加速器优化 Ubuntu 或 Rocky Linux 操作系统映像),则无需安装此驱动程序。

为避免计算实例运行不同版本的 NCCL/gIB 软件包,我们建议您在运行 NCCL 工作负载之前更新 NCCL/gIB,或停用自动软件包更新(例如 Ubuntu 或 Debian 上的 unattended-upgrades)。

启用 NCCL/gIB

从 NCCL/gIB v1.1.2 开始,如果您安装了 nccl-gibnccl-gib-plugins,则 NCCL/gIB 应在您的工作负载中自动启用。

在之前的版本中,如需在工作负载中启用 NCCL/gIB,请确保以下事项:

  • 在运行时环境中引用了 /usr/local/gib/scripts/set_nccl_env.sh。源文件包含 NCCL/gIB 所需的所有环境变量,Google 希望在未来的 NCCL/gIB 版本中更新这些变量。
  • LD_LIBRARY_PATH 中包含 /usr/local/gib/lib64 目录。

如需验证是否已启用 NCCL/gIB,请检查是否存在以下 NCCL INFO 级日志条目:

# A sample log entry from NCCL core
vm-0:606:642 [6] NCCL INFO Using network gIB

# A sample log entry from the gIB network plugin
vm-0:606:642 [6] NCCL INFO NET/gIB : Initializing gIB v1.1.2

后续步骤