Linux OpenCL Support ?

Message boards : Number crunching : Linux OpenCL Support ?
Message board moderation

To post messages, you must log in.

AuthorMessage
sterling
Volunteer tester

Send message
Joined: 11 Jul 00
Posts: 2
Credit: 1,148,227
RAC: 0
United States
Message 2022347 - Posted: 8 Dec 2019, 11:47:48 UTC

I've been trying for a week to get seti working.
It seems that it refuses to download any gpu binary files ie: setiathome_8.22_x86_64-pc-linux-gnu__opencl_ati5_sah
I had a hacked setup downloading tasks and working if I created a app_info.xml with setiathome_8.04_x86_64-pc-linux-gnu__opencl_ati5_sah,
but the same thing fails if I try to use 8.22 :
SETI@home: Notice from BOINC
Task blc14_2bit_guppi_58691_69181_HIP39096_0055.14995.0.21.44.210.vlar_1 postponed for 300 seconds: Can't read CL file

Why can't I just add the seti project to boinc and start downloading opencl tasks and working ?
einstein, amicable numbers, and numberfields work out of the box no problems.

Do I really need to manually download every file for the projects dir and setup an app_info.xml file ?
ID: 2022347 · Report as offensive
Richard Haselgrove Project Donor
Volunteer tester

Send message
Joined: 4 Jul 99
Posts: 14472
Credit: 200,643,578
RAC: 874
United Kingdom
Message 2022348 - Posted: 8 Dec 2019, 12:03:27 UTC - in response to Message 2022347.  
Last modified: 8 Dec 2019, 12:04:18 UTC

No. What you will need to do is the download and install a compatible OpenCL programming language runtime support package, to work alongside your graphics driver.
ID: 2022348 · Report as offensive
Profile Keith Myers Special Project $250 donor
Volunteer tester
Avatar

Send message
Joined: 29 Apr 01
Posts: 13139
Credit: 1,160,866,277
RAC: 1,873
United States
Message 2022361 - Posted: 8 Dec 2019, 16:25:23 UTC - in response to Message 2022347.  

You need to install the OpenCL component of your AMD drivers. Something like:
$ ./amdgpu-install -y --opencl=legacy


These AMD docs show the installation commands for OpenCL

https://amdgpu-install.readthedocs.io/en/latest/install-overview.html?highlight=OpenCL

https://amdgpu-install.readthedocs.io/en/latest/install-script.html?highlight=OpenCL#specifying-an-opencl-implementation
Seti@Home classic workunits:20,676 CPU time:74,226 hours

A proud member of the OFA (Old Farts Association)
ID: 2022361 · Report as offensive
sterling
Volunteer tester

Send message
Joined: 11 Jul 00
Posts: 2
Credit: 1,148,227
RAC: 0
United States
Message 2022460 - Posted: 9 Dec 2019, 8:32:04 UTC
Last modified: 9 Dec 2019, 8:36:45 UTC

I'm using ROCm in linux on an unsupported distro. I created my own packages, because that's the only option.

This is how I was able to trick boinc into letting me download seti workunits and the binaries:

cd ~/boinc-home/projects/setiathome.berkeley.edu
wget http://boinc2.ssl.berkeley.edu/beta/download/setiathome_8.22_x86_64-pc-linux-gnu__opencl_ati5_sah
wget http://boinc2.ssl.berkeley.edu/beta/download/MultiBeam_Kernels_rXXXX.cl XXXX = svn revision used to build the binary supposdely. 3584
Then I have to create a custom app_info.xml

My laptop I used setiathome_8.22_x86_64-pc-linux-gnu__opencl_atiapu_sah

It works after doing this, I guess this is my only option unless I become an ubuntu user or whatever distro AMD or whoever else likes.

I'm not sure what is being checked differently for seti causing it to not work out of the box. Other projects don't have a problem with opencl/ROCm.
ID: 2022460 · Report as offensive
Profile [A.S.a.M.]koschi

Send message
Joined: 8 Jan 01
Posts: 15
Credit: 5,947,861
RAC: 15
Message 2022468 - Posted: 9 Dec 2019, 11:54:04 UTC
Last modified: 9 Dec 2019, 11:56:37 UTC

Not all projects work with ROCm, eg. Milkyway fails straight away with CL errors as well.
Einstein and others work, though I found ROCm OpenCL is still a bit slower than the AMDGPU-PRO OpenCL.

I'm running Ubuntu 19.04, which is also unsupported by the official package.
I created http://kerbodyne.com/boinc/create_amdgpu-ocl-pkg.sh (based on an Arch build script I found) to extract the OpenCL libs from the official driver archive and build a package that just installs these few files.
Maybe it can serve as a reference for your own Slack version, so you can finally get the "real driver" working on your machine.
ID: 2022468 · Report as offensive
Profile Justin Turner Arthur

Send message
Joined: 20 Oct 03
Posts: 12
Credit: 3,929,052
RAC: 2
United States
Message 2024789 - Posted: 24 Dec 2019, 6:48:18 UTC - in response to Message 2022468.  

It's neat to see you managed to get the stock multibeam OpenCL app working with ROCm. The reason this doesn't happen automatically is that the the official SETI@Home plan classes that pick the apps for you are based on OpenCL and core driver versions that don't have any overlap with the versions reported by the ROCm OpenCL Runtime. Only the Astropulse app will automatically chose the ROCm OpenCL cards because of the flexible of version constraint in the opencl_ati_100 plan class the Astropulse OpenCL app uses.

You can see the beta plan_class_spec.xml here for the version constraints that have been preventing ROCm users from participating.
ID: 2024789 · Report as offensive

Message boards : Number crunching : Linux OpenCL Support ?


 
©2022 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.