The state of Easy (and Laptop) GPU passthrough in Linux

I would like this thread to demystify what are (or will be) the easiest ways to have a Linux Host that can do seamless gaming on a Windows Guest Virtual Machine.

  • What kind of hardware is supported / you should watch out for
    – should go w/o saying that you should be able to switch a gpu from host to guest w/o rebooting anything.

  • ^ What kinds of laptops are supported (amd/intel CPUs, amd/nvidia GPUs) (or even specific laptops on the market)
    All modern laptops have the physical screen (and the external video ports) connected to the iGPU (e.g. Intel HD Graphics), while the "dedicated" GPU is a headless 3D accelerator.
    – ^ How does this work with virtualization?
    – Would it be any harder with VR? Can I has 1 screen in Linux, 1 screen in Windows VM, 1 VR Headset in Windows VM?
    – What about the USB PCI GPU Thunderbolt stuff that Wendell was on about some time ago? (what does it take to virtualize that?)

  • Is this kind of virtualization possible: Have 1 GPU that is abstracted to divide its resources among n virtual machines + the host? Nvidia has this SLI thing where 2 or more GPUs are treated by the OS and Graphics APIs as one GPU, so I wouldn’t think the scenario I described is much harder.

  • What general software steps do you need, and how far are we from something equivalent to just installing Virtualbox on Linux and most of this “just works™” out of the box?
    – enable IOMMU and SVM
    – drivers (stub, virtualization, GPU)
    – virtual machine software
    – ???

There are a bunch of specific builds and test cases out there:

But I just want a conceptual big picture explanation of the state of things before I dive into one specific rabbit hole that may not even be the kind of desktop setup/experience I wanted/needed in the first place.

1 Like

This could be a good wiki topic.

Calling all @Eden’s

what happend to the Skylake post?

Here ya go!

That guide is a bit older and best practices may have changed a bit. Just ask if you run into any issues.

I’m curious if there is more information available on the specifics to get a laptop to do GPU pass through that has hybrid graphics (Intel integrated GPU + Radeon HD 8790M card on a Latitude E6540)
Is that possible at all? I could not find any info about it so far.

I’m extremely curious about this topic as well. I have a Lenovo Y700 with a 6th gen Intel i7 and a Nvidia 960M that I have wanted to use with this type of setup. Additionally, I’ll have a 4th gen i7 with a 970M from Cyberpower as well.

Has anyone had any sort of luck with looking glass or any sort of KVM passthrough?