Firma Collabora zaprezentowała sterownik Venus, oferujący wirtualny GPU (VirtIO-GPU), opracowany na bazie API graficznego Vulkan. Venus przypomina wcześniej dostępny sterownik VirGL, zrealizowany na podstawie API OpenGL, i również pozwala na udostępnienie każdemu systemowi gościa wirtualnego GPU do renderowania 3D, bez otwierania wyłącznego dostępu do fizycznego GPU. Kod Venus został już włączony do pakietu Mesa i jest dostarczany od wydania 21.1.
Sterownik Venus definiuje protokół Virtio-GPU do serializacji poleceń API graficznego Vulkan. Do rysowania po stronie systemów gości stosowana jest biblioteka virglrenderer, która zapewnia translację poleceń z sterowników Venus i VirGL na polecenia Vulkan i OpenGL. Do interakcji z fizycznym GPU po stronie systemu hosta mogą być używane sterowniki Vulkan ANV (Intel) lub RADV (AMD) z pakietu Mesa.
W notatce znajduje się szczegółowa instrukcja dotycząca korzystania z Venus w systemach wirtualizacji opartych na QEMU oraz KVM. Aby działać po stronie hosta, potrzebne jest jądro Linux 5.16-rc z obsługą /dev/udmabuf (kompilacja z opcją CONFIG_UDMABUF), a także osobne gałęzie virglrenderer (gałąź res-sharing) i QEMU (gałąź venus-dev). Po stronie systemu gościa musi być dostępne jądro Linux 5.16-rc oraz pakiet Mesa 21.1+, skompilowany z opcją „-Dvulkan-drivers=virtio-experimental”.

Źródło: opennet.ru
