Installation und Einrichtung Tesla T4 unter Proxmox 8.4.13

tg6300

New Member
Sep 26, 2025
9
0
1
Hallo zusammen,
wir haben uns eine Testumgebung mit drei HPE ProLiant Gen 10 mit der oben genannten Proxmox-Version aufgebaut,
um zu Testen, wie performant CAD (AutoCAD) und GIS-Anwendungen auf dieser Plattform laufen.

Jetzt haben wir in jede der Nodes eine Tesla T4 eingebaut und diese soll per Passthrough an die VMs durchgereicht werden.

Leider haben wir bisher keine vollständige Anleitung zur Einrichtung der Karten gefunden und nur die ersten Schritte durchgeführt:

1. Anpassen der /etc/default/grub

2. Identifizieren der GPU

3. Anlegen der VFIO-Konfig

Und an der Stelle müsste wahrscheinlich noch ein Treiber installiert werden? Aber welcher?

Könnt ihr uns hier die fehlenden Schritte und eventuell einen passenden Treiber nennen.

Vielen Dank im Voraus.

Gruß tg6300
 
Last edited:
Und an der Stelle müsste wahrscheinlich noch ein Treiber installiert werden? Aber welcher?
Bei passthrough in eine VM "verschwindet" das Gerät auf dem Host und taucht in der VM wieder auf. Dementsprechend braucht ihr den Treiber ausschließlich innerhalb der VM.
Wenn also Windows, dann dort so in der VM verfahren wie man sonst normal eine Karte unter Windows einrichten würde mit entsprechendem Treiber von nvidia.com
 
Hallo mr44er,
ich habe von der nvidia.com den Nvidia Grafikkartentreiber Version 581.15 runtergeladen und versucht auf der VM (Win10) zu installieren.
Leider bekomme ich da diese Meldung:

nvidia-error.png

Im Gerätemanager finde ich unter "Grafikkarten" auch nur "Microsoft Basic Display Adapter" und " Microsoft Remote Display Adapter"
Müsste die Tesla nicht hier wenigstens zu sehen sein?

Mfg
 
Ich habe sie jetzt nach dem genannten Link eingerichtet, aber sie wird orange angezeigt und die Option "PCI-Express (Q 35 only)" kann ich nicht aktivieren. In der VM kann ich sie jetzt auch sehen, muss nur noch den Treiber aktualisieren.
 
Den machine-type stellt man da auch ein, aber ich weiß nicht, ob das nachträglich änderbar ist oder in deinem Fall überhaupt nötig. Also von Proxmox-Seite sicherlich, aber wie das Windows dann darauf reagiert, weiß ich nicht.
Im Zweifel neue VM erstellen, Einstellungen vorher setzen und dann nochmal gschwind Windows neu installieren.

Bildschirmfoto zu 2025-09-29 13-14-44.png
 
Bei mir steht folgendes drin: "pc-q35-9.2+pve1". Der Eintrag "q35" passt ja soweit, aber die Version werde ich in der Maske leider nicht los.

Beim PCI-Device habe ich diesen Eintrag ergänzt,

Code:
PCI Device (hostpci0)       0000:01:00,pcie=1,x-vga=1

aber leider startet die VM damit nicht mehr und bringt diesen Fehler:

Code:
error writing '1' to '/sys/bus/pci/devices/0000:01:00.0/reset': Inappropriate ioctl for device
failed to reset PCI device '0000:01:00.0', but trying to continue as not all devices need a reset
/dev/rbd0
swtpm_setup: Not overwriting existing state file.
kvm: -device vfio-pci,host=0000:01:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on: vfio 0000:01:00.0: failed to setup container for group 43: Failed to set group container: Invalid argument
stopping swtpm instance (pid 3313417) due to QEMU startup error
TASK ERROR: start failed: QEMU exited with code 1

Damit die Maschine startet, habe ich den Eintrag erstmal entfernen müssen.
Da steht etwas von einem fehlenden Container.... Könnt ihr etwas damit anfangen??

Danke für eure Unterstützung.
 
Bei mir steht folgendes drin: "pc-q35-9.2+pve1". Der Eintrag "q35" passt ja soweit, aber die Version werde ich in der Maske leider nicht los.
Das passt beides so, q35 und dann die neueste Version.

error writing '1' to '/sys/bus/pci/devices/0000:01:00.0/reset': Inappropriate ioctl for device<br>
Die 0000:1:00 ist bei mir richtig, muss bei dir aber nicht sein oder ist sie das tatsächlich so, wenn du da pulldown-menü aufrufst?
 
Die 0000:1:00 ist bei mir richtig, muss bei dir aber nicht sein oder ist sie das tatsächlich so, wenn du da pulldown-menü aufrufst?
Ok, das ist also die Position, oder der belegte Steckplatz der Karte auf dem Mainboard, richtig?
 
Hab es gefunden. Es ist die 0000:37:00 . Aber warum ist der Eintrag jetzt in oranger Schrift. Auch nach einem Neustart des Rechners änderte sich da nichts?
 
Ok, das ist also die Position, oder der belegte Steckplatz der Karte auf dem Mainboard, richtig?
Ja.
Hab es gefunden. Es ist die 0000:37:00
Ja, möglich. Mit lspci bekommst du das auch angezeigt.

