NVLink ist NVIDIAs energieeffizienter Interconnect mit hoher Bandbreite für die Verbindung mehrerer GPUs und bietet eine deutlich höhere Kommunikationsbandbreite im Vergleich zu traditionellem PCIe. Für Datenwissenschaftler, ML-Ingenieure und High-Performance-Computing (HPC)-Benutzer bietet NVLink eine nahtlose GPU-Speicherfreigabe, die Engpässe reduziert und schnelleres Training und schnellere Schlussfolgerungen ermöglicht.
Aber kann man NVLink in einem VPS verwenden? Die Antwort ist ja, aber mit wichtigen Einschränkungen. Im Folgenden erfahren Sie, was NVLink ist, wie man es konfiguriert und was erforderlich ist, damit es in einer virtualisierten Serverumgebung funktioniert.
Nicht alle VPS-Anbieter unterstützen NVLink-Konfigurationen.
Nur Bare-Metal-basierte VPS oder dedizierte virtuelle GPU-Maschinen mit direktem Passthrough ermöglichen den Einsatz von NVLink.
Keine NVLink-Unterstützung in containerisierten Umgebungen wie Docker, es sei denn, sie werden direkt auf dem Host ausgeführt.
NVLink ermöglicht es zwei oder mehr kompatiblen NVIDIA-GPUs,:
Gemeinsame Nutzung des Speichers über GPUs hinweg für große Datensätze
Daten mit einer Gesamtbandbreite von bis zu 600 GB/s austauschen
Schnelleres Multi-GPU-Training ohne CPU-Beteiligung durchführen
Unterstützt auf GPUs wie:
NVIDIA A100, V100, RTX 3090, 4090, A6000, etc.
Erfordert normalerweise eine physische NVLink-Brücke
Bevor Sie versuchen, NVLink auf einem VPS zu konfigurieren, müssen Sie Folgendes sicherstellen:
Der physische Server muss über Folgendes verfügen
Mindestens zwei NVLink-kompatible GPUs
NVLink-Brücke(n) installiert
BIOS und Firmware, die NVLink unterstützen
Zu den üblichen kompatiblen Konfigurationen gehören Dual A100 oder RTX 3090 mit NVLink-Brücke.
Der VPS muss auf einem GPU-Passthrough-fähigen Hypervisor bereitgestellt werden, z. B.:
KVM/QEMU mit VFIO (PCI-Passthrough)
VMware ESXi mit DirectPath-E/A
Proxmox VE mit GPU-Passthrough
⚠️ Hinweis: NVLink funktioniert nicht über virtualisierte Geräte, es sei denn, beide GPUs werden als vollständige PCIe-Geräte an dieselbe VM weitergeleitet.
Der Host muss beide physischen GPUs direkt an Ihren VPS weiterleiten.
Für KVM/QEMU mit VFIO:
Aktualisieren Sie libvirt oder qemu XML, um beide GPUs durchzulassen.
Installieren Sie innerhalb des VPS (Gastbetriebssystem) den neuesten NVIDIA-Treiber:
Starten Sie nach der Installation neu.
Sobald Sie im Gastbetriebssystem sind:
Sie sollten sehen:
GPU0 | GPU1 | CPU-Affinität | |
GPU0 | X | NV1 | 0-15 |
GPU1 | NV1 | X | 0-15 |
Wobei NV1 bedeutet, dass NVLink zwischen GPU0 und GPU1 aktiv ist.
Stellen Sie sicher, dass sowohl Peer-to-Peer als auch Access als Enabled markiert sind .
Isolierter Zugang: Stellen Sie sicher, dass Ihr VPS nicht überbelegt ist oder gemeinsam mit anderen gehostet wird, wenn Sie vollen GPU-Passthrough verwenden.
Keine gemeinsamen Speicherverluste: NVLink erstellt eine gemeinsame Speicherplatzbeschränkung für den Zugriff auf vertrauenswürdige Umgebungen.
Überprüfen Sie den Zugriff auf /dev/nvidia-Geräte*.
Symptom | Mögliche Ursache | Behebung |
---|---|---|
NVLink wird nicht in nvidia-smi angezeigt | GPUs nicht richtig gebrückt | Schalten Sie den Host aus und installieren Sie die physische NVLink-Brücke neu |
Nur eine GPU sichtbar | Passthrough falsch konfiguriert | VM XML/Geräte-Passthrough-Einstellungen überprüfen |
Peer-to-Peer deaktiviert | Treiber oder BIOS-Einstellungen stimmen nicht überein | Treiber aktualisieren, BIOS auf NVLink-Unterstützung prüfen |
Niedrige Bandbreite | NVLink-Lanes nicht ausgelastet | Verwenden Sie nvidia-smi nvlink –status, um die Lanes zu überprüfen |
NVLink ist ein entscheidender Faktor für GPU-intensive Workloads und bietet bei richtiger Konfiguration immense Leistungsvorteile – sogar in virtuellen Umgebungen. Mit direktem GPU-Passthrough und einer sorgfältigen Einrichtung können Sie die Leistung von Multi-GPU-Verbindungen auf einem VPS nutzen und ihn in einen Hochleistungs-Rechenknoten für anspruchsvolle Anwendungen verwandeln.