[pve-devel] [PATCH qemu-server/pve-manager v1 0/2] add virtio-vga-gl Vulkan (venus) support

Dominik Csapak d.csapak at proxmox.com
Thu Nov 13 16:13:46 CET 2025


to add some of my high level tests & thoughts:

tried with an NVIDIA card, but could not get it to work. The guest
would start but could not initialize the vulkan driver -> the
virgl-server process on the host crashed. When trying again
afterwards (e.g. with vkcube) the guest also crashed (probably
worth looking into if I have more time?)

Also tried with an AMD RX560, which worked fine.

I tested a vulkan memtest tool[0] (thanks @thomas for finding this)
but the various memory window settings did not make a difference,
it would always result in ~5.4 GB memory transfer speeds.

I also tested the Tomb Raider (2013) benchmark with proton (9.0-5) with
dxvk (directx -> vulkan translation layer) and got

the following results:

virtio-gl hostmem size  avg fps  host rss of the kvm process
512M                    62.6     ~8GiB
8192M                   61.3     ~8GiB

so the hostmem size did not make any difference.

My suggestion would be to reduce the option to a single boolean for now 
(e.g. vulkan=on/off) and use 512M hostmem size by default.
We can still expose some memory setting later too if we need it.

0: https://github.com/GpuZelenograd/memtest_vulkan

On 11/10/25 12:40 PM, Markus Frank wrote:
> This option is represented by an enum in qemu-server and a comboBox in
> pve-manager, with values such as 'venus-512' and 'venus-1024'. This is
> to allow for the potential addition of another Vulkan implementation
> in the future. The number indicates the memory window in MiB for Venus.
> 
> As I am not sure what the hostmem and blob properties actually do, I
> asked on the qemu-discuss mailing list:
> https://mail-archive.com/qemu-discuss@nongnu.org/msg09011.html
> 
> QEMU documentation:
> www.qemu.org/docs/master/system/devices/virtio/virtio-gpu.html#virtio-gpu-virglrenderer
> 
> 
> To get an overview of the performance, see the benchmark below.
> 
> supertuxkart (1.5) benchmark (default settings, vulkan, 1024x768):
> 
> Host result (Granite Ridge integrated GPU):
> * Total frame count: 8488
> * Total profiling time (ms): 38139
> * Steady FPS: 92
> * Mostly stable FPS: 137
> * Typical FPS: 194
> 
> VM (host, 4 core, 8GiB) with venus (hostmem=8192M) result:
> * Total frame count: 3321
> * Total profiling time (ms): 38130
> * Steady FPS: 58
> * Mostly stable FPS: 75
> * Typical FPS: 86
> 
> This benchmark showed no significant differences in performance between
> the various memory window sizes for venus.
> 
> 
> 
> qemu-server:
> 
> Markus Frank (1):
>    virtio-vga-gl: add Vulkan (venus) support
> 
>   src/PVE/QemuServer.pm | 20 +++++++++++++++++++-
>   1 file changed, 19 insertions(+), 1 deletion(-)
> 
> 
> pve-manager:
> 
> Markus Frank (1):
>    ui: qemu: add Vulkan option in DisplayEdit
> 
>   www/manager6/qemu/DisplayEdit.js | 42 +++++++++++++++++++++++++++++++-
>   1 file changed, 41 insertions(+), 1 deletion(-)
> 





More information about the pve-devel mailing list