Planning to switch to VFIO

Hi all,

recently I became interested in VFIO. Right now, like most people I run Windows for my gaming needs and I probably could do everything else under Linux, so I think VFIO would be great.

As a beginner all the information is quite overwhelming, so a quick sanity check before I start spending money would be great.

Currently I run a Ryzen 3900x with a MSI x570 Unify, a RTX 2080 Ti and a WQHD 144hz G-Sync compatible monitor. As a GPU for the Linux host I would probably go with something more budget with max. 1 PCIe power connector, maybe something like a GTX 1660 Super.

What I am most uncertain about is the peripherals situation. I obviously have a keyboard and mouse, as well as a USB DAC from Fiio and the XBOX Controller Wireless Adapter. A KVM switch is probably what I need, but I am not sure what I need and how exactly that will work.

For storage I was thinking about using one NVMe for the Linux host, one for the Windows guest and two sata ssds for the windows guest as well.

So basically what I am asking, will this work how I plan to, do I need anything else hardware wise?

Thanks!

Have you tried installing Linux under hyper-v and using that for your “everyday” tasks? Then you can alt-tab back to Windows for gaming.

Last time we used hyper-v, it didn’t pass through any audio device like how VirtualBox did.

If you are planning on using Looking-Glass, you will want a EDID emulator dummy plug, probably HDMI. Otherwise, you will have to keep the guest GPU plugged into your monitor.

Depends if you want to do anything GPU intensive on the Linux host. I use a Radeon 230 which is powered via the motherboard. Whcih suits me just fine.

For simply switching keyboard and mouse input between the host and guest. Something like this is fine (and cheap).

You can get fancier options with HDMI and Display Ports however these are much more expensive. I use the above and have a script to switch my monitor source, which is triggered via a hotkey. You can also have the monitor source change on boot/shutdown of the VM.

You may want to consider buying a USB 3.0 hub. You can passthrough USB devices on a per device basis. However I have encountered issues with a couple of peripherals. To remedy this I pass through a whole USB controller with a usb hub attached for the guest. This is of course dependant on your IOMMU group separation though.

This is fine. I would recommend passing through the Windows NVMe as a block device. Not only does this offer better performance. It gives you the option of booting Windows “bare metal”.

Hope this helps :slight_smile: