[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