Zorin Forum

AMD Radeon OpenCL

Ah... right... the command works with the AMDGPU driver, not the AMDGPUPRO driver...
I was sniffing around and found this guide:

Of which the conclusion left me chuckling a bit.

Oh yes, I've read that one, and it left me scratching my head. It's from 2019, things don't seem better in Ubuntu land now. Similar problems with Fedora.
I'm guessing since the point of this exercise is to only install the opencl driver portion, and leave the kernel driver alone, my first try should be with the opencl legacy switch. Here goes nothing...

Well, at least it was quick: Removed the --no-dkms switch and got this:

E: Command line option --headless is not understood in combination with the other options

1 Like

Are you performing that command on the Proprietary AMDGPU driver? Or on the Pro driver?
Or are you performing it in terminal, not within the AMDGPU driver directory?

It is frustrating.
AMD... openly and on the surface... shows support for Linux. Beneath the surface, it is less so.
AMD is fiercely protective on the proprietary drivers. As much as Nvidia has been in the past.
At one time... Nvidia was Linux-Bane. The times have changed slightly, to where Nvidia is easier to deal with than AMD.
Intel currently remains the only truly cooperative manufacturer.

An analogy may be the Microsoft Secure Boot.
MS signed on Linux packages for the BIOS Secure Boot, showing support and cooperation.
How sweet.
Except... they did not sign all the packages. Only... most of them. So, some packages will still not work on Secure Boot. And MS knows it.
AMD is similar. They provide enough of the drivers for Generic Working. Most peoples machines will work just fine. But not everyones.

Or are you performing it in terminal, not within the AMDGPU driver directory?
In terminal, cd into the AMDGPU driver directory.clinfo

Just ran:

amdgpu-install --opencl=rocr

It installed, but clinfo returned:

Number of platforms                               1
  Platform Name                                   AMD Accelerated Parallel Processing
  Platform Vendor                                 Advanced Micro Devices, Inc.
  Platform Version                                OpenCL 2.2 AMD-APP (3406.0)
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_amd_event_callback 
  Platform Host timer resolution                  1ns
  Platform Extensions function suffix             AMD

  Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 0

NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...)  No platform
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...)   No platform
  clCreateContext(NULL, ...) [default]            No platform
  clCreateContext(NULL, ...) [other]              No platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL)  No devices found in platform

amdgpu-install --vulkan=amdvlk,pro
clinfo
Number of platforms                               1
  Platform Name                                   AMD Accelerated Parallel Processing
  Platform Vendor                                 Advanced Micro Devices, Inc.
  Platform Version                                OpenCL 2.2 AMD-APP (3406.0)
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_amd_event_callback 
  Platform Host timer resolution                  1ns
  Platform Extensions function suffix             AMD

  Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 0

NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...)  No platform
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...)   No platform
  clCreateContext(NULL, ...) [default]            No platform
  clCreateContext(NULL, ...) [other]              No platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL)  No devices found in platform

Still nothing on reboot, although it DID reboot.

I'd hardly consider this a case of good support from AMD. But I do find that it is strange that it was so easy on Manjaro. One package, and boom! It just worked. And of course, the install of Zorin 16 core on my Nvidia thinkpad worked just fine. So I guess I need to find a low power Nvidia card for my pc to get this to happen. In the meantime, I'll continue on Zorin without openCL.

Can you try the 20.50 AMD driver with the 5.16 kernel?

This was 21.50, where can I get the 20.50? I'm only seeing 21.40 on the previous versions of the AMD site.

I haven't updated a kernel on ZOrin. Do I need a tool like mainline? or is there a utility in Zorin. Also, is the kernel selectable in GRUB at boot. Thanks

Took a look with Synaptic, nothing newer that 5.13. Do I need to add another repository?

https://drivers.amd.com/drivers/linux/amdgpu-pro-20.50-1234664-ubuntu-20.04.tar.xz

You can try the guide here:

As this will help ByPass the Libc6 error.

