Linux GPU Virtualization Questions

Hey guys!

So been a while since I was last on here, but have questions. Questions that need answering.

Regardless, to give some very fast basic context, I am on windows and ready to swap to Linux, using a VM with windows and GPU pass-through of my 770 to it for gaming. My CPU is the i7 4770k which has an iGPU. My monitor config is a triple portrait (1080p) in NV surround (all into the 770) and an auxiliary 720p monitor off to the side into the iGPU (Has single VGA and DVI).

Okay into the meat. So my first question is if its even possible and a basic explanation on how it works. I've had a look around but I cant seem to find anything clear. I am assuming it just runs in a normal window with the device? Yet I see alot of people saying it needs a dedicated monitor, or is that just optional?
Another point of notice is that I only have the iGPU and the 770, will they work or will I need another GPU? I only have two x4 PCI slots left. Also can I have monitors plugged into the GPU if it is passed through, and if so, can I still run say for example, Linux on all my monitors like usual, but a little windows VM window also using it? Or does it have to be dedicated? Also last questions is what is the deal with keyboard and mouse input? Does it just work like a normal VM such as virtual box where I can click in, or do I need it dedicated?

Sorry for that mess of an inquiry, thanks in advance for all the help!
Have a good day!

1 Like

You will need to have a dedicated monitor for the Windows guest/client (Virtual Machine). This is because the GPU itself will be 99.99999% handed off to the Windows Virtual Machine(VM). So there is no way to seeing what is on the VM display, other than using the VM Virtual CPU to encode the video and send it through the 'router' and back to you.

Personally, I have never found hitting the button on the monitor, to enable a seamless windows experience, to be that big of a deal.

There is an alternative which I eluded to earlier. That is to use Steam in-home streaming to send the monitor stream back to the main machine via the 'router'. This works very well, and in my experience has few drawbacks on a system with more than 4 cores. However, it is not a good option if you are wanting to play a windows first person shooter where latency can be important. You can also setup a program like VLC to do the streaming for you, however, this may be a bit less efficient. Depending on whether or not shadowplay works because quicksync relies on the iGPU running in Linux.

Another thing to note is that you will need more mice and keyboards to do this virtual machine route. This is, again, because the hardware a VM uses is 99.99999% passed through to the VM, and no longer 'exists' in Linux.

I hope this didnt scare you away. It really is a flawless experience, once you have it setup and working. I use the Steam method for all my strategy games that dont work on linux, and I use the full passthrough method for CSGO, because I cant live with any framerate less than 240fps.

1 Like

Hmm so as I understand it, literally everything that windows needs, has to have its own dedicated device? GPU (770?), Monitor, Keyboard and mouse, etc etc? Also so If the monitor is dedicated, there is no way to use it for linux aside from just plugging it into another GPU of some sort? Or is the GPU able to be used once the VM is closed down?

My main uses for it, is to run Linux on all 4 monitors, and load windows onto the main monitor when I want to game or use any windows applications. Does the pass through VM work much like a normal one such as in Virtual Box, or is it different in the fact that I cannot close it down after and use the monitor like normal, or must I keep swapping it in and out physically? Additionally, If I have say a monitor or two plugged into the iGPU and the other two in the GPU without the VM opened up, can I still use them in Linux?

Sorry for all the questions, you've been a great help, thanks :slight_smile:

You would need a new cpu, the I7 4770k doesn't support VT-d. I ran into the same issue, and swapped to x99 platform.

It doesn't? I can run VMs in virtual box and the like? Unless I'm missing something here. Which im sure I have.

You are referring to VT-x you need that to run vms, but you need VT-d to pass the pcie lanes to the vm.
The none K version has it in this gen, but not the K. :confused:

Ohh shit thats annoying. thanks for pointing that out man.

Yah it's a bummer, you could update the bios and swap to i7- 4790k that cpu supports it.

Yeah hmm any other ways or should I A: Wine-ify it, or B: Just stick to windows? Or C: Upgrade of course, but im not made of money :stuck_out_tongue:

You could always dual boot, the only difference if you need to reboot to use the other OS.

Ah yes that escaped my mind but hmm seems like the best option IMO, and me being in Australia cant use Amazon and I cant find any aussie places even selling 1150 CPUs. :frowning: I love Australia sometimes.

Jeez you guys have it rough. No ebay either?
Gl though :slight_smile:

We have Ebay, but no idea if buying a CPU used is a good idea or not. But will investigate. Regardless, yeah thanks a tonne for your help man, would have been frustrating if I realized that half way :stuck_out_tongue:

2 Likes

You can think of a Hypervisor (VM) as a CPU splitter... You still need all the bits to attach to it once you've split it. Or you can find a work around, like Steam in-home streaming, or you can use the built-in feature for screen sharing in windows called RDP. Probably not the best choice for gaming, but RDP would be more than good enough for stuff like Microsoft office, or whatevs.

Yeah that makes sense thanks a bunch!

Qemu will work once virgl3d has a compatible windows driver out. I believe it's supposed to allow both systems to share the gpu without compromising much.

2 Likes

Will I too need a separate monitor and other peripherals to run Windows as a VM on an R7 1700?

Dude, if that's true, amazing. Can't wait. :smiley:

https://virgil3d.github.io

I just have to figure out if I can set the virtual OS up as both virtual and dual boot capable.

As I understand it, yes, but I'm the one asking it, so best if someone can confirm :stuck_out_tongue:

1 Like