Erfahren Sie, wie Sie Proxmox vGPU für KI, VDI und Rendering konfigurieren, mit schrittweiser Einrichtung, Tests und Leistungseinblicken.
Proxmox Server Solutions hat kürzlich NVIDIA vGPU-Unterstützung für seinen Virtual Environment (VE)-Hypervisor angekündigt. Dies eröffnet eine völlig neue Welt der GPU-Beschleunigung für Rendering, VDI, KI und andere Anwendungen. Wir stellen Ihnen die neuen Funktionen des Hypervisors vor und bewerten seine Leistung.
Was ist das Besondere an der vGPU-Unterstützung?
Falls Sie mit NVIDIAs vGPU-Software nicht vertraut sind: Sie ermöglicht die Partitionierung und Verteilung der Rechen- und Speicherressourcen einer GPU auf mehrere virtuelle Maschinen (VMs). In diesem Setup nutzen die VMs abwechselnd die Rechenleistung der GPU und reservieren einen Teil des Kartenspeichers für ihren Bedarf. Dieser Ansatz ermöglicht es der GPU, die Spitzenauslastung aufrechtzuerhalten, selbst wenn die Arbeitslast der Gast-VMs unterschiedlich intensiv ist.
Bevor wir beginnen… (Voraussetzungen)
Bevor Sie eine GPU-Virtualisierungsumgebung in Proxmox VE (PVE) einrichten können, benötigen Sie einige Dinge. Wie viele andere Rechenzentrums-Tools ist auch NVIDIAs vGPU-Software nicht kostenlos. Sie benötigen Kauf or Melden Sie sich für die Testversion an ihrer Virtual GPU Software und erstellen Sie ein NVIDIA Enterprise-Konto. Als nächstes müssen Sie eine vGPU-kompatible Karte und laden Sie die entsprechenden Treiber von der LizenzierungsportalLaden Sie die aktuellen Versionen der „Linux KVM“-Treiber herunter. Laden Sie mindestens diese herunter:
- vGPU-Software: 18.0
- Host-Treiber: 570.124.03
- Linux-Gasttreiber: 570.124.06
- Windows-Gasttreiber: 572.60
Für dieses Projekt haben wir die NVIDIA L40S und einen Dell PowerEdge R760 genutzt.
Zusätzlich benötigen Sie einen dedizierten Lizenzserver (DLS) oder einen Cloud-Lizenzserver (CLS), um die vGPU-Funktionalität auf Ihren Gästen zu aktivieren. Eine Kurzanleitung finden Sie unter HIER.
Überprüfen Sie anschließend, ob die UEFI-Einstellungen (BIOS) Ihres Servers die richtigen Virtualisierungsfunktionen aktivieren. Suchen Sie nach VT d or amd v, SR-IOV, über 4G-Dekodierung (AKA Größenveränderbare Leiste), Und Interpretation der alternativen Routing-ID (AR) Einstellungen und stellen Sie sicher, dass alle aktiviert sind.
Hinweis: Möglicherweise finden Sie nicht alle dieser Funktionen im UEFI-Menü, da einige dem Benutzer möglicherweise nicht angezeigt werden.
Überprüfen Sie abschließend, ob Sie eine geeignete Version von Proxmox VE verwenden. Für die vGPU-Funktionalität ist mindestens pve-manager Version 8.3.4 mit Kernel 6.18.12-8-pve oder neuer erforderlich. Sie können die Softwareversionen Ihres PVE-Knotens überprüfen, indem Sie auf dem gewünschten Server zur Registerkarte „Zusammenfassung“ navigieren, wie unten gezeigt:
Der Host mit den meisten (Proxmox Host vGPU Setup)
Nachdem nun alles vorbereitet ist, können Sie den Proxmox VE-Server konfigurieren. Klicken Sie in der Weboberfläche Ihres Proxmox VE-Servers links auf den Servernamen und wählen Sie die Registerkarte „Shell“. Geben Sie diesen Befehl in das angezeigte Konsolenfenster ein und drücken Sie anschließend die Eingabetaste:
apt install pve-nvidia-vgpu-helper
Dadurch wird sichergestellt, dass das vGPU-Setup-Tool auf Ihrem Server installiert ist und ihn für die Proxmox vGPU-Unterstützung vorbereitet. Nachdem der Server die Installation des Skripts abgeschlossen hat oder Sie darüber informiert, dass es bereits vorhanden ist, führen Sie einen weiteren Befehl aus, um das Tool auszuführen.
pve-nvidia-vgpu-helper-Setup
Beantworten Sie alle Fragen mit „J“ und fahren Sie fort, bis das Konsolenfenster wieder angezeigt wird und das Skript beendet ist. Führen Sie einen schnellen Neustart des Servers durch, indem Sie zur Registerkarte „Zusammenfassung“ navigieren und auf die Schaltfläche „Neustart“ klicken. Alternativ können Sie den Neustartbefehl in die Konsole der Registerkarte „Shell“ eingeben und die Eingabetaste drücken.
Anschließend muss der NVIDIA vGPU-Hosttreiber auf den Server geladen werden. Nach dem Neustart des Servers verwenden Sie ein SSH- oder SCP-Übertragungstool wie z. B. WinSCP um den Host-Treiber auf den Knoten zu kopieren.
Hinweis: Wenn Sie alle Treiber zusammen als komprimierten Ordner (.zip) heruntergeladen haben, müssen Sie möglicherweise zuerst den Inhalt extrahieren und die Datei „.run“ aus dem Ordner „Host_Drivers“ auswählen.
Platzieren Sie die Datei im Verzeichnis „/home“ des Servers und bereiten Sie die Ausführung des Installationsprogramms mit den folgenden Befehlen vor.
cd /home chown root NVIDIA-Linux-x86_64-570.124.03-vgpu-kvm.run chmod +X NVIDIA-Linux-x86_64-570.124.03-vgpu-kvm.run ./NVIDIA-Linux-x86_64-570.124.03-vgpu-kvm.run --dkms
Hinweis: Ersetzen Sie „NVIDIA-Linux-x86_64-570.124.03-vgpu-kvm.run“ durch den tatsächlichen Namen des heruntergeladenen Treibers. Mit dem Befehl „ls“ können Sie den Dateinamen anzeigen, sobald die Datei im Verzeichnis „/home“ abgelegt wurde.
Nachdem der Treiber auf dem Server installiert wurde, sind wir nur noch wenige Schritte von der Host-Konfiguration unserer Proxmox vGPU entfernt! Bevor wir die GPU als Gerät markieren können, das zwischen virtuellen Maschinen aufgeteilt werden kann, müssen wir die Single Root I/O Virtualization (SR-IOV) aktivieren. NVIDIA definiert diese Funktion als „…eine Technologie, die es einem physischen PCIe-Gerät ermöglicht, sich mehrfach über den PCIe-Bus zu präsentieren. Diese Technologie ermöglicht mehrere virtuelle Instanzen des Geräts mit separaten Ressourcen.“ Da SR-IOV eine wichtige Technologie für die grundlegende vGPU-Funktionalität moderner GPUs ist, aktivieren Sie es mit dem folgenden Befehl beim Booten:
systemctl enable --now [E-Mail geschützt]
Abschließend können wir die GPU-Ressourcen zuordnen, um sie sauber auf die VMs aufzuteilen. Klicken Sie in der Weboberfläche des Proxmox VE-Servers oben links auf „Datacenter“ und scrollen Sie nach unten, um die Registerkarte „Ressourcenzuordnungen“ auszuwählen.
Klicken Sie auf der Seite unter dem Abschnitt „PCI-Geräte“ auf die Schaltfläche „Hinzufügen“ und geben Sie im nächsten Fenster im Feld „Name:“ den Namen ein, der die GPU beschreibt, die Sie zuordnen.
Aktivieren Sie anschließend das Kontrollkästchen „Mit vermittelten Geräten verwenden“ und stellen Sie sicher, dass das Dropdown-Menü „Mapping on Node“ den Server mit der zugeordneten GPU enthält. Scrollen Sie in der Geräteliste nach unten und vergewissern Sie sich, dass alle Geräte-IDs in der Spalte „Hersteller“ den Eintrag „NVIDIA Corporation“ enthalten. Aktivieren Sie in diesem Fall das Kontrollkästchen oben links in der Tabelle, um alle Geräte auszuwählen. Andernfalls wählen Sie nur die Geräte mit dem Hersteller „NVIDIA Corporation“ aus.
Hinweis: Wenn in Ihrem System mehrere GPUs installiert sind, können Sie mit dem Befehl „lspci“ im Reiter „Shell“ auf dem gewünschten Server die zu den einzelnen Karten gehörenden IDs ermitteln.
Wenn Sie das Gerät ausgewählt haben, klicken Sie unten rechts im Popup-Fenster auf die Schaltfläche „Erstellen“, um Ihre Auswahl zu bestätigen. Ihre NVIDIA-GPU kann nun für die Gäste Ihres Proxmox VE-Servers in vGPUs aufgeteilt werden!
Bedienen der Gäste (Zuweisen von vGPUs zu virtuellen Maschinen)
Alles ist bereit, damit wir mit der Zuweisung und Nutzung von vGPUs auf unseren virtuellen Maschinen beginnen können. Erstellen Sie zunächst wie gewohnt eine neue virtuelle Maschine oder verwenden Sie eine vorhandene. Für unsere Demonstration verwenden wir eine virtuelle Maschine mit Windows Server 2025.
Fahren Sie in der Weboberfläche des Proxmox VE-Servers die virtuelle Maschine mit einer beliebigen Methode herunter (NoVNC-Konsole, Energiemenü des Gasts usw.) und klicken Sie auf die Registerkarte „Hardware“ des Gasts.
Wählen Sie im Dropdown-Menü, das nach dem Klicken auf die Schaltfläche „Hinzufügen“ angezeigt wird, ein „PCI-Gerät“ aus.
Wählen Sie im Popup-Fenster „Hinzufügen: PCI-Gerät“ im Feld „Gerät:“ den Namen aus, den Sie der ressourcenzugeordneten GPU zugewiesen haben.
Klicken Sie anschließend auf das Feld „MDev-Typ“ und sehen Sie sich die Liste der angezeigten Optionen für den vermittelten Gerätetyp an. Sie werden feststellen, dass jede Auswahlmöglichkeit mit einer Zahl und einem Buchstaben gekennzeichnet ist. Die Zahl steht für die dem Gast zugewiesene VRAM-Menge (in Gigabyte), während „A“, „B“ und „Q“ den Anwendungsfall der vGPU bezeichnen:
- Q – Virtuelle Workstations mit RTX Enterprise-Treibern (erfordert RTX vWS-Lizenz)
- B – Virtuelle Desktops (erfordert NVIDIA Virtual PC-Lizenz oder RTX vWS-Lizenz)
- A – Anwendungslösungen (erfordert eine NVIDIA Virtual Applications-Lizenz)
Hinweis: Mehr zu den verschiedenen vGPU-Profilen und den dafür benötigten Lizenzen erfahren Sie hier HIER.
Für diese Demonstration haben wir das Profil „NVIDIA L40S-12Q“ verwendet. Wählen Sie den gewünschten Gerätetyp aus, aktivieren Sie abschließend das Kontrollkästchen „PCI-Express“ und klicken Sie auf die blaue Schaltfläche „Hinzufügen“.
Der VM ist nun eine vGPU zugewiesen, wir müssen aber noch den Gasttreiber und ein Lizenztoken installieren, um den Betrieb aufzunehmen. Sie können jetzt die virtuelle Maschine einschalten und sich anmelden.
Nach der Anmeldung übertragen Sie den zuvor erworbenen NVIDIA vGPU-Gasttreiber vom Lizenzierungsportal auf die VM in jeder beliebigen Weise (SMB, SCP, direkter Download usw.). Alternativ können Sie eine virtuelle CD-ROM-Datei (.iso) mit dem Treiber erstellen und in den Speicher Ihres PVE-Servers hochladen, indem Sie eine Software wie ImgBurn um viele vGPU-fähige Gäste gleichzeitig bereitzustellen.
Führen Sie die Treiberinstallationsdatei durch Doppelklicken auf die ausführbare Datei aus und folgen Sie den Anweisungen im angezeigten Installationsmenü.
Extrahieren Sie den Treiber an den Standardspeicherort im Feld „Extraktionspfad:“ und wählen Sie bei der entsprechenden Aufforderung die Installationsoption „Express“.
Sobald die Treiberinstallation abgeschlossen ist, klicken Sie auf die Schaltfläche „SCHLIESSEN“, um das Menü zu verlassen.
Als Nächstes müssen wir die vGPU-Lizenz auf dem Gast aktivieren. Die Aktivierungsmethoden können sich erheblich unterscheiden, je nachdem, ob Sie einen dedizierten Lizenzserver (DLS) oder einen Cloud-Lizenzserver (CLS) wählen und welches Betriebssystem Sie verwenden. Folgen Sie den NVIDIA-Anweisungen. Kurzanleitung zum Lizenzsystem und Benutzerhandbuch zur Client-Lizenzierung für detaillierte Schritte zum Aktivieren von Clients für Ihr spezifisches Setup.
Wir haben einen Cloud-Lizenzserver verwendet und eine Token-Datei erhalten, die wir zur Aktivierung auf den Gastservern platzieren. Verschieben Sie diese Datei auf den Gastserver und kopieren Sie sie in den Ordner „C:\Programme\NVIDIA Corporation\vGPU Licensing\ClientConfigToken“.
Als nächstes ist ein Neustart des Gastes erforderlich, um den Aktivierungsprozess abzuschließen.
Nach Abschluss aller hier beschriebenen Konfigurationsschritte für Host und Gast sollten Sie bereit sein, Programme und Anwendungen auszuführen, die eine GPU benötigen. Vergessen Sie nicht, das Remote Desktop Protocol (RDP) zu aktivieren oder nach dem Neustart Ihre bevorzugte Remote-Desktop-Software auf Ihren Gästen zu installieren, um die GPU-beschleunigte Fernanzeige zu genießen!
Den Motor auf Touren bringen (Proxmox vGPU ausprobieren)
Da wir nun einige virtuelle Server mit virtuellen GPUs haben, können wir sie testen! Jede unserer VMs ist mit 8 Intel Xeon Platinum 8580 vCPUs (4 Hyperthread-Kerne), 32 Gigabyte DDR5 4800 MT/s Registered ECC RAM und dem NVIDIA L40S-12Q (virtuelle Workstation) vGPU-Profil mit 12 Gigabyte VRAM konfiguriert. Die vollständige Hardwarekonfiguration der virtuellen Maschinen finden Sie unten:
Cinebench 2024
Cinebench 4 basiert auf Maxons Modellierungs- und Animationssoftware Cinema 2024D und bietet einen interessanten und objektiven Einblick in die Rendering-Leistung von vGPUs. Vergleichen wir die volle Leistung des L40S im Profil „48Q“ (alle 48 Gigabyte VRAM) mit einer virtuellen Maschine und vier virtuellen Maschinen im Profil „12Q“.
Obwohl es wenig Sinn macht, eine virtuelle Maschine den gesamten L40S zu beanspruchen, ist die Leistung mit 21,147 Punkten im Single-Pass-GPU-Benchmark beeindruckend. Die Aufteilung der GPU auf vier verschiedene Arten zeigt jedoch die Auswirkungen von NVIDIAs Time-Slicing-Ansatz zur gemeinsamen Nutzung der CUDA-Kerne der GPU. Die Einzelergebnisse liegen zwischen 2,514 und 2,567, wenn der Benchmark gleichzeitig auf allen VMs ausgeführt wird.
Wenn der Test auf einer einzelnen virtuellen Maschine mit dem Profil „12Q“ erneut ausgeführt wird und die anderen drei VMs im Leerlauf sind, steigt der Wert wieder auf 15,133. Das entspricht zwar nicht ganz der vollen GPU-Punktzahl, ist aber für eine partitionierte vGPU immer noch respektabel.
Blender-Benchmarks
Fahren wir mit einigen weiteren Rendering-Benchmarks mit Blender fort. Ähnlich wie bei Cinebench 2024 führt die Aufteilung der GPU auf vier Einheiten zu einer deutlich geringeren Gesamtleistung im Vergleich zu einer einzelnen virtuellen Maschine, die dieselbe Arbeitslast im selben Profil ausführt.
Wie der Monster-Benchmark zeigt, kann die individuelle Renderleistung bei nur vier VMs, die sich die Rechenleistung der GPU teilen, nur 8 % der einer einzelnen VM mit demselben Profil betragen. Wir konnten jedoch beobachten, dass eine virtuelle Maschine einen deutlichen Vorsprung gegenüber den anderen herausholte – bis zu 2.4-mal so viel wie die Leistung der schlechtesten Maschine.
Die Junkshop- und Classroom-Benchmarks erzählen ein ähnliches Bild: Bei drei der vier VMs kommt es zu großen Leistungseinbrüchen, und ein einzelner Gast erreicht eine viel höhere Punktzahl als die anderen.
Interessanterweise gibt es kurze Momente, in denen die vGPU einer virtuellen Maschine höhere Priorität erhält und deutlich in Führung geht. Beispielsweise erreichte unsere zweite Windows Server 2025-VM (WIN2025-2) während des Classroom-Benchmarks trotz gleichzeitiger Ausführung mehr als die dreifache Leistung ihrer Kollegen. Obwohl wir nicht genau sagen können, ob dies an der Planung der vGPU-Software oder an der GPU selbst liegt, verdeutlicht es einige Leistungsbesonderheiten, die mit NVIDIAs Time-Slicing-Only-Ansatz bei dieser Karte einhergehen.
Schlussfolgerung
Die Einrichtung und Unterstützung der NVIDIA vGPU-Software ist möglicherweise nicht so ausgefeilt wie bei anderen Konkurrenzplattformen. Dennoch ist sie ein spannendes und wertvolles Feature für Unternehmen und Homelabber, die bereits Proxmox Virtual Environment-Systeme einsetzen. Obwohl die Leistung beim Teilen von GPU-Ressourcen deutlich abnimmt, nutzen viele Unternehmen weiterhin die Vorteile der NVIDIA vGPU-Technologie und haben festgestellt, dass die gemeinsame Nutzung einer GPU diesen Nachteil überwiegt. Diese Einstellung wird von vielen Hyperscalern und Rechenzentren mit begrenztem Platzangebot übernommen, da die Unterbringung möglichst vieler Mandanten (in diesem Fall virtueller Maschinen mit vGPUs) auf kleinstem Raum die effizienteste und rentabelste Option ist.
Die jüngste und schnelle Erweiterung von Funktionen der Proxmox Server Solutions wie Software-Defined Networking, Unterstützung des Linux 6.11-Kernels und ein dediziertes Rechenzentrumsverwaltungssystem zeigt deutliche Fortschritte und beweist, dass es sich im Hypervisor-Bereich zu einer vielversprechenden Wahl entwickelt. Wir hoffen auf weitere Entwicklungen in diesem Bereich und freuen uns darauf, Ihnen bald mehr über spannende Tools und Technologien für PVE zu erzählen!
Beteiligen Sie sich an StorageReview
Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | TikTok | RSS Feed