A group of enthusiasts has unlocked the vGPU (GPU virtualization) capability on NVIDIA GeForce gaming GPUs. vGPU is supported by the GPUs but locked out by software, which means it was just a matter of time before enthusiasts unlocked the feature.
vGPU is one of the differentiators between GPUs for data centers and consumer PCs. The capability requires software support for it to work properly in addition to validation with independent software vendors since vGPUs are mostly used for professional applications.
All this means is that vGPU support comes at a price and NVIDIA has a handful of expensive Tesla, Quadra, and other GPUs it recommends for virtualization. NVIDIA’s vGPU software doesn’t support most client GPUs but it did recently open up GPU passthrough via a driver update. However, it only allows a single virtual machine (VM) to access the GPU compared to the full vGPU support where multiple VMs can share the same GPU.
The code for the vGPU unlocker is available at Github. It basically replaces the device id of a GPU with a device id of a GPU with the vGPU support with the same feature set. Currently, GP102, GP104, TU102, TU104, GA102 GPUs are supported and works on Linux and with the KVM virtual machine software.
Take note that it only works on Linus with KVM and doesn’t work with Windows and Vmware, which makes it useless for most users but it is pretty handy to know.