Questa pagina descrive come installare
NCCL/gIB con i pacchetti software Debian (.deb) o Red Hat Package Manager (.rpm). Questa installazione
ti consente di eseguire carichi di lavoro NCCL su istanze A4X Max, A4X, A4 e A3 Ultra.
(Per A4X Max) Aggiorna le librerie dello spazio utente
Su A4X Max, devi installare le librerie dello spazio utente più recenti prima di eseguire i carichi di lavoro NCCL.
Debian 12+/Ubuntu 20.04+ (pacchetto .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
Installa NCCL/gIB
A seconda di dove esegui i carichi di lavoro, installa NCCL/gIB nell'istanza di calcolo o nell'immagine container.
Il pacchetto nccl-gib è incluso in un'intestazione e in una libreria NCCL NVidia non modificata (libnccl2.so). Tutti i contenuti NCCL/gIB vengono installati nella directory /usr/local/gib e le librerie dei plug-in vengono installate anche nella cartella di sistema (in /usr/lib). Alcune dipendenze vengono recuperate anche tramite i repository della distribuzione.
Debian 12+/Ubuntu 20.04+ (pacchetto .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+ (pacchetto .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
Installa i plug-in NCCL
Per installare solo i plug-in gIB NCCL (senza la libreria NCCL in bundle), installa il pacchetto nccl-gib-plugins. Se utilizzi la versione di NCCL fornita con gIB, non devi installare il pacchetto separatamente. Tuttavia, se fornisci la tua versione personalizzata di NCCL, devi utilizzare questa opzione per installare i plug-in.
Debian 12+/Ubuntu 20.04+ (pacchetto .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+ (pacchetto .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
Se utilizzi immagini del sistema operativo standard, devi anche installare il driver NVIDIA DOCA-OFED più recente . Non è necessario installare questo driver se utilizzi le immagini ottimizzate per gli acceleratori di Google, come Container OS o immagini del sistema operativo Ubuntu o Rocky Linux ottimizzate per gli acceleratori.
Per evitare che le istanze di calcolo eseguano versioni diverse del pacchetto NCCL/gIB, ti consigliamo di aggiornare NCCL/gIB prima di eseguire i carichi di lavoro NCCL o di disattivare gli aggiornamenti automatici dei pacchetti, ad esempio unattended-upgrades su Ubuntu o Debian.
Attiva NCCL/gIB
A partire da NCCL/gIB v1.1.2, se hai installato nccl-gib o
nccl-gib-plugins, NCCL/gIB dovrebbe essere attivato automaticamente nei tuoi carichi di lavoro.
Nelle versioni precedenti, per attivare NCCL/gIB nei carichi di lavoro, assicurati di quanto segue:
- Viene eseguito il sourcing di
/usr/local/gib/scripts/set_nccl_env.shnell'ambiente di runtime. Il file di origine include tutte le variabili di ambiente necessarie per NCCL/gIB e Google prevede di aggiornarle nelle release future di NCCL/gIB. - La directory
/usr/local/gib/lib64si trova inLD_LIBRARY_PATH.
Per verificare che NCCL/gIB sia attivato, controlla che siano presenti le seguenti voci di log a livello INFO di NCCL:
# 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
Passaggi successivi
- Utilizza i plug-in gIB NCCL nei container NVIDIA NGC.
- Esegui NCCL sulle istanze Compute Engine.
- Raccogli e comprendi i log NCCL per la risoluzione dei problemi.