# NVIDIA GPU Passthrough in Pop!_OS (Proxmox VE 8.2.7)

**Date:** June 1st, 2025  
**Category:** Virtualization / GPU Passthrough  
**Backlink:** [Setting Up SSH Access in POP\_OS Proxmox](https://docs.natenetworks.com/books/09-proxmox/page/setting-up-ssh-access-in-pop-os-proxmox-vm)

This enable's GPU Passthrough as I'm going to use this VM for Local AI projects

---

## Step 1: Enable IOMMU in Proxmox

Edit the GRUB configuration:

```bash
nano /etc/default/grub
```

Set this line for AMD CPUs:

```bash
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"
```

Update GRUB and reboot:

```bash
update-grub
reboot
```

---

## Step 2: Bind GPU to `vfio-pci`

Get the NVIDIA GPU and related device IDs:

```bash
lspci -nn | grep -i nvidia
```

Example output:

```
07:00.0 VGA compatible controller [10de:1e84]
07:00.1 Audio device [10de:10f8]
07:00.2 USB controller [10de:1ad8]
07:00.3 Serial bus controller [10de:1ad9]
```

Bind them to `vfio-pci`:

```bash
echo "options vfio-pci ids=10de:1e84,10de:10f8,10de:1ad8,10de:1ad9" > /etc/modprobe.d/vfio.conf
```

Then:

```bash
update-initramfs -u
reboot
```

---

## Step 3: Confirm vfio-pci Binding

Check if vfio-pci is now in use:

```bash
lspci -nnk | grep -A 3 -i nvidia
```

You should see something like:

```
Kernel driver in use: vfio-pci
```

---

## Step 4: Attach GPU to Pop!\_OS VM

In the **Proxmox Web GUI**:

1. Power off the Pop!\_OS VM.
2. Go to `Hardware > Add > PCI Device`.
3. Add only the **VGA compatible controller** (e.g., `07:00.0`).
4. Enable the following checkboxes:
    
    
    - ROM-Bar
    - Primary GPU
    - Optional: You can try passing the other 3 GPU functions (Audio, USB, Serial Bus) if needed.

Start the VM.

---

## Step 5: Verify GPU Access in Pop!\_OS

Inside the VM, run:

```bash
nvidia-smi
```

To check for CUDA:

```bash
nvcc --version
```

(Optional if GUI is installed):

```bash
glxinfo | grep "OpenGL renderer"
```

---

## Completion Notes

- GPU passthrough is functional.
- Host Proxmox system is stable and still accessible via Web GUI.
- Pop!\_OS VM is now accelerated using the RTX 2070 SUPER.
- SSH and firewall (UFW) are set up on the guest.