AMD Radeon Software For Linux 21.10 Is Released

From LinuxReviews
Jump to navigationJump to search
Amdlogo.png

A new proprietary AMD GPU driver package for Linux is out and it is not a very exciting release. The only highlights mentioned in the release notes are "full support for Ubuntu 20.04.2" and "preview of the Vulkan Ray Tracing Extensions supported on compatible AMD RDNA 2 based graphics products". The actual driver package appears to be a mix of Mesa drivers, the OpenCL library from Radeon Open Compute, an older "legacy" OpenCL library, a AMD-specific LLVM fork, the free AMDVLK Vulkan driver and "Pro" Vulkan driver, and some tools.

written by 윤채경 (Yoon Chae-kyung)  2021-04-20 - last edited 2021-04-22. © CC BY

Qt woman holding amd gpu.jpg
A AMD graphics card.

"Radeon™ Software for Linux®" is a proprietary driver package for Linux-based operating systems released by AMD. It contains "AMD Proprietary OpenGL, OpenCL™, and Vulkan™ drivers" according to the Radeon™ Software for Linux® 21.10 Release Notes.

The announcement page states that "clicking the Download button, you are confirming that you have read and agreed to be bound by the terms and conditions" in their horrific and morally unacceptable End User License Agreement. It is therefore best to download the package without clicking their silly download button - thus ignoring their unacceptable EULA. The following OS-specific tarballs are available:

  • amdgpu-pro-21.10-1247438-ubuntu-20.04.tar.xz - Ubuntu 20.04.2
  • amdgpu-pro-21.10-1244864-ubuntu-18.04.tar.xz - Ubuntu 18.04.5 HWE
  • amdgpu-pro-21.10-1247438-rhel-7.9.tar.xz - RHEL/CentOS 7.9
  • amdgpu-pro-21.10-1247438-rhel-8.3.tar.xz - RHEL/CentOS 8.3
  • amdgpu-pro-21.10-1244864-sle-15.2.tar.xz - SLED/SLES 15 SP 2

AMD really does not want you to download these files without clicking on their stupid download button, thus agreeing to their completely unacceptable End User License Agreement which goes on about AMD's imaginary property rights (IP) before it stats that:

"The Software, including all Intellectual Property Rights therein, is and remains the sole and exclusive property of AMD or its licensors, and You shall have no right, title or interest therein except as expressly set forth in this Agreement. You agree to prevent any unauthorized copying of the Software. All title in and to the Software, all copies thereof (in whole or in part, and in any form), and all rights and Intellectual Property Rights therein shall remain vested in AMD. Except as expressly provided in Section 2 herein, AMD does not grant any express or implied right to You under AMD patents, copyrights, trademarks, or trade secret information."

The document is also full of silly restrictions. You can, for example, supposedly not:

"decompile, reverse engineer, disassemble or otherwise reduce the Software to a human-perceivable form (except as allowed by applicable law);"

The simple trick to downloading the "Radeon™ Software for Linux®" without agreeing to any EULA is to use good old wget. AMD does not like wget, so you can't tell their website you are using it. And they check if it looks like you clicked a link on their website by checking the HTTP referrer field. Thus, the driver packages, shown above, needs to be downloaded this way:

wget -U "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1.1 Mobile/15E148 Safari/604.1" \
  "https://drivers.amd.com/drivers/linux/amdgpu-pro-21.10-1244864-ubuntu-18.04.tar.xz"  \
  --referer "https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-21-10"

Replace the tar.xz with the appropriate file for your operating system.

The driver file contains the MIT-licensed Radeon Open Compute OpenCL compute library. This is now the default OpenCL library for the AMDGPU-Pro package on Linux. That library is available as free software, the AMDGPU-Pro driver is not. Thus, you should visit rocmdocs.amd.com/en/latest/index.html and learn how to install ROCm directly, without having to deal with the proprietary AMDGPU-Pro package, if you just want OpenCL support.

The amdgpu-install #!/bin/bash script included in the AMDGPU-Pro package lists a --opencl=legacy option for installing "legacy OpenCL support". That would be the older OpenCL library that used to be the only one, and the default, in prior AMDGPU-Pro packages. The older OpenCL library is in a package named opencl-orca-amdgpu-pro-icd. It may be a better option if you are mostly using desktop OpenCL software like Davinci Resolve, ROCm does not play nicely with most desktop applications. AMD is primarily developing it with desktop users in mind.

The AMDGPU-Pro 21.10 package contains a ton of Mesa packages from Mesa 20.3.4. These are free software packages that are not developed by AMD. There is also a LLVM fork called llvm-amdgpu-pro in there and two Vulkan packages called vulkan-amdgpu and vulkan-amdgpu-pro. We should probably test those, but we are not about to agree to any AMD EULA so we are not sure if we should install them or not. We strongly suspect, but have not verified, that the vulkan-amdgpu is the same library AMD releases separately as AMDVLK on a regular basis. The license information in the package says it is MIT licensed, so it is extremely likely. The Mesa RADV Vulkan library GNU/Linux distributions ship with is superior to AMDVLK in terms of performance, so it is probably not worth installing AMDGPU-Pro just to get worse Vulkan performance. The vulkan-amdgpu-pro library looks distinctively different. It is named amdvlk64.so, just like AMDVLK and the library in the AMDGPU-Pro vulkan-amdgpu package, but it's not the same. The AMDGPU-Pro Vulkan package is tagged with a non-free AMD GPU PRO EULA license.

