AMD GPU Computation Error


Message boards : Unix/Linux : AMD GPU Computation Error

Message board moderation

To post messages, you must log in.
AuthorMessage
Felix T.

Send message
Joined: 29 Jun 19
Posts: 3
Credit: 1,501,693
RAC: 10,375
Message 8946 - Posted: 14 Apr 2025, 10:59:38 UTC
Hi everyone, I tried to find similar situations in this message board and on boinc forums, but had not much insight, hopefully this is not a replication of an already solved problem.

When computing for Asteroids@Home, I am getting Computation Errors for units that are 0.1 CPU + AMD/ATI GPU with Linux, with Windows it seems to work OK. My hardware is a Ryzen 5600G and Nvidia RTX2060. CPU only, no problem, 0.01CPU + NVIDIA GPU, no problem, only tasks using the integrated AMD GPU fail.

How can I troubleshoot this error in more detail an find out what is missing with my Linux installation to make the AMD GPU tasks work too? Many thanks for your help!
ID: 8946 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ahorek's team
Volunteer developer
Volunteer tester

Send message
Joined: 1 Jan 13
Posts: 144
Credit: 12,864,117
RAC: 16,259
Message 8947 - Posted: 14 Apr 2025, 15:49:19 UTC
That's because you're using Clover, which has already been deprecated. Those drivers were never usable for more than "detecting the GPU name"... https://www.phoronix.com/news/RadeonSI-Rusticl-Only

For OpenCL, you'll need a proper AMD driver (ROCM). Unfortunately, it seems that some iGPUs like AMD Ryzen™ 5 5600G are only supported on Windows https://www.amd.com/en/support/downloads/drivers.html/processors/ryzen/ryzen-5000-series/amd-ryzen-5-5600g.html

So, if you want to use the iGPU, you’ve only got two options: switch to Windows or use RustiCL, but RustiCL still has some issues, and even if it works, it could be slower than proprietary drivers.
The last time I checked, the Asteroids app didn’t run properly on my iGPU, but you’ll still have a much better shot at getting OpenCL things working on Linux with RustiCL than with Clover.
ID: 8947 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ahorek's team
Volunteer developer
Volunteer tester

Send message
Joined: 1 Jan 13
Posts: 144
Credit: 12,864,117
RAC: 16,259
Message 8948 - Posted: 14 Apr 2025, 16:12:11 UTC
btw RustiCL may already be supported on your system, you can check it:
export RUSTICL_ENABLE=radeonsi
export RUSTICL_FEATURES=fp64
clinfo


However, even if you enable it, the current Asteroids app won’t recognize it. The restriction will be removed in the next release, though there's still a low chance it will work correctly.
ID: 8948 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Felix T.

Send message
Joined: 29 Jun 19
Posts: 3
Credit: 1,501,693
RAC: 10,375
Message 8949 - Posted: 15 Apr 2025, 8:28:57 UTC - in response to Message 8948.  
Thanks so much for your fast reply - This is some really insightful information!
I checked my package manager and it looks like an implementation of RustiCL is available as "Mesa-libRusticlOpenCL" with openSUSE Tumbleweed.

I did install the package earlier, but would you have any advice how to activate it properly?
No problem if asteroids won't recognise it now, but would like to learn how to use it in future releases even if chances are low. Cheers!
ID: 8949 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ahorek's team
Volunteer developer
Volunteer tester

Send message
Joined: 1 Jan 13
Posts: 144
Credit: 12,864,117
RAC: 16,259
Message 8950 - Posted: 15 Apr 2025, 12:18:02 UTC - in response to Message 8949.  
Verify if your GPU is supported by running clinfo (you might need to set environment variables to activate it). The output should look like this:

Number of platforms                               1
  Platform Name                                   rusticl
  Platform Vendor                                 Mesa/X.org
  Platform Version                                OpenCL 3.0
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd...
  Platform Extensions with Version                cl_khr_icd                                                       0x400000 (1.0.0)
...
  Platform Numeric Version                        0xc00000 (3.0.0)
  Platform Extensions function suffix             MESA
  Platform Host timer resolution                  1ns

  Platform Name                                   rusticl
