Linux windowed GPU passthrough

5

I've read that GPU passthrough on linux (ubuntu/mint) is possible with the correct types of hardware. I'm looking for a specific use case of passthrough and I'm wondering whether technology has advanced enough to allow for it to happen.

I have a linux mint host, and wanting a windows 8/10 guest. CPU/motherboard support vt-d (i7-5820k, asus x99-a). gpus are a pair of gtx970s. I want to: 1) Set up the guest so that it runs within a window on the host, thus allowing me to use something like a unity mode 2) Pass 1 of the GPUs through to the guest 3) When I shut down the guest VM, I want the passed through GPU to return to the host so I can use the pair of GPUs for compute/cuda heavy tasks

There are times where I'd like to game (hence the passthrough), but when I'm actually doing work I often need access to the cuda cores on both GPUs. A lot of the old threads I've read about this suggest that 1 card completely disappears from the host, is there a way to bring it back into action without a reboot?

Normally you'd need 2 monitors for this type of thing, plugging each into a separate GPU. But is it possible to use the second GPU to render a windowed VM within the host, instead of to a 2nd monitor?

Regarding windowed mode, I did see this on the virtualbox site, but I'm not sure if the VM is still windowed in this case: https://www.virtualbox.org/manual/ch09.html#pcipassthrough

I've searched for this and have come up short, but having said that, most of the search results are quite a few years old so it doesn't speak to any advancements in technology since then. The only thing I've found is a video on youtube that suggests it might be possible as it looks like a passed through GPU on a VM running in windowed mode: https://www.youtube.com/watch?v=XY1zDgCxARw

Simon

Posted 2015-11-12T19:38:15.467

Reputation: 275

Answers

0

Things I tried to get Windowed GPU Passthrough:

  1. I tried doing this with Microsoft Remote Desktop with Remmina as a client, but it was a bit too slow at videos and games.
  2. I also tried Splashtop, but for some reason when I managed to get it working, the client only showed a jumbled display. I think it may be DirectX-related issues in Wine. I didn't manage to get the AUR build of Splashtop working, it would always say wrong password when I try to login.
  3. I tried Steam in-home sharing, but I found it somewhat clunky as it was not designed to be a true remote desktop, only to run certain games and you need to run Big Picture mode. I used some tricks to use it as a remote desktop but still found it inconvenient.
  4. I tried Nvidia Shield Streaming with the Moonlight client, but from what I remember I just got a black screen.

I could try a hand at writing software to do this but it would require lots of time for one person to investigate and write the code.

Developer

Posted 2015-11-12T19:38:15.467

Reputation: 9