The Current State Of VIrtIO-Based Virgil3D

Written by Michael Larabel in Mesa on 10 November 2013 at 10:59 AM EST. 1 Comment
MESA
Late last month at the KVM Forum in Edinburgh was a status update on Virgil3D, the research project by David Airlie for a VirtIO-based 3D GPU for QEMU that's powered by Mesa's Gallium3D.

Virgil3D was announced in July as an experimental way for QEMU 3D support to finally offer OpenGL/3D support for QEMU guests.

The last update by David Airlie on the project was in early October but a few weeks later he presented his experimental project to the virtualization fans and experts at the Linux Foundation's KVM Forum.

The Linux-focused Gallium3D-based project is making headway but isn't yet ready for end-users. The VirtIO interface comes down to a VirtIO ring for managing contexts and 3D resources, DMA-like transfers, mode-setting, command stream submission, capabilities, and IRQ fencing. The virtual GPU's renderer converts Gallium states to GL, converts TGSI shaders to GLSL shaders, OpenGL contexts are created on the host-side for each guest context, and allows for GLSL 1.30 support at the moment.

Host requirements for now are having an OpenGL 2.1 driver with GLSL 1.30 support, but the host GPU driver doesn't need to be Mesa/Gallium3D-based since the virtual Gallium3D driver converts to (generic) GL/GLSL state. The exposed guest OpenGL support is nearly up to OpenGL 3.0.

As part of this work is also the matter of porting QEMU to SDL2 in order to obtain multi-window support, AGRB cursors, better OpenGL and EGL support, and different input capabilities. Some other issues facing David's project is libvirt integration security, DRM render-nodes, using EGL and DMA-BUF for sharing rendered images, and using GLX/EGL to composite the final rendered image.

For those wanting many more details on Virgil3D see the PDF slides on Google Docs or the YouTube video stream embedded below.

Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week