The Cost Of Running Compiz
Earlier this week we published benchmarks comparing Arch Linux and Ubuntu. There were only a few areas where the two Linux distributions actually performed differently with many of their core packages being similar, but one of the areas where the results were vastly different was with the OpenGL performance as Ubuntu uses Compiz by default (when a supported GPU driver is detected) where as Arch does not. This had surprised many within our forums so we decided to carry out a number of tests with different hardware and drivers to show off what the real performance cost is of running Compiz as a desktop compositing manager in different configurations.
Even when OpenGL games and benchmarks are running full-screen, in some configurations there still is a penalty imposed by Compiz. Compiz does not stop itself when a game or application is running full-screen even though you are not using any Compiz plug-ins or desktop effects and as such, indirect rendering is still being used. Albeit using a compositing window manager can be of some benefit when running a full-screen OpenGL program as it can lead to faster alt-switching and some other advantages, but for most users running Compiz with a full-screen application is not needed and can simply lead to a drop in performance due to the indirect rendering and additional steps taken with the compositing window manager on Linux.
Our test system was running an Intel Core i3 530 processor clocked at 3.32GHz, an ECS H55H-M motherboard, 2GB of system memory, and a 65GB OCZ Vertex SSD. When testing the Intel graphics we used the integrated Clarkdale graphics, for the ATI graphics we used a Radeon HD 4830 graphics card, and for the NVIDIA graphics was a GeForce 9800GT.
All of our testing was done on a stock Ubuntu 10.04 installation with the Linux 2.6.32-21-generic x86_64 kernel, GNOME 2.30.0, X.Org Server 1.7.6, Mesa 7.7, xf86-video-intel 2.9.1, xf86-video-ati 6.13.0, Catalyst 10.4, and NVIDIA 195.36.15 drivers. With each configuration and driver, we tested when Compiz was running via the "Normal" desktop effects setting and then again, when it was set to "None", in which case Metacity is just the window manager.
We tested the Intel Clarkdale graphics, the ATI graphics with the proprietary Catalyst driver, the NVIDIA graphics with the proprietary NVIDIA Linux driver, and the open-source ATI Radeon driver stack when it was using kernel mode-setting with DRI2 and also when it was using user-space mode-setting along the DRI1 code-paths. Unlike the Intel driver, the open-source AMD developers have not yet dropped support for their user-space mode-setting support. The AMD driver also only implements DRI2 support when using the newer KMS code-path.
The games we ran for this Compiz testing included Warsow, OpenArena, World of Padman, Tremulous, Urban Terror, Nexuiz, VDrift, Unigine Sanctuary, Unigine Tropics, Unigine Heaven, and Lightsmark. Some of the games could only be run with the proprietary ATI/NVIDIA drivers as the open-source drivers atop Mesa do not support them.