AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

It seems that a lot of GPU problems revolve around specific versions of drivers. Though AMD has their own support structure, you can often learn from information reported by others who fold.

Moderators: Site Moderators, FAHC Science Team

calxalot
Site Moderator
Posts: 871
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by calxalot »

v7 linux uses user+group fahclient
v8 linux uses user+group fah-client
For a standard install on Windows, the client runs as you.
I don't know what the service install on Windows uses.

The linux installer should probably add the needed groups for gpu folding.
Someone should make a GitHub ticket for it
https://github.com/FoldingAtHome/fah-cl ... tet/issues
muziqaz
Posts: 901
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 7950x3D, 5950x, 5800x3D, 3900x
7900xtx, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by muziqaz »

My knowledge on this issue is very limited, so I wouldn't be able to formulate a GitHub issue which would make sense ;)
FAH Beta tester
Joe_H
Site Admin
Posts: 7854
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by Joe_H »

The need to add the user fahclient to the video and/or render groups came in recent versions of Linux. The v7 client and installer mostly date to supporting distros from the same era as Ubuntu 16.04 and 18.04.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
calxalot
Site Moderator
Posts: 871
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by calxalot »

I will find or create an issue for the groups.

The driver hell isn’t something appropriate for the installer to deal with, IMO.

https://github.com/FoldingAtHome/fah-cl ... issues/121
sbouwhuis
Posts: 14
Joined: Sun Feb 05, 2023 2:23 pm

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by sbouwhuis »

I am looking to create a script that can be used for another spare computer that this GPU will run in and be folding, hence the operating system reinstalls.
The downgrade earlier was motivated by the possibility that the necessary libraries would only work prior to them having support removed that would be compatible with the given hardware.

So amalgamating everything, the procedure looks currently as follows:
1: download and install .deb from https://download.foldingathome.org/rele ... 4bit/v7.6/
2: amdgpu-install with opencl option: legacy or rocr,legacy
3: sudo apt install ocl-icd-opencl-dev
4: clinfo <---if shows platform and device available, great install (reinstall) fahclient, and create gpu slot
5: sudo clinfo <---if shows platform/device available, proceed with step 6, else step 8
6: usermod video and render on fahclient, reboot, groups <--- reboot appears to be necessary
7: clinfo <---if shows platform and device available, great install (reinstall) fahclient, and create gpu slot
8: if sudo clinfo and clinfo don't report any platforms, devices "sudo apt install" everything rocm-opencl or ocl related (usually rocm-opencl-sdk installs everything)
9: check /var/lib/fahclient/log.txt

Does create gpu slot mean that config.xml needs to be edited manually?: add <slot id='1' type='GPU'/> to config.xml

Interestingly, the last step shows the following:

Code: Select all

$ sudo apt install rocm-opencl-sdk
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 rocm-llvm : Depends: python but it is not installable
             Depends: libstdc++-5-dev but it is not installable or
                      libstdc++-7-dev but it is not installable
             Depends: libgcc-5-dev but it is not installable or
                      libgcc-7-dev but it is not installable
             Recommends: gcc-multilib but it is not going to be installed
             Recommends: g++-multilib but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I have already done an update and an upgrade as sudo, and with the same result. Equally, still no indication the GPU is actually beig used other than for screendisplay. After completion of current work unit will retry this procedure.
calxalot
Site Moderator
Posts: 871
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by calxalot »

If the client detects OpenCL/cuda and your gpu, and you do not set gpu false in the config.xml, the client is supposed to create the gpu slot for you.
muziqaz
Posts: 901
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 7950x3D, 5950x, 5800x3D, 3900x
7900xtx, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by muziqaz »

sbouwhuis wrote: Sat Feb 25, 2023 9:30 am I am looking to create a script that can be used for another spare computer that this GPU will run in and be folding, hence the operating system reinstalls.
The downgrade earlier was motivated by the possibility that the necessary libraries would only work prior to them having support removed that would be compatible with the given hardware.