Aber warum ist der Eintrag jetzt in oranger Schrift. Auch nach einem Neustart des Rechners änderte sich da nichts?
Orange heißt: "pending", also kann nicht im laufenden Betrieb durchgeführt werden. Mach die VM aus, lösche den Eintrag, füge ihn neu hinzu. Wenn alles passt, VM anwerfen.
 
Das hat soweit funktioniert und ich sehe jetzt auch die Tesla Karte in der VM. Aber ist das normal, dass ich in der Konsole die Meldung bekomme:

Code:
Failed to connect to server

Per Remote-Desktop komme ich ohne Probleme auf die VM.

Weiterhin ist mir aufgefallen, dass ich pro Hostserver nur eine VM mit Zugriff auf die GPU starten kann. Versuche ich eine zweite VM zu starten, bekomme ich diese Fehler:

Code:
WARN: iothread is only valid with virtio disk or virtio-scsi-single controller, ignoring
TASK ERROR: PCI device '0000:37:00.0' already in use by VMID '103'

Ich ging davon aus, dass mehrere VM's die eingebaute GPU nutzen können. Muss ich hier noch etwas anders konfigurieren?
Das ist die aktuelle Konfig der VM:

config-vm.png
 
Das hat soweit funktioniert und ich sehe jetzt auch die Tesla Karte in der VM. Aber ist das normal, dass ich in der Konsole die Meldung bekomme:

Code:
Failed to connect to server

Per Remote-Desktop komme ich ohne Probleme auf die VM.

Weiterhin ist mir aufgefallen, dass ich pro Hostserver nur eine VM mit Zugriff auf die GPU starten kann. Versuche ich eine zweite VM zu starten, bekomme ich diese Fehler:

Code:
WARN: iothread is only valid with virtio disk or virtio-scsi-single controller, ignoring
TASK ERROR: PCI device '0000:37:00.0' already in use by VMID '103'

Ich ging davon aus, dass mehrere VM's die eingebaute GPU nutzen können. Muss ich hier noch etwas anders konfigurieren?
Das ist die aktuelle Konfig der VM:

View attachment 91202
Zuerst muss die VM q35 und nicht i440fx nutzen.
Eventuell würde ich auch nicht den CPU Typ x86-64-v2 nutzen.

Wenn du die neuere virtuelle Hardware nutzt (q35) erkennt das OS in der Regel auch neue Netzwerkkarte und so, falls du statische IPs nutzt.
 
Den "Machine-Typ" habe ich jetzt umgestellt auf:

"pc-q35-9.2+pve1,viommu=virtio"

Der Prozessor ist ein "Intel(R) Xeon(R) Gold 6146 CPU @ 3.20GHz" und hier habe ich den Typ "Skylake-Server" ausgewählt.

Die VM startet damit, aber der Fehler an der Console bleibt (Failed connect to server). Woran kann es hier noch liegen?
 
Wenn Du die GPU durchreichst, geht das nicht mehr via NoVNC.
s. https://pve.proxmox.com/wiki/PCI(e)_Passthrough

GPU Passthrough Notes​

It is not possible to display the frame buffer of the GPU via NoVNC or SPICE onthe Proxmox VE web interface.
When passing through a whole GPU or a vGPU and graphic output is wanted, onehas to either physically connect a monitor to the card, or configure a remotedesktop software (for example, VNC or RDP) inside the guest.
If you want to use the GPU as a hardware accelerator, for example, forprograms using OpenCL or CUDA, this is not required.
 
Ok, also dass die Console die VM nicht mehr anzeigt, damit kann ich leben, aber dass ich die GPU nur mit einer VM auf dem Host nutzen kann, bringt mich hier nicht weiter. Unser Ziel ist, mehrere VM's mit GPU-Unterstützung auf einem Host zu nutzen. Gibt es dafür ein anderes Szenario?
 
Hallo @tg6300,

@fba hat dich hier auf den richtigen Weg gebracht.

Für dein Ziel, die GPU in mehreren VMs gleichzeitig zu nutzen, ist PCI-Passthrough nicht die richtige Methode. Passthrough gibt die gesamte Karte exklusiv an eine VM ab, weshalb du die Fehlermeldung "already in use" bekommst.

Was du dafür brauchst, ist die Virtualisierung der GPU. Bei der Tesla T4 läuft das über Nvidias vGPU-Technologie (mittels SR-IOV). Der Link von fba zur Proxmox-Wiki-Seite für NVIDIA vGPU ist dafür genau der richtige Startpunkt.

Wichtiger Hinweis: Für den Betrieb von vGPU mit der Tesla T4 benötigst du spezielle Treiber und vor allem eine gültige NVIDIA vGPU Lizenz (z.B. NVIDIA AI Enterprise). Ohne einen Lizenzserver wird das nicht dauerhaft funktionieren.

Die grundlegenden Schritte sind also: Den vGPU-Host-Treiber von NVIDIA auf Proxmox installieren, vGPU-Profile (sogenannte mdev-Geräte) erstellen und diese dann den einzelnen VMs zuweisen.
 
  • Like
Reactions: Johannes S