A group of enthusiasts has unlocked vGPU (GPU virtualization) capability, which is only supported on select datacenter and professional boards, on standard consumer Nvidia GeForce gaming graphics cards. Since the vGPU capability is supported by the silicon but locked out by software, it was only a matter of time and effort before enthusiasts unlocked the feature. As it turns out, according to a Reddit post, that time has come, potentially saving some users the thousands of dollars they would otherwise have to shell out for a Quadro or Tesla GPU that supports the feature.
GPU virtualization, which allows more than one user to use a GPU simultaneously, is one of the differentiators between GPUs for data centers and those designed for consumer PCs. Nowadays, many workstations and even high-end desktops are located remotely so the users can share the GPUs. Modern hardware is so powerful that its performance is sometimes excessive for one user, so sharing one graphics card between multiple users makes sense.
From a GPU hardware perspective, virtualization is just another feature, so the silicon supports it. But this capability requires a lot of software to work properly (i.e., how companies that buy workstations expect it to) and validation with ISVs since virtualized GPUs are in many cases used for professional applications.
All of these things cost money, so vGPU support comes at a price, and Nvidia has a handful of expensive Tesla, Quadro, and some other GPUs it recommends for virtualization (partly because it does not make a lot of sense to validate a broad fleet of hardware with ISVs). Nvidia’s vGPU software does not support most client GPUs.
The code for the unlocker is available at Github, and the principle behind it is fairly simple: it replaces the device id of a graphics card with a device id of an officially supported GPU that has the same feature set. For now, GP102, GP104, TU102, TU104, and GA102 GPUs are supported, and the capability works on Linux and with KVM virtual machine software.
While the new unlocking technique deserves some attention, the big question is whether your typical consumer actually needs GPU virtualization. Linux users can virtualize their high-end graphics cards and use them for gaming, video encoding, and cryptocurrency mining simultaneously on different virtual machines.
Some of those who happen to have servers with hundreds or thousands of consumer Nvidia GPUs could try to offer commercial remote desktop services to earn money, but the quality of such services would be something to worry about. Since the hack does not work with Windows and Vmware, it is useless for most users.