vulkan-amdgpu-pro lists apiVersion 1.2.169 and vulkan-amdgpu lists apiVersion 1.2.168. Both have "conformanceVersion" 1.2.0.2. The latest AMDVLK 2021.Q2.1 release lists apiVersion 1.2.173 and conformanceVersion = 1.2.2.2. vulkan-amdgpu from this brand new AMDGPU-Pro release is, in other words, older than the free software licensed AMDVLK version (if they are, indeed the same code-base as we suspect).

There's also a proprietary libgl-amdgpu-pro OpenGL library in the "Radeon Software" package. The Mesa RadeonSI OpenGL driver Linux distributions ship with has been really good and solid for years, so it does not seem all that exciting. We could run benchmarks and see if it has any performance advantages, but the license tag in it says AMD GPU PRO EULA and we would rather not agree to it.

You can read the two bullet-point "release notes" and download the AMDGPU Pro at www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-21-10 if you really want to agree to their EULA and you really want to download from there. The only "release notes" listed are "Introducing full support for Ubuntu 20.04.2" and "Developer preview of the Vulkan Ray Tracing Extensions supported on compatible AMD RDNA™ 2 based graphics products, to enable developing and testing applications that target these extensions", and you can acquire the driver package using wget without clicking on their download page. You may be better off if you don't go to AMD's website if you want the "Radeon™ Software for Linux®".

There does not seem to be any compelling reason to get the "Radeon Software", the Radeon Open Compute OpenCL library is available separately and so is the AMDVLK (non-Pro) library. There may be some advantage to having the proprietary "PRO" version of the AMDVLK library, so the proprietary driver package may be worth it if your really want that.

We have not actually installed any of the "Radeon™™™™ Software for Linux®®®®®®" software since that would probably require us to agree to the EULA. We're not about to do that so we just looked at the various files in a hex editor.

0.00
(0 votes)


avatar

Anonymous (cabe4f8a)

6 months ago
Score 0

It's standard EULA Boilerplate, and that's rather verbose and all inclusive anyways! But this website appears to be more about pontification and less about getting details sussed out properly for Linux end users!

You are not even trying to correct any inaccuracies concerning the ROCm Team's and separate AMD Linux Pro Driver team's implementation of that OpenCL Compute API support! So it's maybe why there can be not much gained other than some polemical content!
avatar

Chaekyung

6 months ago
Score 0++

Care to elaborate on what, if any, "inaccuracies" there are? Looks to me like there's two OpenCL libraries in there, one called "legacy" and one with the standard OpenCL library from ROCm. You could e-mail me if you want to explain more detailed, or write an article titled something like

As for accepting EULA's, it doesn't really matter how "standard" they are. Radeon™™™™ Software for Linux®®®®! since you seem to love your !'s and AMD seems to love their ™'s.
avatar

Anonymous (8c463969)

6 months ago
Score 0

@Chaekyung, No Radeon Pro Software for Linux has Legacy(For Polaris and earlier GPUs) and non legacy for for Vega/newer(Full RDNA2 Hopefully) GPUs. And ROCm is for OpenCL(Headless) so is not intended to work with GUI based Linux Applications(Blender 3D, Dark Table/Others).

I'm getting rather tired of the Linux/MESA folks being so wedded to prioritizing Linux/Gaming over Linux/Creative Graphics and Compute acceleration needs and Ray Tracing is a compute intensive workload that's accelerated on AMD's GPUs via OpenCL for Blender 3D's Cycles rendering and Blender 3D on Linux is a GUI based application.

And Blender 3D just announced Cycles X is going to depreciate OpenCL and currently the experimental Cycles X build is Nvidia OptiX/CUDA only. So how's that for some Proprietary Open Source Blender 3D and Nvidia's Very much more Proprietary OptiX/CUDA APIs.

So creative Folks on AMD GPUs have an Industry Wide De Facto Depreciated OpenCL API for compute acceleration on AMD's GPUs because the Linux folks have moved on Vulkan from OpenGL and Linux OpenCL clover was so very much abandoned by the Linux community. The only Implementation for getting OpenCL that's in anyways supported is those AMD "Pro" Linux Drivers where there is an Optional choice of installing the OpenCL GUI(Legacy and Current) OpenCL components and leave the MESA Vulkan/OpenGL portions the Open Source variants.


But AMD and Linux do not like creative GPU usage more that they love Gaming and it's the creative folks that are the ones responsible for the games creation in the first place! AMD's ignored Linux Creative Usage on its GPUs and the Linux Community allowed any community developed and Maintained OpenCL to die on the vine!

So one again it's the polemics of "Open Source" that matter and not the Open Source support to get an OpenCL branch from MESA/Other open source code base. And that's sure allowed Nvidia to foster that OptiX/CUDA totally proprietary domination over Linux and GPGPU/Compute acceleration(Ray Tracing/BVH calculations) and other Linux GPU Compute dependent creative applications!
avatar

Anonymous (3f4c28d240)

4 months ago
Score 0
Picasso owners find all this very confusing.
Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.