sGPUpt is designed for desktop VFIO users looking to passthrough their only GPU.
- Automated CPU pinning
- Validates IOMMU groups
- Installs required packages
- Compiles spoofed QEMU & EDK2 OVMF
- Creates hooks for single GPU passthrough
- Creates a VM based on your system specs with additional features and optimizations
❗ Please check below to ensure compatibility with your hardware and distribution. ❗
| Distro | Status |
|---|---|
| Arch Linux | ✔️ |
| Manjaro | ✔️ |
| Garuda | ✔️ |
| EndeavourOS | ✔️ |
| Fedora (36,37) | ✔️ |
| Nobara (37) | ✔️ |
| AlmaLinux (9.1) | ✔️ |
| Debian (any) | ❌ |
| Ubuntu (22.04+) | ✔️ |
| Kubuntu (22.04+) | ✔️ |
| Pop!_OS (22.04) | ✔️ |
| Linux Mint (21.1) | ✔️ |
| CPU + GPU | Status | Additional Information |
|---|---|---|
| AMD + Nvidia | ✔️ | - |
| AMD + AMD | ✔️ | XT models require vendor-reset |
| AMD + Intel | ❌ | - |
| Intel + Nvidia | ✔️ | - |
| Intel + AMD | ✔️ | XT models require vendor-reset |
| Intel + Intel | ❌ | - |
- Enable AMD-V/VT-x in your BIOS
- Disable CSM in your BIOS
- Disable ReBAR in your BIOS.
if you have an Intel CPU then add these parameters to grub:
intel_iommu=on iommu=pt
If you use an Arch-based distro you may need to load the VFIO modules early
curl -O https://raw.githubusercontent.com/lexi-src/sGPUpt/master/sGPUpt.sh
chmod +x sGPUpt.sh
sudo ./sGPUpt.sh
Known reasons this can occur:
- The hooks are failing because a program is still using the GPU.
- If you have an older card that doesn't have UEFI support you'll need a VBIOS.
Your GPU is grouped with other devices which means you're unable to pass it unless you use a kernel with the ACS patch.
- ACS for Debian - Install XanMod kernel then add pcie_acs_override=downstream,multifunction to grub.
- ACS for Arch - sudo pacman -S linux-zen then add pcie_acs_override=downstream,multifunction to grub.