Virgil3D Is Still Happening, New 3D Test Harness Created
David Airlie at Red Hat continues to be working on Virgil3D for providing 3D/OpenGL acceleration to KVM/QEMU guests.
It's been a while since last hearing anything about Airlie's Virgil3D project but it turns out he's still working on this code to finally let QEMU virtual machines tap the OpenGL/3D support of the host system's graphics processor. There's two other Red Hat developers now also working part time on Virgil.
In a new blog post, Airlie talked about their work on coming up with a new test harness for speeding up their work on the renderer and implementation of new features. Rather than having to constantly work on this virtual driver within a full VM, he's been working on having a local renderer to test out his Mesa graphics driver code.
David explained, "my plan was to have a renderer process which loads the renderer library that qemu loads, and a mesa driver that hooks into the software rasterizer interfaces. So instead of running llvmpipe or softpipe I have a virpipe gallium wrapper, that wraps my virgl driver and the sw state tracker via a new vtest winsys layer for virgl. So the virgl pipe driver sits on top of the new winsys layer, and the new winsys instead of using the Linux kernel DRM apis just passes the commands over a UNIX socket to a remote server process. The remote server process then uses EGL and the renderer library, forks a new copy for each incoming connection and dies off when the rendering is done. The final rendered result has to be read back over the socket, and then the sw winsys is used to putimage the rendering onto the screen."
He's found his local rendering test harness code to be a smoother process than doing development inside QEMU and consists of the Virglrenderer and Mesa driver changes.
It's been a while since last hearing anything about Airlie's Virgil3D project but it turns out he's still working on this code to finally let QEMU virtual machines tap the OpenGL/3D support of the host system's graphics processor. There's two other Red Hat developers now also working part time on Virgil.
In a new blog post, Airlie talked about their work on coming up with a new test harness for speeding up their work on the renderer and implementation of new features. Rather than having to constantly work on this virtual driver within a full VM, he's been working on having a local renderer to test out his Mesa graphics driver code.
David explained, "my plan was to have a renderer process which loads the renderer library that qemu loads, and a mesa driver that hooks into the software rasterizer interfaces. So instead of running llvmpipe or softpipe I have a virpipe gallium wrapper, that wraps my virgl driver and the sw state tracker via a new vtest winsys layer for virgl. So the virgl pipe driver sits on top of the new winsys layer, and the new winsys instead of using the Linux kernel DRM apis just passes the commands over a UNIX socket to a remote server process. The remote server process then uses EGL and the renderer library, forks a new copy for each incoming connection and dies off when the rendering is done. The final rendered result has to be read back over the socket, and then the sw winsys is used to putimage the rendering onto the screen."
He's found his local rendering test harness code to be a smoother process than doing development inside QEMU and consists of the Virglrenderer and Mesa driver changes.
1 Comment