Live data from Hacker News

VirGL – A virtual 3D GPU for use inside QEMU virtual machines

docs.mesa3d.org

1–10 of 84 posts

Re: VirGL – A virtual 3D GPU for use inside QEMU virtual machines

#3
post #2

Very interesting; is there anything similar for Vulkan? Does this also work with Vulkan?

It's called Venus: https://docs.mesa3d.org/drivers/venus.html

But not sure how far along it is. virt-manager doesn't seem to be aware of it yet.

Re: VirGL – A virtual 3D GPU for use inside QEMU virtual machines

#4
post #3
post #2

Very interesting; is there anything similar for Vulkan? Does this also work with Vulkan?

It's called Venus: https://docs.mesa3d.org/drivers/venus.html But not sure how far along it is. virt-manager doesn't seem to be aware of it yet.

ChromeOS uses it for Steam support which is generally available now, as well as for Android apps, so it must work reasonably well: https://chromeos.dev/en/posts/improving-vulkan-availability-...

Re: VirGL – A virtual 3D GPU for use inside QEMU virtual machines

#7
post #2

Very interesting; is there anything similar for Vulkan? Does this also work with Vulkan?

Vulkan doesn’t come into play here. Vulkan is a graphics API. This project is hardware GPU virtualization in QEMU / libvirt.

That's incorrect, the goal of VirGL is pass the GL commands themselves (Gallium intermediate representation of them, actually), from the guest to the host, so they are executed on the host accelerated Mesa stack. It is not about virtualising the GPU hardware itself.

So it makes sense to one day do the same for Vulkan, which is much lower level and might be able to extract more performance.

Re: VirGL – A virtual 3D GPU for use inside QEMU virtual machines

#9
post #8

uh, this doesn't look like what those gpu passthrough things like vfio do, is it a different thing? Or I am more interested in, can this do what vfio do, run games in almost native performance in windows guest vm?

> run games in almost native performance in windows guest vm?

No, vfio is still the most recommended option.

This is essentially something like VirtualBox or VMWare 3D acceleration - the host is still the "owner" of the GPU, and has to juggle receiving OpenGL commands from the guest and sending the render results back to it, with lots of overhead. But easier for users than setting up passthrough or using proprietary GPU virtualization solutions.

People pointed out that there is a similar project for Vulkan, already being used in production for ChromeOS, called Venus. Should be the one to watch nowadays.

Post reply on HN