So amalgamating everything, the procedure looks currently as follows:
1: download and install .deb from https://download.foldingathome.org/rele ... 4bit/v7.6/
2: amdgpu-install with opencl option: legacy or rocr,legacy
3: sudo apt install ocl-icd-opencl-dev
4: clinfo <---if shows platform and device available, great install (reinstall) fahclient, and create gpu slot
5: sudo clinfo <---if shows platform/device available, proceed with step 6, else step 8
6: usermod video and render on fahclient, reboot, groups <--- reboot appears to be necessary
7: clinfo <---if shows platform and device available, great install (reinstall) fahclient, and create gpu slot
8: if sudo clinfo and clinfo don't report any platforms, devices "sudo apt install" everything rocm-opencl or ocl related (usually rocm-opencl-sdk installs everything)
9: check /var/lib/fahclient/log.txt

Does create gpu slot mean that config.xml needs to be edited manually?: add <slot id='1' type='GPU'/> to config.xml

Interestingly, the last step shows the following:

Code: Select all

$ sudo apt install rocm-opencl-sdk
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 rocm-llvm : Depends: python but it is not installable
             Depends: libstdc++-5-dev but it is not installable or
                      libstdc++-7-dev but it is not installable
             Depends: libgcc-5-dev but it is not installable or
                      libgcc-7-dev but it is not installable
             Recommends: gcc-multilib but it is not going to be installed
             Recommends: g++-multilib but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I have already done an update and an upgrade as sudo, and with the same result. Equally, still no indication the GPU is actually beig used other than for screendisplay. After completion of current work unit will retry this procedure.
