# 🖥️ GPU Passthrough auf Proxmox (VFIO)

Diese Anleitung zeigt, wie du eine GPU per VFIO an eine VM in Proxmox VE durchreichst.

⚠️ Hinweis: Stelle sicher, dass IOMMU im BIOS/UEFI aktiviert ist (Intel VT-d / AMD-Vi).


# 1) GRUB anpassen (IOMMU aktivieren)

Datei bearbeiten:

sudo nano /etc/default/grub

Die Zeile GRUB_CMDLINE_LINUX_DEFAULT="quiet" ersetzen durch:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"

Grub aktualisieren:

sudo update-grub

# 2) VFIO-Module laden

Datei öffnen:

sudo nano /etc/modules

Folgende Zeilen hinzufügen:

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

# 3) IOMMU Interrupt-Remapping & KVM-Optionen

echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" | sudo tee /etc/modprobe.d/iommu_unsafe_interrupts.conf
echo "options kvm ignore_msrs=1" | sudo tee /etc/modprobe.d/kvm.conf

# 4) Treiber blacklisten (Host soll GPU nicht binden)

echo "blacklist radeon"  | sudo tee -a /etc/modprobe.d/blacklist.conf
echo "blacklist nouveau" | sudo tee -a /etc/modprobe.d/blacklist.conf
echo "blacklist nvidia"  | sudo tee -a /etc/modprobe.d/blacklist.conf

# 5) Geräte-IDs ermitteln und an VFIO binden

Gesamte PCI-Liste anzeigen:

lspci -v

# a) Slot der GPU notieren (z. B. 01:00.0 und ggf. 01:00.1 für Audio).

Detailansicht mit IDs:

lspci -n -s 01:00

Beispielausgabe (NVIDIA):

01:00.0 0300: 10de:1b81
01:00.1 0403: 10de:10f0

# b) IDs in VFIO-Config eintragen

Ersetze die IDs in der folgenden Zeile passend zu deiner Karte:

echo "options vfio-pci ids=10de:1b81,10de:10f0 disable_vga=1" | sudo tee /etc/modprobe.d/vfio.conf

# 6) Initramfs aktualisieren & neu starten

sudo update-initramfs -u
sudo reboot

# 7) Nach dem Neustart prüfen

lspci -k -s 01:00

Die GPU sollte nun mit vfio-pci gebunden sein.


# 8) VM-Konfiguration (Kurz)

  • In der VM „Hardware → PCI-Gerät hinzufügen“, den GPU‑Slot (und Audio‑Funktion) auswählen
  • „Alle Funktionen“ anhaken (falls verfügbar)
  • „Primäre GPU“ nur setzen, wenn die VM eine eigene Ausgabe braucht
  • Für Windows‑Gäste: q35‑Maschine, UEFI (OVMF), und VirtIO‑Treiber bereitstellen

# Tipps

  • Falls Gerätegruppen (IOMMU Groups) nicht sauber getrennt sind, kann ggf. ACS override notwendig sein.
  • Für NVIDIA Consumer‑GPUs unter Windows ggf. Hyper-V Enlightenments deaktivieren (in VM‑Config args:) oder Workarounds nutzen.