Now that the RADV Radeon Vulkan driver has landed in Mesa Git and Linux 4.9-rc1 is out, I figured it was time for some fresh benchmarks of the Radeon Vulkan driver against the RadeonSI Gallium3D OpenGL driver. Here is the first of that new data.
For some Sunday benchmarking fun was testing RADV Vulkan vs. RadeonSI OpenGL for Dota 2, the best Vulkan benchmark on Linux to date. In addition to looking at the latest performance results, the Phoronix Test Suite was looking at the CPU utilization in both scenarios too (by setting the MONITOR=cpu.usage environment variable). The OpenGL vs. Vulkan tests were done at a variety of resolutions.
The RADV Vulkan driver depends upon AMDGPU DRM for support. With the Linux 4.9 kernel there is experimental Southern Islands (GCN 1.0) graphics card support to complement the still-experimental GCN 1.1 support, while by default GCN 1.2+ is what's supported by default for AMDGPU on Linux 4.9. As such, for this article the range of cards tested were limited to the officially supported hardware while a follow-up article will look at the GCN 1.0/1.1 Vulkan performance with a custom-built kernel where the experimental Kconfig switches are enabled.
The supported cards used for this benchmarking was the Radeon R9 285 (Tonga), Radeon RX 460 (Polaris), and Radeon RX 480 (Polaris). Unfortunately with the Linux 4.9-rc1 kernel my Radeon R9 Fury (Fiji) didn't have a working display with either DisplayPort nor HTMI, as a regression from Linux 4.8 and on the mailing list I've seen other reports of Fury display issues with Linux 4.9. Thus for this testing today was just Tonga and Polaris GPU coverage.
For those wondering how RADV compares to the AMDGPU-PRO binary Vulkan driver, see these recent benchmarks and it also provides more data points than this Sunday morning benchmarking session.
The R9 285 Tonga with RADV performs much closer to the RadeonSI OpenGL driver than the Polaris-based cards. Strangely, the RADV driver was faster with the RX 460 than the RX 480 in this particular test.
With looking at the CPU usage, as expected, the Vulkan renderer leads to lower overall CPU utilization than the OpenGL rendering mode.
This is our first time looking at the CPU usage while benchmarking RADV and good to see it's trending in the right direction like the other Vulkan drivers. The performance results may still be noticeably behind the RadeonSI OpenGL numbers, but not too bad considering RADV is an independent effort outside of AMD basically driven by two developers over the past few months. Only recently has development really been ramping up and now is being exposed to greater testing now that it's part of mainline Mesa.
Stay tuned for more tests shortly. Unfortunately, Dota 2 RADV was still hanging at the loading screen when trying to launch at 4K (RadeonSI OpenGL at 4K with Dota 2 has no such issue), thus the limited tests for today combined with the fact of the R9 Fury not working on 4.9-rc1 and this article not looking at GCN 1.0/1.1 performance. More tests coming up next week. Enjoy all the Linux benchmarking at Phoronix? Consider joining Phoronix Premium.