# SOP: AMD Radeon AI Pro R9700 GPU Passthrough on Proxmox VE **Repository:** `pch/Proxmox_GPU_Passthrough` **Target:** A Proxmox VE compute node dedicated to AI/ML GPU passthrough **GPU:** AMD Radeon AI Pro R9700 32GB (`1002:7551`) **GPU Audio Function:** AMD Navi 48 HDMI/DP Audio Controller (`1002:ab40`) **Date:** 2026-08-26 **Goal:** Isolate the R9700 from the Proxmox VE host and bind it to `vfio-pci` so it can be passed through to a VM for AI/ML workloads. --- ## 1. Discover the GPU on the node Log in to the Proxmox node via SSH and identify the GPU and its audio function. ```bash ssh root@ lspci -nn | grep -i 'AMD' ``` Expected output (excerpt — values will vary by system): ```text :00.0 PCI bridge [0604]: AMD/ATI Navi 10 XL Upstream Port of PCI Express Switch [1002:1478] :00.0 PCI bridge [0604]: AMD/ATI Navi 10 XL Downstream Port of PCI Express Switch [1002:1479] :00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 48 [Radeon AI PRO R9700] [1002:7551] (rev c0) :00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 48 HDMI/DP Audio Controller [1002:ab40] ``` Where `` is the PCI domain/bus/slot address assigned by the host (e.g. `84:00`). Key facts: - GPU core vendor/device ID: `1002:7551`. - GPU audio vendor/device ID: `1002:ab40`. - Link speed should be Gen5 x16 (`Speed 32GT/s, Width x16`). --- ## 2. Verify prerequisites ### 2.1 IOMMU is enabled ```bash dmesg | grep -iE 'AMD-Vi|IOMMU' ``` Expected output: ```text AMD-Vi: Extended features (...): PPR X2APIC NX GT IA GA PC GA_vAPIC AMD-Vi: Interrupt remapping enabled AMD-Vi: X2APIC enabled AMD-Vi: Virtual APIC enabled ``` ### 2.2 CPU virtualization extensions are present ```bash grep -iE 'svm|npt|avic' /proc/cpuinfo | head -2 ``` Expected flags include `svm`, `npt`, `avic`. ### 2.3 IOMMU grouping is clean ```bash for g in /sys/kernel/iommu_groups/*; do for d in $g/devices/*; do echo "$(basename $g): $(basename $d) $(lspci -nns $(basename $d))" done done | grep -iE '1002:7551|1002:ab40' ``` Expected output (group numbers and addresses will vary): ```text : 0000::00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 48 [Radeon AI PRO R9700] [1002:7551] (rev c0)