You needn’t pick sides when it comes to Linux and Windows anymore. If you want to work on Linux and game on Windows then you have options available to you in 2021. That list just got a little bit bigger as Nvidia now makes it possible to hand your Linux system’s Windows VM a whole card’s worth of GeForce graphical grunt.
Nvidia has now enabled GPU passthrough support (in beta) for Windows virtual machines on GeForce graphics cards. This effectively means it’s possible to run a Linux machine and then run a virtual Windows machine within it, and hand that unfettered access to a graphics card.
Specifically a GeForce graphics card, too, and not one of Nvidia’s more pricey enterprise grade GPUs. That’s a big step for Nvidia, as it had previously kept most virtualisation functions out of the hands of owners of gaming cards, offering them up instead with its Quadro, Tesla, and other enterprise cards.
Nvidia’s touting it as a win for gamers that wish to primarily use Linux without losing access to their games, or game developers looking to test across both platforms on a single system.
There is one catch, however, and one that’s slightly exacerbated by today’s GPU shortage: You’ll need two GPUs, one for the Linux machine and one for the Windows VM, if you intend to make the most of this feature. That’s still likely preferable to a pricey Quadro card, although the enterprise-grade GPU will open the door to further VMs and virtualisation features.
I see no reason why the two cards couldn’t be different, however, as they are functioning independently of each other. So perhaps this would be useful if you’ve recently upgraded and have an old card with nowhere to go. There’s also the possibility of using an integrated GPU on your CPU for the host machine, but be prepared to work through any further complexity you add to your system, in order to get it up-and-running.
AMD also offers compatibility for passthrough on its gaming graphics cards. So if you’re team red, you have options too.
The most popular alternative to a VM for playing Windows games on your Linux machine today is Proton, which is a facet of Steam Play. It’s effectively a compatibility layer integrated into the Steam launcher that allows you to play games as if you were on a Windows machine right from your Linux build. It’s built off a modified version of the Wine compatibility layer.
So if your intention is to simply play Windows games on your PC, you may find Steam Play gets the job done for you. But if you’ve got more reason to get right into a VM, you might want to take a look at Nvidia’s latest drivers (R465 or higher), which offer the new GPU passthrough feature in beta.