Trying The New AMD GPU-PRO Linux Driver On Ubuntu With Vulkan, OpenCL & OpenGL

Written by Michael Larabel in Display Drivers on 19 March 2016. Page 1 of 2. 56 Comments

On Friday night to much surprise, AMD published the beta version of their new hybrid Linux driver stack with Vulkan support alongside OpenCL, OpenGL, and VDPAU support. Here's some more details from my initial testing of this new driver that AMD is currently calling the Radeon Software AMD GPU-PRO Beta Driver for Linux.

First of all, apologies for the short article yesterday announcing the launch and this piece too will be shorter than normal while I hope to have out the results in the next day or two. With my luck, less than an hour before this new AMD GPU-PRO driver was announced on Friday, my pointer finger crossed paths with a running 6-inch hole saw bit on a drill (as part of working on the server room modifications)... Not fun and while finger is recovering, bit hard to type, etc. Anyhow, for those not following all of our past stories on AMD's new Linux driver model and confused by this "hybrid" driver, AMD's John Bridgman explains it as, "three closed-source components running on top of slightly tweaked copies of open source kernel driver, X driver, libdrm and multimedia drivers." It's the mix of open and closed-source AMD Linux driver components while at the center of it is the open-source AMDGPU kernel DRM driver and the main binary blobs are the OpenGL and Vulkan implementations in user-space.

This initial AMD GPU-PRO beta driver is very centric towards Ubuntu and the 64-bit packages are all in the form of Debian packages. The installer script also specifically checks for the presence of Ubuntu. In time, the AMD GPU-PRO driver is expected to be more distribution agnostic. Installing this new driver basically comes down to extracting the archive and then as root running the amdgpu-pro-install script found within the directory. It's that easy -- assuming you are on Ubuntu! At first I was trying an Ubuntu 16.04 daily system with its packaged Xenial kernel. However, even though this packaged AMDGPU binary driver uses DKMS, there is broken compatibility with this kernel driver's code against Linux 4.4. Due to some changes in the DRM kernel interface of Linux 4.4, building the DKMS module failed. This should be fixed by AMD soon as Bridgman noted in the forums, but for now the easy fix was just installing Linux 4.2 on the Ubuntu 16.04 box -- AMD primarily has been testing against Ubuntu 14.04 LTS while Ubuntu 16.04 support is forthcoming. With Ubuntu 15.10 and Ubuntu 14.04.4 LTS using Linux 4.2, I just installed the generic mainline 4.2 kernel from the Ubuntu PPA and this AMD GPU-PRO beta driver installed then without any further problems.

After a reboot, sure enough it was working! The binary blob allowed for OpenGL 4.5 over the AMDGPU DRM driver compared to RadeonSI Gallium3D in Mesa currently yielding just OpenGL 4.1. Be forewarned though that AMD has mostly been focusing upon the Vulkan Linux upbringing and haven't done too much yet on the OpenGL optimization side for this new "PRO" driver. That will come in due time but for now don't expect any performance miracles out of this OpenGL implementation in AMD GPU-PRO. OpenGL 4.5 is exposed both for core and compatibility profile contexts.

There's also OpenCL 2.0 support that works atop AMDGPU! Much better than the incomplete OpenCL ~1.1 support found with OpenCL (Clover) Gallium3D on RadeonSI. AMD has enabled GCN 1.1 support in their DKMS version of the AMDGPU kernel driver rather than only GCN 1.2 support as currently found in the upstream AMDGPU driver.

Related Articles