Compared to past years when recapping the AMD/ATI Linux advancements over the past calendar year, 2009 was not quite as exciting, which can be viewed as both good and bad for their Catalyst Linux driver. There were many advancements this year on AMD's open-source side, but in 2009 there wasn't as many milestones for their Catalyst driver like in the past with the introduction of CrossFire, OverDrive, same-day Linux support, the AMD Catalyst Control Center, and other new features. Here is our 2009 year in review look at AMD's advancements to their proprietary Catalyst Linux driver along with our annual benchmarks.
Part of the reason why 2009 was not as exciting as past years with regards to Catalyst Linux driver improvements is because AMD has nearly reached feature parity with the Catalyst Windows driver, so there is not a whole lot of missing features. Missing still though from the Catalyst Linux driver is support for 4-card CrossFireX, Eyefinity (though it is coming soon), and other miscellaneous drivers. What was delivered in 2009 though for the Catalyst Linux driver include support for the latest OpenGL 3.2 extensions (along with OpenGL 3.0 and 3.1), Hybrid CrossFire, MultiView, support for the AMD Display Library (ADL) SDK, compositing improvements, and enhancements to the AMD Catalyst Control Center Linux Edition (including integrated support for RandR 1.2). That is about it for the new features.
Besides the features introduced this year, the 12 Linux driver releases did bring many bug-fixes along with support for new X Server and Linux kernel releases (albeit many times months late). What was also partially resolved in 2009 was their XvBA mess concerning the X-Video Bitstream Acceleration (http://www.phoronix.com/vr.php?view=13034) API that we have been talking about since last year. XvBA exposes the capabilities of their Unified Video Decoder 2 (UVD2) engine to assist in HD video decoding for ATI Radeon graphics processors. After being more than a year to arrive in a usable form and without any support for the original UVD1 GPUs, XvBA is only exposed through a VA-API front-end. AMD has not publicly released any API documentation (or patches) that provide XvBA functionality for any Linux multimedia applications. Instead, they worked with Splitted Desktop Systems to provide a binary-only library that effectively converts VA-API calls to interface with XvBA. However, even with the latest Catalyst drivers this is not a bug-free experience. AMD has failed at Linux video playback in comparison to NVIDIA and their widely popular, reliable, and powerful VDPAU.
In 2009, Matthew Tippett who had served as the ATI Linux Core Engineering Manager since 2003 had left his role at AMD. Matthew is now serving Palm and is involved with us at Phoronix Media on our Phoronix Test Suite family of products.
With our NVIDIA 2009 Year In Review we had not benchmarked every single driver that came out this year since there was simply too many driver releases and our test harness now taking many hours to benchmark each driver. For the Catalyst driver testing this year we benchmarked the Catalyst 9.1, 9.3, 9.6, 9.10, and 9.11 drivers. We decided to basically look at one driver release each quarter, but Catalyst 9.12 could not be tested with the given test system due to a bug (when starting the X Server with Catalyst 9.12 it would just be forced into its DPMS mode) so instead we reverted to the 9.11 release.
We used the same base system for our AMD yearly testing as we did on the NVIDIA side with an Intel Core 2 Duo E8400 processor clocked at 3.8GHz, a Gigabyte EP45T-DS3R, 2GB of DDR3 memory, a 160GB Western Digital WD1600JS-00M SATA HDD, and our graphics card used for testing was a ATI Radeon HD 4870 512MB graphics card. On the software side, we were using Ubuntu 8.10 with the Linux 2.6.27 kernel and X Server 1.5.2 so that it would be compatible with all of the Catalyst driver releases going back to January's Catalyst 9.1 release.
Catalyst 9.1 is made up of fglrx 8.57.2 with an OpenGL version string of 2.1.8395, Catalyst 9.3 was with fglrx 8.59.2 and OpenGL 2.1.8543, Catalyst 9.6 with fglrx 8.62.4 and OpenGL 2.1.8673, Catalyst 9.10 with fglrx 8.66.2 and OpenGL 2.1.9026, and Catalyst 9.11 with fglrx 8.67.4 and OpenGL 2.1.9116. Our Phoronix Test Suite benchmarks included 1080p H.264 video playback, Warsow, Nexuiz, VDrift, Quake 4, Enemy Territory: Quake Wars, Lightsmark, Unigine Sanctuary, and Unigine Tropics.
For the 1080p H.264 video playback testing we monitored the CPU usage as X-Video was used for the video playback process, since XvBA was only recently usable on Linux through VA-API and can be buggy in some instances. With X-Video and the five Catalyst drivers tested from 2009, the Catalyst 9.11 driver had the lowest overall CPU usage. Video playback was better in Catalyst 9.10 and 9.11 than the earlier releases. In particular, Catalyst 9.6 was awful with X-Video where it by far had the highest CPU usage.