Last week the DRM pull went in for the Linux 3.1 kernel. For the Intel DRM graphics driver in the Linux kernel there is frame-buffer compression clean-ups, high color support, ring frequency scaling, shared LLC support, and hang-check module disabling. Compared to the Linux 3.0 kernel, the driver improvements significantly boost the open-source graphics performance for Intel Sandy Bridge hardware.
Back in late March I originally tested the LLC caching patch-set, which offered some impressive performance improvements, and subsequently the code made it into the Linux 3.0 kernel. With the Linux 3.1 kernel there is shared LLC support, which allows sharing the LLC between the CPU and GPU, thereby avoiding main memory traffic latencies. The shared LLC caching is only supported for Sandy Bridge and Ivy Bridge hardware.
The other Intel changes in the Linux 3.1 DRM pull include fixing missing CPU writes to the front-buffer with frame-buffer compression enabled, supports depth 30 frame-buffers at 10BPC using DisplayPort and HDMI, ring frequency scaling, and a disable hang-check module parameter (used for debugging). The ring frequency scaling is for making the memory bus track the GPU clock in addition to the CPU clock, which keeps the memory running at full speed when the GPU is busy, but the CPU is idle.
For this quick benchmarking of the Intel DRM for Sandy Bridge in the Linux 3.1 kernel, an EP EliteBook was used with an Intel Core i5 2520M quad-core, 4GB of RAM, and a 160GB Intel SSD. The system was running Ubuntu 11.04 x86_64 with Unity 3.8.10, xf86-video-intel Git, Mesa 7.12-devel git-b189d16, GCC 4.5.2, LLVM 2.8, and an EXT4 file-system.
The vanilla Linux 3.0 kernel and Linux 3.1 DRM from David Airlie's drm-core-next tree as of 26 July were compared. During the testing process, only once on this in-development driver code was the GPU hung. Fortunately, the Intel SNB graphics processor was able to recover.
On the following pages are the Phoronix Test Suite results from this mini comparison.