Skip to content

GPU Passthrough Setup Guide

Debian 13 · VFIO · KubeVirt · RTX 2080


Overview

This guide walks through configuring an NVIDIA RTX 2080 GPU for VFIO passthrough on Debian 13, enabling GPU-accelerated virtual machines in KubeVirt environments. While written specifically for Debian 13, these instructions should work on other distributions with minor modifications.

What we're doing

  1. Uninstalling NVIDIA drivers to expose the raw GPU hardware
  2. Binding the GPU to VFIO drivers instead of native graphics drivers
  3. Configuring the system to maintain VFIO bindings across reboots
  4. Integrating with Juno's GPU operator for KubeVirt passthrough

Prerequisites

  • Both KubeVirt and NVIDIA GPU Operator require VFIO drivers to pass devices to guest VMs
  • The GPU must not be in use by the host OS (no native drivers loaded)
  • IOMMU support must be enabled in BIOS and kernel

Info

If you're using the GPU directly on the host through the NVIDIA GPU Operator (without passthrough), the setup process is simpler and doesn't require VFIO configuration.


GPU Device Reference

The RTX 2080 (TU104 architecture) presents as four separate PCI functions. All functions must be bound to VFIO for passthrough to work.

PCI Address Function Device ID Purpose
0000:08:00.0 VGA / GPU Core 10de:1e82 Primary graphics processor
0000:08:00.1 HD Audio 10de:10f8 HDMI/DisplayPort audio
0000:08:00.2 USB Controller 10de:1ad8 USB 3.1 host controller
0000:08:00.3 USB-C / UCM-UCSI 10de:1ad9 USB Type-C controller

Note

Enterprise GPU Note: Not all NVIDIA enterprise cards include audio and USB controllers. Consumer cards like the RTX 2080 typically have all four functions.