The recent development of VirGL as a graphics backend in Proxmox 7.4 means that with certain video cards, it’s possible to share a GPU between the host and a Linux VM. Unfortunately there’s currently no Windows support as a driver needs to be written, plus modifications for the host software. When that becomes available, GPU passthrough will be a thing of the past.
In this short guide, we assume several things:
- Proxmox 7.4
- Opt-In Kernel 5.19+ (here)
- Any previous passthrough configuration needs to be undone. This will interfere with the host’s GPU configuration, which is required.
- An AMD GPU recent enough to use the “amdgpu” driver. Reports of nVidia and Intel cards seem to indicate that this isn’t working yet.
- Any Linux VM containing an reasonably recent kernel. Virgl has been compatible since the 4.x series and most distributions should be using 5.15+.
On the Proxmox Host:
# apt update && apt upgrade -y
# apt install libgl1 libegl1
Next select “virgl” as your display under the Hardware tab in the Proxmox web UI.
Boot.
Win.
For more cool things you can do with sharing a GPU from the Proxmox host instead of tying it strictly to a single virtual machine, see “Fast KDE Plasma Linux Desktop inside LXC with Proxmox”.
References:
https://pve.proxmox.com/pve-docs/chapter-qm.html#qm_display
https://forum.proxmox.com/threads/virglrenderer-for-3d-support.61801/page-3#post-466767