I saw that AMD finally released OpenCL support for Ubuntu 20.04, so I installed the new driver, but still cannot get FAHclient to recognize it. Here's what I see in the log:
0.612471 [opencl_init] discarding device 1 `AMD Radeon RX 5700 XT (NAVI10, DRM 3.35.0, 5.4.0-7634-generic, LLVM 9.0.1)' - The OpenCL driver doesn't provide image support. See also 'clinfo' output.
0.612478 [opencl_init] OpenCL successfully initialized.
0.612481 [opencl_init] here are the internal numbers and names of OpenCL devices available to darktable:
0.612484 [opencl_init] 0 'gfx1010'
0.612492 [opencl_init] FINALLY: opencl is AVAILABLE on this system.
0.612493 [opencl_init] initial status of opencl enabled flag is ON.
May I suggest that you uninstall FAHClient and then reinstall it to see if it detects the GPU or not? From what I have read, the FAHClient does a decent job of GPU detection when it is first installed. Also, can you please post the new log file too to see what the client does?
ETA:
Now ↞ Very Soon ↔ Soon ↔ Soon-ish ↔ Not Soon ↠ End Of Time
Unfortunately that didn't work either. I removed FAHclient and then reinstalled it, but the GPU still isn't found. Here's the first-time startup information from the log:
I think you're on to something there! I just tried to dump a bad work unit by running "FAHClient --dump 0" on the command line (which didn't work, but that's another story), and the below was the response - note the two OpenCL devices now appearing at the bottom. I'm thinking that I might be able to just add user fahclient to the group that allows OpenCL access, but I'm not sure what group that would be. Running it as root would probably do it too, but I'll have to try that out later. Thanks!
Some Linux versions require the fahclient user account to be added to the 'render' group. You may also need to designate the 'render' or 'video' group as the primary group the account belongs to based on information that has been posted to the forum.
iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
you probably have to add a systemd service unit, see viewtopic.php?f=81&t=33353 scroll down to 'Fixing the permissions issue (clGetDeviceIDs() returned -1)'
Thanks for all of the suggestions! I tried just adding user fahclient to the video and render groups, but that didn't seem to make any difference. Then I saw mad_martn's post, and realized that was probably why the group additions weren't working. So I:
Purged my fahclient installation and reinstalled from scratch
Added user fahclient to groups video and render
Created a systemd startup file for FAHClient.service
Rebooted
This resulted in a black screen , but apparently everything started up normally since I was able to ssh in... just the video wasn't working. This may be one of the side-effects of doing OpenCL calculations on my only video card, but not sure about that. But looking at the log FAHClient definitely found the card and recognized it as supporting OpenCL, I just need to figure out now if it's possible to actually use the monitor and do OpenCL calculations at the same time. But I appreciate all of the help!
zookeeny wrote:
This resulted in a black screen , but apparently everything started up normally since I was able to ssh in... just the video wasn't working. This may be one of the side-effects of doing OpenCL calculations on my only video card, but not sure about that. ...
did you have a Linux kernel update in between? ... just guesswork, i'm using debian bullseye/testing and only use the opencl bits from the amdgpu-pro ubuntu package, i had black screens after reboot (xserver fail caused by amdgpu drm crash) with some combinations of kernel and opencl packages coming from the AMD ubuntu package
Your Linux OS might have defaulted to the IGP of other GPU for the GUI?
Your main GPU should not give a blank screen.
Did you see any pre OS loading going on?
Can you get into the bios?
If you have one of the latest X570 or X400 series motherboards, they tend to be very flaky.
A lot of bugs that make no sense.
I believe the AMD overclocking tools, use up too much space of the BIOS opcode, causing people to sometimes have to reinstall the latest BIOS upgrade, to reset it.
Thanks again to everyone for all the help! After messing with things a bit further I finally got both the CPU and GPU slots folding. I haven't tried rebooting yet, so I don't know if the black screen on startup will be an issue again, but I'll cross that bridge when I get to it. Here are the steps that worked for me:
Installed only the OpenCL component of amdgpu ("sudo amdgpu-install --open-cl=pal --headless --no-dkms")
Stopped FAHClient ("sudo /etc/init.d/FAHClient stop" - for some reason "sudo systemctl stop FAHClient" didn't work for me, although I think it should have)
Made video the primary group for user fahclient ("sudo usermod -a -g video fahclient")
Added supplemental group render for user fahclient ("sudo usermod -a -G render fahclient")
Manually updated /etc/fahclient/config.xml to add the new GPU slot (I had to do this because FAHControl requires a python package my system can't install)
Restarted FAHClient through systemd ("sudo systemctl daemon-reload" and "sudo systemctl start FAHClient.service")
One caveat: I'm running Pop_OS, which is derived from Ubuntu, but there may be some minor differences because of that.
It took a little while for FAHClient to find an available GPU work unit, but it finally did, and is about 20% through it. Success!