NVLink, interconectarea GPU cu lățime de bandă mare de la NVIDIA, revoluționează sarcinile de lucru multi-GPU permițând partajarea rapidă a memoriei și transferul de date, depășind cu mult limitările PCIe. Pentru cercetătorii de date, inginerii ML sau utilizatorii HPC, NVLink poate accelera sarcini precum pregătirea modelelor de învățare profundă sau simulările la scară largă. De exemplu, puteți utiliza NVLink cu două GPU A100 pentru a antrena mai rapid un model de limbaj de mari dimensiuni prin punerea în comun a memoriei GPU. Cu toate acestea, configurarea NVLink într-un mediu virtualizat este complexă și necesită hardware și configurare specifice. Acest ghid explică NVLink, limitările sale într-un VPS și cum să îl configurați pentru o performanță optimă.
Nu toți furnizorii de VPS acceptă configurații NVLink.
Doar VPS-urile bazate pe bare-metal sau mașinile virtuale dedicate GPU cu passthrough direct permit NVLink să funcționeze.
Nu există suport NVLink în medii containerizate precum Docker, cu excepția cazului în care este rulat direct pe gazdă.
NVLink permite ca două sau mai multe GPU-uri NVIDIA compatibile să:
Să partajeze memoria între GPU-uri pentru seturi mari de date
Schimbul de date la o lățime de bandă totală de până la 600 GB/s
Efectuarea mai rapidă a instruirii multi-GPU fără implicarea CPU
Suportat pe GPU-uri precum:
NVIDIA A100, V100, RTX 3090, 4090, A6000, etc.
De obicei, necesită o punte NVLink fizică
Înainte de a încerca să configurați NVLink pe un VPS, asigurați-vă de următoarele:
Serverul fizic trebuie să aibă:
Cel puțin două GPU-uri compatibile NVLink
Punte(e) NVLink instalată(e)
BIOS și firmware care acceptă NVLink
Configurațiile compatibile obișnuite includ două A100 sau RTX 3090 cu punte NVLink.
VPS-ul trebuie să fie provizionat pe un hipervizor compatibil cu GPU passthrough, cum ar fi:
KVM/QEMU cu VFIO (PCI passthrough)
VMware ESXi cu DirectPath I/O
Proxmox VE cu GPU passthrough
⚠️ Notă: NVLink nu funcționează între dispozitive virtualizate decât dacă ambele GPU sunt trecute ca dispozitive PCIe complete către aceeași VM.
Gazda trebuie să transmită ambele GPU-uri fizice direct către VPS-ul dvs.
Pentru KVM/QEMU cu VFIO:
Actualizați libvirt sau qemu XML pentru a trece prin ambele GPU-uri.
În interiorul VPS (guest OS), instalați cel mai recent driver NVIDIA:
Reporniți după instalare.
Odată în interiorul sistemului de operare invitat:
Ar trebui să vedeți:
GPU0 | GPU1 | Afinitate CPU | |
GPU0 | X | NV1 | 0-15 |
GPU1 | NV1 | X | 0-15 |
Unde NV1 înseamnă că NVLink este activ între GPU0 și GPU1.
Asigurați-vă că Peer-to-Peer și Access sunt ambele marcate ca Enabled.
Acces izolat: Asigurați-vă că VPS-ul dvs. nu este suprasubscris sau găzduit împreună cu alții atunci când utilizați passthrough GPU complet.
Nu există scurgeri de memorie partajată: NVLink creează un spațiu de memorie partajată-limită de acces la mediile de încredere.
Auditul accesului la dispozitivele /dev/nvidia*.
Simptom | Cauză posibilă | Rezolvare |
---|---|---|
NVLink nu este afișat în nvidia-smi | GPU-urile nu sunt conectate corect | Opriți gazda și reinstalați puntea NVLink fizică |
Un singur GPU vizibil | Configurație greșită a passthrough-ului | Verificați setările VM XML/device passthrough |
Peer-to-peer dezactivat | Driver nepotrivit sau setări BIOS | Actualizați driverul, verificați BIOS pentru suport NVLink |
Lățime de bandă redusă | Liniile NVLink subutilizate | Utilizați nvidia-smi nvlink –status pentru a verifica benzile |
NVLink schimbă regulile jocului pentru volumele de lucru cu GPU intensiv, oferind avantaje imense de performanță atunci când este configurat corespunzător – chiar și în medii virtuale. Cu passthrough GPU direct și o configurare atentă, puteți exploata puterea interconectărilor multi-GPU pe un VPS, transformându-l într-un nod de calcul de înaltă performanță pentru aplicații solicitante.