What is VFIO?
I’ve been hearing about VFIO PCs for a little while now and have been intrigued. VFIO (Virtual Function I/O) allows a virtual machine to have full access to a dedicated GPU. This makes gaming in a Windows VM easy and offers great performance. Dual booting an OS is longer necessary!
I have been seeking a new project and I figured a VFIO build would be fun. After going down the rabbit hole I wanted to share my findings and detail my build.
The VFIO Build
CPU – Intel i7-6800K with cooler – This has VT-d/-x and will work fine. More cores are better for virtualization so go with six.
Motherboard – ASUS ROG MAXIMUS VIII – Solid LGA 1151 motherboard, a favorite of a few VFIO builds I researched. Should be easy to configure. Integrated GPU support so the host has a GPU to work with.
RAM – Corsair LPX 32GB – Not messing around here. Again with virtualization, more is better. You should be OK with 16 GB to start, this is always easy to upgrade later.
GPU – MSI Radeon RX 480 – This is the pass-through card that will do the heavy lifting. An AMD card should be easier to configure than nVidia but still may need some tweaking.
HDD – Samsung 850 EVO 500GB – These haven’t let me down yet.
Case – Corsair Obsidian Series Black 450D – I’m partial to Corsair cases, clean and high quality for the price.
PSU – Corsair CX750M 750W – Plenty of juice. Modular.
That should be everything you need for a nice VFIO machine. I’m running Arch and the RX 480 pass through works great. To get it to unbind from amdgpu I needed to blacklist amdgpu and reboot. Arch gets the integrated GPU.
/r/VFIO is your friend for getting this all working.