AMD RadeonSI Graphics Driver Still Troublesome On Linux
Back in June I ran some RadeonSI Gallium3D benchmarks showing the performance had a ways to improve, but sadly the situation hasn't improved months. There's been progress on the RadeonSI Gallium3D driver and from the kernel side with Radeon DRM improvements and new features, but in testing out the latest code it's still a buggy experience and the performance isn't close to matching the closed-source AMD Catalyst Linux graphics driver for Radeon HD 7000 series hardware. At least though for some Linux games we're now in the range of 50% the OpenGL speed of Catalyst.
The latest open-source Linux benchmarks to share of RadeonSI, the GPU driver supporting AMD's Radeon HD 7000 / 8000 series graphics processors and respective APU parts based upon GCN, include testing under an updated Xubuntu 13.04 platform. All the testing happened from the Intel Core i7 4770K "Haswell" test bed and the test runs included:
- Running Xubuntu 13.04 with its stock Linux 3.8 kernel while using the Catalyst driver packaged in the Ubuntu archive (Catalyst fglrx 9.1.11 / OpenGL 4.2.12002).
- The same Xubuntu installation and running the same Linux 3.8 kernel but installing Mesa 9.3-devel and other updated components from Oibaf's PPA, including GLAMOR for RadeonSI driver support. This Mesa 9.3-devel code was as of Git revision 395b941.
- Then upgrading the Xubuntu installation to the Linux 3.11 stable kernel while keeping the same user-space (Mesa 9.3-devel, etc). The stock kernel parameters were used, which means no Radeon Dynamic Power Management support for this run.
- Lastly, upgrading to the Linux 3.12 Git kernel as of 15 September and enabling Radeon DPM via the radeon.dpm=1 module parameter. The user-space remained the same.
These four test runs provide a very diverse range for the Radeon HD 7000 "Southern Islands" GPUs used for testing from looking at the Catalyst performance to the very latest open-source RadeonSI driver performance. The graphics cards used for testing were the Radeon HD 7850 and Radeon HD 7950. The comparison was sadly limited to these two high-end graphics cards as they're the only ones in my possession as AMD never ended up sending over HD 7000 samples for Linux testing and these were two GPUs I had personally purchased. If you appreciate this Linux GPU driver testing even when it goes without manufacturer support, please subscribe to Phoronix Premium or consider a PayPal tip so that the timely testing may continue.
Among the RadeonSI issues I encountered with this latest round of testing included:
- The RadeonSI Gallium3D driver as of Mesa 9.3-devel git-395b941 fails to work yet with any of the Unigine Engine tech demos commonly used at Phoronix.
- Various id Tech 4 games were tested -- including Doom 3, Quake 4, and Prey. These games would work with RadeonSI on Mesa 9.3-devel when using the Linux 3.8 kernel, but when moving to the Linux 3.11 and 3.12 kernels (with or without DPM), the two GPUs would fail with any of these id Tech 4 games with some odd corruption issues:
- Xonotic had a similar issue to the id Tech 4 games where when on Mesa 9.3-devel it would work on Linux 3.8 but not render correctly on the 3.11/3.12 kernels.
- The XFX Radeon HD 7950 graphics card still fails to boot when Dynamic Power Management is enabled as of the Linux 3.12 Git kernel used for testing. The system will boot without DPM enabled but when it's flipped on, the system can't even be remotely accessed.
- There were other occasional Radeon DRM issues:
- It's fairly well known among enthusiasts, but the RadeonSI Gallium3D driver only supports about OpenGL 3.0 right now while the R600 Gallium3D driver is around OpenGL 3.2~3.3 while the Catalyst driver fully supports OpenGL 4.2. Thus some of the GpuTest test cases and other workloads do not work with RadeonSI at this time.