is an especially interesting Gallium3D driver since it allows accelerating the state trackers atop any modern CPU
, but for any close to decent level of performance when using OpenGL you need a hefty multi-core CPU (here's some LLVMpipe benchmarks
just from last week) that supports the latest SSE4 instructions as well. While some OpenGL games will run with LLVMpipe
and the performance of this driver that leverages the Low-Level Virtual Machine is much faster and better than Mesa's old software rasterizer or the Gallium3D Softpipe driver, Compiz nor the GNOME Shell (and most other compositing window managers) yet work with this driver.
LLVMpipe fails with the GNOME Shell
and Compiz 0.8 because the LLVM+Gallium3D driver doesn't yet implement the GLX_EXT_texture_from_pixmap
extension, which is needed for these desktop compositing window managers. Attempting to use the current LLVMpipe driver with such compositing managers will either result in a black/white screen or other show-stopping artifacts.
Eventually the LLVMpipe driver should support the texture-from-pixmap extension and a number of weeks back an initial implementation of this GLX extension was added to Mesa's Software Rasterizer
. This may become more important once GNOME 3.0 ships with the GNOME Shell / Mutter and more Linux desktop users expect a composited experience regardless of whether there is a proper graphics driver or not, but with using LLVMpipe it will cost you some CPU cycles.
As was pointed out in our forums
, with Compiz 0.9
the GLX_EXT_texture_from_pixmap support is no longer a hard requirement for Compiz. While using the texture-from-pixmap extension is the most efficient path for an OpenGL window compositor, with Compiz 0.9 comes a "copy mode" plug-in (called "copytex") that is not quite as fast with its copying of pixmap content to texture approach. Besides dropping the hard requirement against the proper GLX extension, this method also allows pixmaps bigger than the maximum texture size supported by the driver/GPU. However, even still Compiz 0.9 still isn't playing along well with the latest Git code.
When trying out the very latest Git code for Compiz and Mesa/Gallium3D/LLVMpipe from last weekend, there is progress in that it longer a solid-colored screen that appears when launching Compiz. However, the window decorations are not rendered and the overall experience still isn't usable. At least though we are heading in the right direction and we'll be continuing in our LLVMpipe/Gallium3D experiments.