Venus – virtuelle GPU für QEMU und KVM, implementiert basierend auf der Vukan-API

Collabora hat den Venus-Treiber vorgestellt, der eine virtuelle GPU (VirtIO-GPU) basierend auf der Vukan-Grafik-API bietet. Venus ähnelt dem zuvor verfügbaren VirGL-Treiber, ist auf der OpenGL-API implementiert und ermöglicht außerdem die Bereitstellung einer virtuellen GPU für 3D-Rendering für jeden Gast, ohne exklusiven direkten Zugriff auf die physische GPU zu gewähren. Venus-Code ist bereits in Mesa enthalten und wird seit Release 21.1 ausgeliefert.

Der Venus-Treiber definiert das Virtio-GPU-Protokoll zur Serialisierung von Vulkan-Grafik-API-Befehlen. Für das Rendern auf der Gastseite wird die virglrenderer-Bibliothek verwendet, die die Übersetzung von Befehlen von den Venus- und VirGL-Treibern in Vulkan- und OpenGL-Befehle ermöglicht. Zur Interaktion mit der physischen GPU auf der Seite des Hostsystems können die Vulkan-Treiber ANV (Intel) oder RADV (AMD) von Mesa verwendet werden.

Der Hinweis enthält detaillierte Anweisungen zur Verwendung von Venus in Virtualisierungssystemen, die auf QEMU und KVM basieren. Um auf der Host-Seite zu arbeiten, ist ein Linux-Kernel 5.16-rc mit Unterstützung für /dev/udmabuf (Build mit der Option CONFIG_UDMABUF) sowie separate Zweige von virglrenderer (Resharing-Zweig) und QEMU (venus-dev-Zweig) erforderlich ). Auf der Seite des Gastsystems müssen der Linux-Kernel 5.16-rc und das Paket Mesa 21.1+ mit der Option „-Dvulkan-drivers=virtio-experimental“ kompiliert sein.

Venus – virtuelle GPU für QEMU und KVM, implementiert basierend auf der Vukan-API


Source: opennet.ru

Kommentar hinzufügen