Four Years After Launch, AMD Kaveri Sees Huge Performance Boost On Linux

Written by Michael Larabel in Display Drivers on 14 May 2018 at 10:12 AM EDT. Page 1 of 4. 51 Comments.

For those making use of AMD Kaveri APUs, the latest Linux graphics stack improvements will now yield much better performance -- up to twice as fast in some instances! Here are some benchmarks with Ubuntu 18.04 on the AMD A10-7870K.

A few days ago I covered the news when seeing in Mesa Git that AMD Kaveri should be much faster with Mesa 18.2-devel, assuming you are using the AMDGPU DRM kernel driver rather than the Radeon DRM kernel driver.

It turns out that up until now when using the RadeonSI Gallium3D driver with the default Radeon Direct Rendering Manager (DRM) kernel driver only one render back-end was enabled rather than two. This wasn't an unknown as there was a code comment inside the AMD code that "KV [Kaveri] should be 0x00000002, but that causes problems with radeon [kernel driver]." But now with the newest code, when using the AMDGPU DRM driver it will support using both render back-ends. The Radeon DRM configuration for Kaveri remains black-listed due to bugs so only one back-end is enabled.

But for those using a stock Linux distribution like Ubuntu, AMD GCN 1.1 hardware including Kaveri defaults to the Radeon DRM driver. There are the tunables fortunately for easily switching to using the AMDGPU driver. For GCN 1.1 / Kaveri that's as easy as booting a recent kernel release with radeon.cik_support=0 amdgpu.cik_support=1 for enabling the Sea Islands support. AMD still considers the GCN 1.0/1.1 support in this newer kernel driver to be experimental, but manually enabling this support tends to be better for most users unless hit by a rare regression, this also allows for the RADV/AMDVLK Vulkan drivers to work with GCN 1.0/1.1 era hardware, and can be faster on its own too thanks to memory management improvements and other enhancements.

For the purposes of this testing given the render back-end change, I tested the AMD A10-7870K system in three configurations:

- Ubuntu 18.04 LTS out-of-the-box with its Linux 4.15 kernel and Mesa 18.0-rc5. This provides the Radeon DRM driver and RadeonSI supporting OpenGL 4.5.

- The same Ubuntu 18.04 LTS installation with Linux 4.15 and Mesa 18.0 but with booting radeon.cik_support=0 amdgpu.cik_support=1 to use the AMDGPU DRM driver to show how the performance changes just when changing out the kernel Direct Rendering Manager code.

- The same Ubuntu 18.04 LTS installation and again using the AMDGPU DRM driver but upgrading to Mesa 18.2-devel as of Saturday via the Padoka PPA. This latest Mesa Git code has the Kaveri render back-end change when using AMDGPU.

Kaveri Ubuntu 18.04 Mesa Testing

A variety of OpenGL Linux gaming benchmarks were then run to see how the performance changes. All of the benchmarks were facilitated via the Phoronix Test Suite.

Related Articles