Auf dieser Seite wird beschrieben, wie Sie
NCCL/gIB entweder mit Debian-Software
Paketen (.deb) oder mit dem Red Hat Package Manager (.rpm) installieren. Mit dieser Installation
können Sie NCCL-Arbeitslasten auf A4X Max-, A4X-, A4- und A3 Ultra-Instanzen ausführen.
(Für A4X Max) Userspace-Bibliotheken aktualisieren
Auf A4X Max müssen Sie die neuesten Userspace-Bibliotheken installieren, bevor Sie Ihre NCCL-Arbeitslasten ausführen.
Debian 12+/Ubuntu 20.04+ (.deb-Paket)
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 installieren
Je nachdem, wo Sie Ihre Arbeitslasten ausführen, installieren Sie NCCL/gIB entweder in der Compute-Instanz oder im Container-Image.
Das Paket nccl-gib wird mit einer unveränderten NVidia NCCL-Bibliothek (libnccl2.so) und Headern gebündelt. Alle NCCL/gIB-Inhalte werden im Verzeichnis /usr/local/gib installiert und die Plug-in-Bibliotheken werden auch im Systemordner (unter /usr/lib) installiert. Einige Abhängigkeiten werden auch über die Repositories der Distribution abgerufen.
Debian 12+/Ubuntu 20.04+ (.deb-Paket)
# 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-Paket)
# 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-Plug-ins installieren
Wenn Sie nur die gIB NCCL-Plug-ins (ohne die gebündelte NCCL-Bibliothek) installieren möchten, installieren Sie das Paket nccl-gib-plugins. Wenn Sie die Version von NCCL verwenden, die mit gIB geliefert wird, müssen Sie das Paket nicht separat installieren. Wenn Sie jedoch Ihre eigene benutzerdefinierte Version von NCCL bereitstellen, müssen Sie diese Option verwenden, um die Plug-ins zu installieren.
Debian 12+/Ubuntu 20.04+ (.deb-Paket)
# 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-Paket)
# 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
Wenn Sie Standard-Betriebssystem-Images verwenden, müssen Sie auch den neuesten NVIDIA DOCA-OFED-Treiber installieren. Dieser Treiber muss nicht installiert werden, wenn Sie von Google optimierte Images für Beschleuniger verwenden, z. B. Container-Betriebssystem oder für Beschleuniger optimierte Ubuntu- oder Rocky Linux-Betriebssystem-Images.
Damit auf Compute-Instanzen nicht verschiedene Versionen des NCCL/gIB-Pakets ausgeführt werden, empfehlen wir, NCCL/gIB zu aktualisieren, bevor Sie Ihre NCCL-Arbeitslasten ausführen, oder automatische Paketaktualisierungen zu deaktivieren, z. B. unattended-upgrades unter Ubuntu oder Debian.
NCCL/gIB aktivieren
Ab NCCL/gIB Version 1.1.2 sollte NCCL/gIB automatisch in Ihren Arbeitslasten aktiviert werden, wenn Sie nccl-gib oder
nccl-gib-plugins installiert haben.
In früheren Versionen müssen Sie Folgendes beachten, um NCCL/gIB in Ihren Arbeitslasten zu aktivieren:
/usr/local/gib/scripts/set_nccl_env.shwird in Ihrer Laufzeitumgebung verwendet. Die Quelldatei enthält alle erforderlichen Umgebungsvariablen für NCCL/gIB. Google plant, diese in zukünftigen NCCL/gIB-Versionen zu aktualisieren.- Das Verzeichnis
/usr/local/gib/lib64befindet sich in IhremLD_LIBRARY_PATH.
Prüfen Sie, ob die folgenden NCCL-Logeinträge auf INFO-Ebene vorhanden sind, um zu bestätigen, dass NCCL/gIB aktiviert ist:
# 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
Nächste Schritte
- gIB NCCL-Plug-ins in NVIDIA NGC-Containern verwenden.
- NCCL auf Compute Engine-Instanzen ausführen.
- NCCL-Logs zur Fehlerbehebung erfassen und analysieren