Yes, absolutely. But if you install a Later Kernel, it will automatically boot into the latest kernel unless you take steps to not have it do so:

1 Like

Just to be clear (I'm an old man you know)
Do I need to undo anything I've done to date prior to taking these actions?
Is the kernel install the first step?
Am I starting the process over with the driver installation?
Thanks

The installs can be done in Either order.
If it was me... I would remove any previous installs of AMD Drivers - Just to be Sure... Since there are times when having multiple AMD drivers can conflict with each other.

Installed kernel 5.16 xx, downloaded the 20.50 PRO drivers and ran the install:

marcs@marcs-HP-ENVY-Desktop-795-00xx:/usr/bin/amdgpu-pro$ ./amdgpu-install --opencl=legacy --headless --no-dkms
deb [ trusted=yes ] file:/var/opt/amdgpu-pro-local/ ./
Get:1 file:/var/opt/amdgpu-pro-local ./ InRelease
Ign:1 file:/var/opt/amdgpu-pro-local ./ InRelease
Get:2 file:/var/opt/amdgpu-pro-local ./ Release [816 B]
Get:2 file:/var/opt/amdgpu-pro-local ./ Release [816 B]
Get:3 file:/var/opt/amdgpu-pro-local ./ Release.gpg
Ign:3 file:/var/opt/amdgpu-pro-local ./ Release.gpg
Get:4 file:/var/opt/amdgpu-pro-local ./ Packages [114 kB]
Hit:5 http://us.archive.ubuntu.com/ubuntu focal InRelease
Get:6 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]                                                                      
Get:7 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]                                                                       
Hit:8 https://repo.radeon.com/amdgpu/21.50.2/ubuntu focal InRelease                                                                             
Hit:9 http://ppa.launchpad.net/zorinos/apps/ubuntu focal InRelease                                                                              
Get:10 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease [108 kB]                                           
Hit:11 https://repo.radeon.com/rocm/apt/5.0.2 ubuntu InRelease                                                                                  
Hit:12 http://ppa.launchpad.net/zorinos/drivers/ubuntu focal InRelease                                                                          
Hit:13 https://packages.zorinos.com/stable focal InRelease
Hit:14 https://packages.zorinos.com/patches focal InRelease
Hit:15 http://ppa.launchpad.net/zorinos/patches/ubuntu focal InRelease
Hit:16 https://packages.zorinos.com/apps focal InRelease
Hit:17 https://packages.zorinos.com/drivers focal InRelease
Hit:18 http://ppa.launchpad.net/zorinos/stable/ubuntu focal InRelease
Hit:19 https://packages.zorinos.com/premium focal InRelease
Fetched 336 kB in 3s (114 kB/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Selected version '20.50-1234664' (localhost [all]) for 'amdgpu-pin'
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 linux-headers-5.16.18-051618-generic : Depends: libc6 (>= 2.34) but 2.31-0ubuntu9.7 is to be installed
                                        Depends: libssl3 (>= 3.0.0~~alpha1) but it is not installable
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Selected version '20.50-1234664' (localhost [all]) for 'amdgpu-pro-pin'
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 linux-headers-5.16.18-051618-generic : Depends: libc6 (>= 2.34) but 2.31-0ubuntu9.7 is to be installed
                                        Depends: libssl3 (>= 3.0.0~~alpha1) but it is not installable
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
ERROR: Unable to install pin package.
This driver may not support the running operating system.

Then did this:

/usr/bin/amdgpu-pro$ sudo apt --fix-broken install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  chromium-codecs-ffmpeg-extra gcc-7-base gcc-8-base gstreamer1.0-vaapi heif-gdk-pixbuf libasan4 libatomic1:i386 libbsd0:i386 libcilkrts5
  libdrm-amdgpu1:i386 libdrm-dev libdrm-nouveau2:i386 libdrm-radeon1:i386 libdrm2:i386 libedit2:i386 libelf-dev libelf1:i386 libexpat1:i386
  libffi7:i386 libfwupdplugin1 libgcc-7-dev libllvm12:i386 libmpx2 libomxil-bellagio-bin libomxil-bellagio0 libpciaccess-dev libpython2-stdlib
  libpython2.7-minimal libpython2.7-stdlib libssl1.1:i386 libstdc++-7-dev libstdc++6:i386 libubsan0 libvdpau1:i386 libvulkan1:i386
  libwayland-client0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386
  libxcb-present0:i386 libxcb-randr0:i386 libxcb-shm0:i386 libxcb-sync1:i386 libxcb-xfixes0:i386 libxcb1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxshmfence1:i386 libxxf86vm1:i386 mesa-vdpau-drivers:i386 mesa-vulkan-drivers:i386 python-is-python2 python2
  python2-minimal python2.7 python2.7-minimal vdpau-driver-all:i386
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  linux-headers-5.16.18-051618-generic
0 upgraded, 0 newly installed, 1 to remove and 1 not upgraded.
1 not fully installed or removed.
After this operation, 25.1 MB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.

Am I getting closer? I'm done for the night, thanks, please let me know if there is something else to try.

1 Like

Well, so much for that method avoiding the Libc6 dependency error...
So annoying. Ubuntu could fix that so easily... and simply refuses to do so.
Let me research and ensure a safe method of install without that error that you can reference in the mornin.'

This post reminded me of Liqourix Kernel, which I had forgotten about:

Details and install here:

The other option is to use the indomitable Tuxinvaders's patched kernel:

sudo add-apt-repository ppa:tuxinvader/lts-mainline -y

sudo apt update && sudo apt install -y linux-generic-5.17

One question- with the use of a patched or out of repro kernel, what happens with upgrades? Do the kernels get point upgrades, does Zorin install new kernels automatically, and does the AMD driver package need to be reinstalled?

This just came up- EVGA GTX 1060 3gig available which fits my computer and power supply capabilities. Perhaps this is a way forward? Moves me off AMD to NVIDIA. Performance is a little better, and price /local availability is good. Am I right in assuming that swapping cards and installing the NVIDIA drivers gets me past the AMD mods we've done?

Yes, it would since it bypasses the AMD issue entirely.
I am running EVGA GTX 3060 - it has a bit more vRAM in it. It works flawlessly on Zorin on the current Zorin Kernel.

The system will defer to the higher kernel. In this case, the Liquorix and the TuxInvader mainline kernels both are higher kernel versions. So even if Zorin OS updates push through a kernel upgrade, the higher installed kernel would remain the priority kernel booted into.
So, you would not need to reinstall the AMD drivers, since the higher kernel would not be replaced.
Both the TuxInvader and Liquourix kernels use DKMS. That should be fine... So, that really boils down to whether the installed AMD drivers were installed against DKMS and whether the TuxInvader or Liquorix kernels get upgrades.

That was not one question... :wink:

Well, it started as one question... :question: :grey_question:
Thanks for the multiple answers.

I'm going to see If I can get that Nvidia card. Will keep you posted!

1 Like

Me again. GTX_1060 Nvidia card is installed, powered up, Zorin booted on nouveau drivers. Many proprietary drivers to choose from. Advice on forum is to use newest for cards after 2013. Would that be 510 on the 5.13 kernel?
Thanks

510 is fine - that is what I am using, too.

I recommend avoiding the 470 (Proprietary Tested). It has had a lot of problems reported with it.

So far so good. OpenCL is working, double checked with a darktable export, seems good there as well.

Thanks for all your help. I'd like you to do the honors of selecting the "Solution" thread. :laughing: :sweat_smile: :rofl:

I am new to Linux. Though I am closer to two years in, now... I still consider myself a novice.
Not long ago, when I switched over to Linux from Windows, the general trend was that Nvidia was troublesome.
Change is a funny thing, because changes can often happen quietly in the background and not everyone gets the memo. Nvidia experience on Linux has rather quickly improved in the last year and a half or so.
Which really is a good demonstration that our ideas and recommendations on the forum need to stay Up To Date.

I marked the solution for your post in which you opted for a better supported graphics card.

1 Like