Back in June we had exclusively shared that CrossFire would be coming to Linux as part of their Radeon HD 4800 series strategy. CrossFire (or CrossFire X as it's now known) allows the graphics rendering workload to be split between multiple Radeon GPUs to deliver faster performance. Meanwhile, NVIDIA's multi-GPU technology known as SLI (Scalable Link Interface) has been supported on Linux since 2005. While AMD is still working to address some issues with their ATI Linux driver, they have been working hard on new features like CrossFire. How does this feature work though on Linux and does it deliver similar performance gains to their Windows driver? Today we have a full rundown on ATI CrossFire for Linux along with benchmarks from the ATI Radeon HD 4850 and Radeon HD 4870.
This multi-GPU technology from ATI was originally introduced in 2005 but the current CrossFire X generation was introduced last year in conjunction with the AMD 790FX Chipset. It was in February of this year when we privately learned ATI CrossFire would be coming to Linux, but prior to that we didn't even think AMD would invest in bringing this technology to Linux. It was just a year ago that their Linux driver had performed rather poorly until they had introduced their new OpenGL driver with Radeon HD 2000 series support and their long-overdue AIGLX support. Since then they have begun delivering impressive improvements and have started delivering same-day support for new graphics cards. It's been an interesting time for AMD on Linux while running along side these efforts are their open-source activities with providing NDA-free documentation and sponsoring the development of two open-source X.Org drivers (xf86-video-ati and xf86-video-radeonhd).
When NVIDIA had introduced Scalable Link Interface on Linux three years ago it presented its own set of challenges. SLI required running the OpenGL program at the resolution of the X Server otherwise there would be no performance gains, setting an environmental variable prior to running the id Software games to initialize SLI, a few different bugs with the AFR (Alternate Frame Rendering) and SFR (Split Frame Rendering) modes, and the performance gains at that time weren't all that great. Fortunately, since then NVIDIA has ironed out most of the bugs with their Linux SLI implementation. Our last SLI testing article was last fall as we looked at the performance of NVIDIA SLI on Linux and Windows. At that time, the GeForce 8 series was plagued by performance problems on Linux even when running in a single-card configuration. In some of those tests, even when running Linux SLI its performance was half that of a single graphics card on Windows XP. NVIDIA has since corrected the performance issues associated with these newer GPUs (aside from their 2D problems) and SLI is able to deliver modest gains.
We have been using the CrossFire-supportive driver for the past couple of weeks and have experienced promising results. There are a few rough edges with this initial CrossFire Linux implementation, but for the most part it has been a pleasant experience with phenomenal results. These areas for improvement revolve around the enabling of CrossFire, managing the CrossFire setup, and a few rendering bugs while using CrossFire. On the following pages we will share more on our CrossFire experience.