> This means that one of the major problems with Linux on the desktop for power users goes away, and it also means that we can now deploy Linux only GPU tech such as HIP on any operating system that supports this trick!
If you're brave enough, you can already do that with GPU passthrough. It's possible to detach the entire GPU from the host and transfer it to a guest and then get it back from the guest when the guest shuts down.
This could be way more practically useful than GPU passthrough. GPU passthrough demands at least two GPUs (an integrated one counts), requires at least two monitors (or two video inputs on one monitor), and in my experience has a tendency to do wonky things when the guest shuts off, since the firmware doesn't seem to like soft resets without the power being cycled. It also requires some CPU and PCIe controller settings not always present to run safely.
This could allow a single GPU with a single video output to be used to run games in a Windows VM, without all the hoops that GPU passthrough entails. I'd definitely be excited for it!
It only requires 2 GPUs if you plan on using Linux GUI applications as you game on Windows. Besides, any shared single GPU solution is going to introduce performance overhead and display latency, both of which are undesired for gaming. Great for non-gaming things though - but generally you don't need Windows for those anyways.
From experience not always. If the dedicated GPU gets selected as BIOS GPU then it might be impossible to reset it properly for the redirect. I had this problem with 1070.
I have to say vGPU is amazing feature, and this possibly brings it to "average" user (as average user doing GPU passthrough can be).
Certainly, but this requires both BIOS/UEFI fiddling and it also means you can't use both Windows and Linux at the same time, which is very important for me.
I run gentoo host (with dual monitors) and a third monitor on a separate GPU for windows. I bought a laptop with discrete and onboard GPUs, and discovered that the windows VM now lives in msrdp.exe on the laptop, rather than physically interacted with keyboard and mouse. i still can interact with the VM if there's some game my laptop chokes on, but so far it's not worth the hassle for the extra 10% framerate. It's amusing because my laptop has 120hz display, so "extra 10% FPS" would be nice on the laptop but hey, we're not made of money over here.
Oh, i got sidetracked. I have a kernel command line that invokes IOMMU and "blacklists" the set of PCIE lanes that GPU sits on, the kernel never sees it, even when its in use. The next thing that i had to do was set up a vfio-bind script, that just tells qemu what GPU it's going to use. Thirdly, and this is the unfortunate part, since i forgot exactly what i did - there's some weirdness with windows in qemu with a passthru GPU - you have to registry hack some obscure stuff in to the way windows handles the GPU memory.
If i am not mistaken, 95% of all of my issues were solved by reading the ArchLinux documentation for qemu host/guests. My system is ryzen 3600, 64GB of ram, 2x NVME drives + one M.2 Sata drive, a gtx 1060 and a gtx 1070. Gentoo gets 16GB of ram (unless i need more, i just shut down windows or reset the guest memory) and the 1060. Windows gets ~47GB of ram, and the 1070, a wifi card, and a USB sound card. One of the things you quickly realize with guests on machines like this is that consumer grade motherboards and CPUs are garbage, there aren't enough PCIe lanes to, say, passthrough a bunch of USB or SAS/SATA ports, or a dedicated PCIe soundcard, or firewire. If you have an idea that you'd really like to try this out as an actual "desktop replacement" - especially for replacing multiple desktops, i recommend going to at least a threadripper, as those can expose like 4-6 times as many PCIe lanes to the host OS, meaning the possibility of multiple guests on multiple GPUs, or a single "redundant" guest, with USB ports, SATA ports, and pcie sound/firewire/whatever.
Why would anyone do this? dd if=/dev/sdb of=/mnt/nfs/backups/windows-date.img . Q.E.D.
If you're brave enough, you can already do that with GPU passthrough. It's possible to detach the entire GPU from the host and transfer it to a guest and then get it back from the guest when the guest shuts down.