It annoys me that there is currently no feasable way to have a windowed virtual machine with high performance graphics capabilites. GPU passthrough is an exiting feature for virtual machines, but having to hookup an extra GPU + monitor to be able to use it is a pain. Using a capture card or streaming could work, but it probably adds unwanted latency.
So I have been searching a bit and found that AMDGPU might support GPU virtualization, but the latest info I found on the topic is this phoronix article from january 2017. Does anybody know more about this?
Wouldnāt it be nice to have a linux computer, running windows in a VM seamlessly within the linux desktop environment? You could have a game running in the windows VM then switch to the host linux OS without having to change monitor inputs or unplug/plug in cables.
An alternative could be a virtual GPU, like in virtualbox, but with better performance and API support. With the low level Vulkan API being supported by modern GPUs, it would certainly be feasable to implement a low-overhead virtual GPU driver. But it would take a lot of hard work to implement this.
So what are your thoughts? Is passthrough-less virtual GPUs the future?
IMO yes, it is already possible to present a VM with a virtual GPU under Hyper-V (RemoteFX) and VM Workstation/Player. The performance is not the same as the host GPU and in Hyper-Vās case (under WIN 10) restricts you to Direct X but you can comfortably play older games. So we are not quite there yet on the desktop, but almostā¦
Whilst this isnāt great for a serious gamer you can share a powerful GPU with plenty of vram amongst multiple VMās and get equal performance from them.
There is also now some software that allows you to create VM in Azure (and other clouds) hosted on a server with Nvidia GPUās and stream a game running on it to your desktop - my understanding is that it works well, but is expensive due to the size of the Azure VM you need to use. Someone from the company that makes the streaming software is a member on these forums.
Itās an interesting concept, and it reminds me of a solution that is decades old! The literal āterminal serverā. Dummy workstations that are connected to a massive āsupercomputerā to process and input tasks.
How cool would that be, in an ideal world? Thin-clients capable of state of the art software engineering, graphic design, 3D modelling (AutoCAD), or remote desktop work. It would revolutionize (and destroy?) things like Citrix. Can you imagine using something like WebStorm or Visual Studio in a Citrix environment? Holy cringe, Batmanā¦
I am excited for the movement to take off. GPU pass through, in an working environment, is amazing. As technology improves it will be fun to watch it all play out.
Isnāt it already a thing in the enterprise world? I thought it was more an issue of market segmentation than technology limitations. That said, now that AMD is putting pressure on both the CPU and GPU markets, that may very well change. Hereās to hoping.
Yep, it totally is, GPU virtualisation is already powerful enough for CAD etc. It works really well even with Window 10, something like a GTX 980Ti and a 1Gbs network. Hyper-V will let you assign up to 2GB of your GPUās RAM to a single VM.
Many enterprises are already using virtual GPUās on VMās hosted in Azure for all sorts of workloads, and as I said you can use them for gaming too, but itās not cheap!
I was unaware of āmanyā enterprises doing this. I know itās available but I was referring to having availability for everyone.
In my experience very few want to spend that kind of money on I.T. infrastructure. Most implement remote desktop services such as Citrix, and hire/outsource a terrible team to maintain and implement the services. For basic tasks, browsing, email, etc., it works fine. Iāve not been fortunate enough to work with a lot of people doing high end remote desktop environments.
No problem, itās a fascinating subject, the company I mostly work for have both Citrix/terminal services for remote workers and virtualised workstations with GPU for specific tasks where needed e.g. CAD and data science.
That is awesome. Iām mad jealous. INSANELY irate at this point. Iāve started a job hunt. The only benefit of my current gig is BYOL (L == Linux ). I have two laptops, one Windows 10 Pro and the other Debian Stretch for most of my work. Our remote services suck, and they sucked at my last gig too.
A while back I worked at an MSP that had RemoteApp service, but the client didnāt want to upgrade their networking hardware so there were constant disconnects and drops.
Have fun learning about this. One of the best tech-writers on this area is Brien Posey, just google his name and RemoteFX or RDP etc. and you should find some good articles on the hows, whyās and gotchaās - Microsoft, Citrix and VMware all have a stake in this market so doing in properly and licencing is not always cheapā¦ I believe Red Hat had been doing work with Nvidia to fully enable this technology under KVM, so you might want to also look into that.
This is definitely the future and is already done for companies that have many people using CAD or other graphically intensive applications, as others have said on this thread. Iām sure this will trickle down to regular consumers at some point, but at that point I think the tech will be used to support thin clients at home instead. As home internet connection speeds improve (the local ISP I work for already offers āaffordableā 300Mb synchronous connections with gigabit available if you want to pay) you will see a push toward cloud instances of your home PC. Login from anywhere, donāt have to worry about backups, and easily upgrade your virtual hardware if you need more power. Obviously most of the members on this forum wouldnāt be interested in such a service, but I could imagine that if the price point was right, people would love it.
I am sure there is someone on this forum who is a Parsec employeeā¦
You will also find this interesting;
So, basically if you have deep pockets and a low-latency/high-bandwidth connection you can already build yourself a virtual machine in a cloud and use that as your main gaming rig.
I get Ā£75 credit with Azure per month, I might try it out - I could probably game for a couple of hours on that
Iām not sure if anyone has a gaming class GPU working via SR-IOV yet - itās either para-virtualised and emulated in software (like hyper-vās RemoteFX) so performance isnāt good enough for the latest games or completely passed-through to a single VM (like the video @wendell made). Managing GPUās under SR-IOV would be cool and the best of both worlds, multiple VMās could use the same GPU whilst bypassing the hyper-visor and giving much better performance.
As far as I understand it Nvidia GRID (as used in that Azure video above) relies on a proprietary Nvidia design where as AMD have a multi-user workstation GPU that uses SR-IOV:
Itās a pity Vega doesnāt have SR-IOV support anymore, Iād have bought one of these cards if this feature were present. But adding a second GPU is (imho) too much of a hassle (itās still cool though )
Sounds cool
Iām an early adopter of Ryzen though and didnāt want the additional IOMMU group burden it hat in its start. I know that theses issues have been fixed - thanks to Level1Techs - but now that my PC is running Iām not to keen on reinstalling everything again. That being said, I own a 7870 as a GPU backup and Iāll probably give it (PCIe passthrough) a try in the not to distant future
Edit: Iām also looking forward to the day when all PC games are released for Linux as well. CDPR promised Witcher 3 for Linux if I can remember correctly, but there is still no penguin-Geralt in sightā¦