I recently setup Folding@Home on my Fedora 31 box and have it running on the CPU no problem but the package is not without issues...
It installs a SysV init script which SystemD generates a service file from it, but fahclient runs as the fahclient user but AFAICT SystemD doesn't know that, which I've read can cause problems with accessing the GPU.
So I went ahead and wrote a SystemD service file for fahclient, but no luck. I've also added fahclient to the video group, nope...
I've installed the packages I think I need from AMD (which are really EL 8 packages) but they all install into /opt so my current theory is that FAH isn't finding the libraries...
Current OpenCL error is: OpenCL: Not Detected: clGetDeviceIDs() returned -1
Anyone successfully got this working?
Hi, I've been able to run FAH on my GTX 1060. They say the Nvidia setup should be much easier than for AMD GPU, but it is still a pain ... :/
I had to configure a firewall, download proprietary NVIDIA drivers and install them (which means switching the nouveau kernel module for the proprietary one) and install some additional libraries (needed by FAH). I've lost a day trying to set it up, searching WHAT and HOW [1] has to be done - since the help from FAH project side is close to zero.
At the end, you have no idea, if it works or not, until the GPU actually starts computing. but since it may take hours to get a work unit for your GPU, you may find the correct configuration, but not knowing it ... It also means, it may have worked with the nouveau drivers, but I couldn't know ... it's a total mess. I highly discourage trying it unless they (FAH upstream) will have better support for ... everything. And probably also until they opensource the project again, so people for different distros could help them. They just stuck their head to the sand ... I have it running on Windows 7 now. :(
Here is my DNF history related to this task: dnf install ./fahclient-7.5.1-1.x86_64.rpm ./fahcontrol-7.5.1-1.noarch.rpm ./fahviewer-7.5.1-1.x86_64.rpm dnf install /usr/lib64/libcuda.so /usr/lib64/libOpenCL.so dnf install --disablerepo=* /tmp/akmods.i6AeSrCB/results/kmod-nvidia-340xx-5.5.8-200.fc31.x86_64-340.108-1.fc31.x86_64.rpm dnf remove xorg-x11-drv-nvidia-340xx-cuda-340.108-1.fc31.x86_64 dnf install nvidia-modprobe dnf install kernel-devel kernel-headers gcc make dkms acpid libglvnd-glx libglvnd-opengl libglvnd-devel pkgconfig dnf remove xorg-x11-drv-nouveau dnf remove *xorg*nvidia* dnf reinstall kernel-core dnf install opencl* libclc* install ocl-icd-devel.i686 install /usr/bin/clinfo
Hope you get the idea ...
[1] https://www.if-not-true-then-false.com/2015/fedora-nvidia-guide/
--
Michal Schorm Software Engineer Core Services - Databases Team Red Hat
--
On Thu, Apr 2, 2020 at 8:23 PM Richard Shaw hobbes1069@gmail.com wrote:
I recently setup Folding@Home on my Fedora 31 box and have it running on the CPU no problem but the package is not without issues...
It installs a SysV init script which SystemD generates a service file from it, but fahclient runs as the fahclient user but AFAICT SystemD doesn't know that, which I've read can cause problems with accessing the GPU.
So I went ahead and wrote a SystemD service file for fahclient, but no luck. I've also added fahclient to the video group, nope...
I've installed the packages I think I need from AMD (which are really EL 8 packages) but they all install into /opt so my current theory is that FAH isn't finding the libraries...
Current OpenCL error is: OpenCL: Not Detected: clGetDeviceIDs() returned -1
Anyone successfully got this working? _______________________________________________ users mailing list -- users@lists.fedoraproject.org To unsubscribe send an email to users-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org
On Fri, Apr 3, 2020 at 7:04 AM Michal Schorm mschorm@redhat.com wrote:
Hi, I've been able to run FAH on my GTX 1060. They say the Nvidia setup should be much easier than for AMD GPU, but it is still a pain ... :/
Ironically I just "upgraded" from a GTX 1050 to my RX580 to get away from the Nvidia proprietary drivers :)
I guess I could put in my GTX 1050 along side the RX580 and just use the GTX for FAH?
Thanks, Richard
Reporting some partial success...
Their amdgpu-install program is useless so I just created a local repository myself in /var/local and created a amdgpu.repo file in /etc/yum.repos.d/ to point to it.
I finally figured out I needed the orca library and not the amdgpu library. I thought my RX 580 was new enough but apparently mine falls into the "legacy" OpenCL driver.
That got clinfo working for both the system version and the amdgpu version:
Platform #0: Clover `-- Device #0: Radeon RX 580 Series (POLARIS10, DRM 3.36.0, 5.5.13-200.fc31.x86_64, LLVM 9.0.0) Platform #1: AMD Accelerated Parallel Processing `-- Device #0: Ellesmere Platform #2: Portable Computing Language `-- Device #0: pthread-AMD Ryzen 5 2600 Six-Core Processor Platform #3: Intel Gen OCL Driver
Notice the Ellesmere line. I get something similar from /opt/amdgpu-pro/bin/clinfo.
So they both think it's working. I'm still getting clGetDeviceIDs: (-1) from FAH and I have added fahclient to both the video and render groups. Also I ensured that's actually getting passed to FAHClient which does not work when using the SysV script.
# cat /proc/$(pidof FAHClient)/status | grep Groups Groups: 39 578 863
39 is "video" and 578 is "render".
For posterity here's my /etc/systemd/system/FAHClient.service:
# systemctl cat FAHClient.service # /etc/systemd/system/FAHClient.service # /run/systemd/generator.late/FAHClient.service
[Unit] Description=Folding@home Client After=remote-fs.target After=network-online.target Wants=network-online.target
[Service] Type=simple WorkingDirectory=/var/lib/fahclient User=fahclient ExecStart=/usr/bin/FAHClient /etc/fahclient/config.xml
Thanks, Richard
Ok, I THINK i may have got it working!!!
For posterity here are the amdgpu (amd proprietary) packages I had to install. I'm still running the open source drivers for video.
# rpm -qa | grep amdgpu libdrm-amdgpu-2.4.99-967956.el8.x86_64 libdrm-amdgpu-common-1.0.0-967956.el8.noarch clinfo-amdgpu-pro-19.50-967956.el8.x86_64 opencl-amdgpu-pro-comgr-19.50-967956.el8.x86_64 amdgpu-pro-core-19.50-967956.el8.noarch opencl-orca-amdgpu-pro-icd-19.50-967956.el8.x86_64 libopencl-amdgpu-pro-19.50-967956.el8.x86_64
There were two more things I had to do to get it working.
1. It seems most programs aren't smart enough to go through all the vendors in /etc/OpenCL/vendors and find the working one, they try the first and give up.
2. Once you have FAH running and it doesn't find a GPU the first time it stops looking and you can't add it manually. You have to edit /etc/fahclient/config.xml and remove the "GPU=False" line and restart FAHClient.
Thanks, Richard
I didn't find another good place to document the process for others so I created an Ask Fedora Topic:
https://ask.fedoraproject.org/t/setting-up-folding-home-to-use-opencl-with-t...
Thanks, Richard