Sigh, the last bit is the libs in the driver looking for older repo :( You might want to temporarily enable focal repos in your Software Updater. It should allow you to get dependencies you require. This might create, what Linux veterans (I'm not one of them) would call "a right mess" :D But for the purpose to get you folding, we have to try. Once you sorted dependencies, disable focal repos, that any future updates do not mix it up with jammy.
If opencl platform and device is detected by fahclient, it will create the slot itself, if not, you can do it manually to see if miracles happen. If all this still does not work, I'm afraid I cannot help anymore as I am already losing sight of what we tried or didn't, and I am running out of ideas. I feel that it is unfair to waste any more of your time with these kind of ideas :D The only way to fold for sure on your GPU would be Windows10
FAH Beta tester
sbouwhuis
Posts: 14
Joined: Sun Feb 05, 2023 2:23 pm

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by sbouwhuis »

calxalot wrote: Sat Feb 25, 2023 9:47 am If the client detects OpenCL/cuda and your gpu, and you do not set gpu false in the config.xml, the client is supposed to create the gpu slot for you.
That's what I thought. I see manual editing of confg files as a last ditch effort, neither which I am planning on scripting.
sbouwhuis
Posts: 14
Joined: Sun Feb 05, 2023 2:23 pm

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by sbouwhuis »

Have done a few reinstalls in the meantime, each time performing the steps in a slightly different order, but with the same results: the CPU is folding only, not the GPU. So that still leaves the question:
  1. Why is it that someone else was able to run F@H on Linux with the same RX 580 card, or rather, what will have changed that it is no longer supported? (viewtopic.php?p=345255&hilit=RX580#p345255)
  2. What is missing in the system requirements that my combination no longer works? Should they be revised? (https://foldingathome.org/support/faq/i ... ts/?lng=en)
  3. Is the purpose of the GPU whitelist to list GPUs that have worked at some point, under highly specific circumstances during a timeframe with highly specific start and end date? I have 5 graphics cards, of which 4 are whitelisted, but exactly zero do any folding, so it is unclear to me why such a list would be maintained?
muziqaz
Posts: 901
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 7950x3D, 5950x, 5800x3D, 3900x
7900xtx, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by muziqaz »

a) even with supported GPUs AMD GPU folding on Linux is adventure and a half, and is strongly advised against. The support was dropped recently on driver side. Why? I cannot say. So the person who managed to get it running, probably was running on older versions. My knowledge is limited when it comes to mixing different driver versions.
b) since your system is not being exposed as opencl capable, Fahclient cannot see it as opencl platform.
c) the purpose of GPU.txt is to tell Fahclient that a GPU is theoretically capable of folding. That is very true in windows where driver installation is much simpler and it is up to GPUs hardware features that decides if GPU is folding or not. In Linux GPU hardware features must be exposed on so many levels, that it is not even funny any more
GPU.txt just tells Fahclient that GPU is not too slow for fah, has minimum opencl 1.2 support and has DP Floating point support. It also tells Fahclient/server what species (performance level) that GPU is.
GPU.txt is maintained by humans, and we add new GPUs to the list as they come out, we remove old GPUs as their support is removed or they become too slow for fah. And sometimes we adjust species levels.

Your issue is between your GPU and Linux OS. If you had windows installed your GPU would be able to contribute.
FAH Beta tester
Joe_H
Site Admin
Posts: 7854
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by Joe_H »

sbouwhuis wrote: Wed Mar 08, 2023 10:14 am Why is it that someone else was able to run F@H on Linux with the same RX 580 card, or rather, what will have changed that it is no longer supported? (viewtopic.php?p=345255&hilit=RX580#p345255)
That was three years ago. In that time there have been updates to the drivers created by AMD, the GPU folding core has been updated, and unless you are running an older Linux version and kernel, that has also changed. Ultimately it comes down to the fact that AMD ends full support for their GPUs under the Linux OS after a few years and keeps up support longer for Windows. This has been an ongoing problem with folding on AMD GPUs and using Linux for at least a decade.

As was posted a couple weeks ago in this topic, about a year ago AMD broke OpenCL support using Linux driver downloads for the RX 580 and related GPUs. They then totally dropped support in the next major version of the drivers. So getting the whole thing working depends on having older drivers, probably an older linux kernel, and getting all of the other dependencies matching for the kernel and drivers. Then hopefully that doesn't mess up with the GPU folding core dependencies.

I wish you luck, but AMD has not made it easy for you. Personally I would like to see them offer more than 5 years of full support for their GPUs with Linux, Windows appears to get at least 7 or 8 years. That lack of real support beyond just video drivers has resulted in AMD folding under Linux all but disappearing. Currently only 80 are reported by the F@h OSStats - https://stats.foldingathome.org/os. Nearly 2400 are reported folding under Windows. Nvidia's support for drivers for Linux while not great has been more consistent than AMD's and reliably supports older cards still.

As for point C, the GPUs.txt file is OS agnostic. Your RX 580 still would work under Windows as AMD still is providing full support with OpenCL, a least for now.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
tchiers
Posts: 23
Joined: Tue Oct 23, 2018 4:23 am

Re: AMD Radeon RX 580 not runnning on Linux 64-bits, FAHClient v7.6

Post by tchiers »

I just stood up a fresh, headless Ubuntu 22.04 server with an RX 570 in it.
Here is the fahclient install as recorded in my bash history.
The only non-straightforward parts pertained to working around
1. render group permission
2. issue of auto-imported service file clashing with systemd: viewtopic.php?p=303571#p303571

Code: Select all

#install AMD drivers, only for openCL
wget https://repo.radeon.com/amdgpu-install/22.40.3/ubuntu/jammy/amdgpu-install_5.4.50403-1_all.deb
sudo apt install ./amdgpu-install_5.4.50403-1_all.deb 
sudo amdgpu-install --usecase=opencl --opencl=legacy

#install FAH client
wget https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v7.6/fahclient_7.6.21_amd64.deb
sudo apt install ./fahclient_7.6.21_amd64.deb 

#add fahclient to render group
sudo  usermod -G render fahclient

#disable systemd auto-translated service, cannot run fahclient as user fahclient
sudo systemctl stop FAHClient.service 
sudo systemctl disable FAHClient.service 

#reboot
sudo shutdown -r now

#replace with native fah.service
sudo nano /etc/systemd/system/fah.service
sudo systemctl daemon-reload
sudo systemctl start fah.service
fah.service:

Code: Select all

[Unit]
Description=Folding@Home for Systemd
After=remote-fs.target
After=network-online.target
Wants=network-online.target


[Service]
Type=simple
WorkingDirectory=/var/lib/fahclient
User=fahclient
ExecStartPre=!/usr/bin/touch /var/run/fahclient.pid
ExecStartPre=!/bin/chown fahclient /var/run/fahclient.pid
ExecStart=/usr/bin/FAHClient /etc/fahclient/config.xml --pid-file=/var/run/fahclient.pid

[Install]
WantedBy=default.target
Post Reply