Number of devices                                 1
  Device Name                                     AMD Radeon Graphics (radeonsi, raphael_mendocino, LLVM 20.1.0, DRM 3.61, 6.14.1-1561.native)
  Device Vendor                                   AMD
  Device Vendor ID                                0x1002
  Device Version                                  OpenCL 3.0
  Device UUID                                     00000000-1300-0000-0000-000000000000
  Driver UUID                                     414d442d-4d45-5341-2d44-525600000000
  Valid Device LUID                               No
  Device LUID                                     0000-000000000000
  Device Node Mask                                0
  Device Numeric Version                          0xc00000 (3.0.0)
  Driver Version                                  25.1.0-devel
...


Primegrid and Einstein apps should work. Asteroids should be supported in theory, but there are some issues that need to be resolved first. Simply enabling it isn’t sufficient, as the app was either crashing or producing invalid results.
ID: 8950 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Felix T.

Send message
Joined: 29 Jun 19
Posts: 3
Credit: 1,501,693
RAC: 10,375
Message 8951 - Posted: 16 Apr 2025, 9:40:09 UTC - in response to Message 8950.  
Many thanks for your advice, it sounds like it might be worth it to pursue this at a later point. Regardless I followed your earlier instructions:

 
export RUSTICL_ENABLE=radeonsi                                                                                                                         export RUSTICL_FEATURES=fp64                                                                                                                                clinfo 


Which then gave me these outputs. It seems like only the NVIDIA GPU is available?
Apologies for the messy output I tried to mimic the format example you have earlier.

Number of platforms                               1
  Platform Name                                   NVIDIA CUDA
  Platform Vendor                                 NVIDIA Corporation
  Platform Version                                OpenCL 3.0 CUDA 12.8.97
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_fp64 cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_nv_create_buffer cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_device_uuid cl_khr_pci_bus_info cl_khr_external_semaphore cl_khr_external_memory cl_khr_external_semaphore_opaque_fd cl_khr_external_memory_opaque_fd cl_khr_semaphore
  Platform Extensions with Version                cl_khr_global_int32_base_atomics                                 0x400000 (1.0.0)
...
  Platform Numeric Version                        0xc00000 (3.0.0)
  Platform Extensions function suffix             NV
  Platform Host timer resolution                  0ns
  Platform External memory handle types           Opaque FD
  Platform Semaphore types                        <gatherPlatformInfo:11: get CL_PLATFORM_SEMAPHORE_TYPES_KHR size : error -30>
  Platform External semaphore import types        Opaque FD
  Platform External semaphore export types        <gatherPlatformInfo:13: get CL_PLATFORM_SEMAPHORE_EXPORT_HANDLE_TYPES_KHR : error -30>

  Platform Name                                   NVIDIA CUDA
Number of devices                                 1
  Device Name                                     NVIDIA GeForce RTX 2060
  Device Vendor                                   NVIDIA Corporation
  Device Vendor ID                                0x10de
  Device Version                                  OpenCL 3.0 CUDA
  Device UUID                                     0c3ba501-373e-bf6f-a6ae-2a77f406d149
  Driver UUID                                     0c3ba501-373e-bf6f-a6ae-2a77f406d149
  Valid Device LUID                               No
  Device LUID                                     0000-000000000000
  Device Node Mask                                0
  Device Numeric Version                          0xc00000 (3.0.0)
  Driver Version                                  570.133.07
  ...
ID: 8951 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ahorek's team
Volunteer developer
Volunteer tester

Send message
Joined: 1 Jan 13
Posts: 144
Credit: 12,864,117
RAC: 16,259
Message 8952 - Posted: 16 Apr 2025, 13:14:30 UTC - in response to Message 8951.  
Is there a "rusticl.icd" file in your OpenCL vendor list?
ls /etc/OpenCL/vendors
ls /usr/share/OpenCL/vendors


1/ If the file is missing, your Mesa version may be compiled without rusticl support (it depends on the distribution, and I'm not familiar with the GNOME linux)
2/ you should at least see rusticl as a platform without available devices in case the GPU isn't supported

Unfortunately, AMD has opted not to support OpenCL on Linux for integrated GPUs like yours, and without functional drivers, OpenCL applications just won’t run.
ID: 8952 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote

Message boards : Unix/Linux : AMD GPU Computation Error