Linux Driver Expectations For The Radeon RX Vega

Written by Michael Larabel in Radeon on 30 July 2017 at 08:19 AM EDT. 40 Comments
RADEON
It's finally Vega week where AMD will be launching the long-awaited Radeon RX Vega graphics cards... But what about the Linux driver status?

The successor to the Radeon R9 Fury series is finally being launched from SIGGRAPH and is featuring HBM2 memory and at least under Windows leaked performance figures indicate it should compete with the GeForce GTX 1080.

Leaked pricing suggests the Radeon RX Vega 64 with air-cooling will sell for $499 USD, a limited edition model for $549, and liquid cooling models at $599+. There's also said to be a cut-down Radeon RX Vega 56 edition that will sell for $399 USD. The RX Vega 64 models with 64 compute units / 4096 stream processors are expected to have around a 375 Watt TDP while the RX Vega with 56 compute units / 3548 stream processors at around 300 Watts.

I'm not under NDA for this launch and have not received any Vega samples yet nor do I know if AMD will be sending any out to Phoronix... Otherwise I will end up buying a 56 or air-cooled 64 when launched (thanks to those that support Phoronix by not blocking ads, joining Phoronix Premium, or making a PayPal tip).

It's possible they haven't been communicating with me over the Vega launch since the Linux driver situation isn't as ideal as with the past Polaris launch, etc. Anyhow, from publicly available information if following our past articles and mailing lists, the Radeon RX Vega Linux driver support at launch comes down to:

Initially, you will probably be best off with AMDGPU-PRO. The recently-launched AMDGPU-PRO 17.30 should support RX Vega (the Vega Frontier Edition was added in 17.20). Otherwise, AMD will likely issue a new launch-day driver but at least they are always good about getting out same-day support in their binary driver. Using AMDGPU-PRO should be best/easiest for launch since it has the DC (formerly DAL) display code enabled. With Vega, DC is required to drive a display via Vega. The AMDGPU-PRO's DKMS module has DC display code present, so you should be able to happily drive the card as one normally would.

The issue with AMDGPU-PRO though is its distribution support is limited. As of 17.30, it doesn't even work with Linux 4.10+ nor X.Org Server 1.19 so distributions like Ubuntu 17.04 aren't working with this driver. AMDGPU-PRO is primarily geared for the enterprise Linux distributions but now many Linux gamers / consumers will probably want to be using it for a sane and quick Vega experience.

With the mainline Linux kernel support, initial code landed in Linux 4.12 while many more Vega 10 fixes wound up in the current development cycle, Linux 4.13. But the mainline code doesn't have the DC support and it's not even clear if it will land yet for Linux 4.14... Thus with the mainline kernel code, you will have to be using Vega as a headless system, which obviously isn't practical if you are a Linux gamer. The only partial workaround is if using DRI_PRIME and are driving the actual monitor via a secondary GPU, like Intel integrated graphics from the system and then punting the rendering work off to the Vega. So could work out fine if you have Intel graphics present, but probably not practical with a secondary older AMD graphics card considering Vega is already going to be pulling 300+ Watts itself.

Or if you plan to just use the Radeon RX Vega for mining or other OpenCL compute workloads, you obviously don't need a display. But for there you are then using the ROCm driver stack and for that it already has its own kernel spin, among other non-mainlined changes at the moment, so unless you are patching things on your end (where you could already then be patching DC), you won't be on a mainline kernel with ROCm.

If you want to be running Vega with display support on your own, AMD continues to maintain the amd-staging-4.11 branch with DC support and is carrying the Vega patches, granted I personally haven't been able to test out this branch with any Vega hardware to know how well it's working.

So if you are running on a supported kernel, the next step is Mesa and for there you will want to be on Mesa 17.2 or newer. Ideally, always trailing Git for best performance and support from RadeonSI and RADV. With Vega support, you will also need to ensure your Mesa build is against LLVM 5.0 for the AMDGPU back-end changes on that side.

That's where things stand at right now. If you want Radeon RX Vega pain-free on Linux right now, you should find the easiest path with AMDGPU-PRO assuming your distribution is supported by this hybrid driver. Otherwise you'll need to use the staging kernel or be using (ideally) Linux 4.13 Git + Mesa Git paired with another GPU to drive the display and offload the rendering to Vega using DRI PRIME. Hopefully we will see DC merged for Linux 4.14, but that's not clear yet and just grows very frustrating due to having no Vega display support otherwise on top of the long-missing HDMI/DP audio from recent GPUs along with other display features.

One way or another, once the Radeon RX Vega hardware launches, there will be Linux benchmarks on Phoronix.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week