darktable and opencl on Fedora with Intel Iris plus

Hi,

I’m on Fedora 36 (beta) and I’m trying to activate opencl to use with darktable, with a Intel Iris Plus Graphics (ICL GT2) on a Dell XPS 13 9300

I just installed the intel-opencl package, which seams to be the NEO (version 22.11.22682, so not the old one, beignet) according to what dnf is reporting and based on this site: compute-runtime/DISTRIBUTIONS.md at master · intel/compute-runtime · GitHub

Now, darktable (version 3.8.1) is not starting with the intel-opencl package installed.

Here’s what darktable-cltest is reporting:

[ml@ml-dell-fedora ~]$ darktable-cltest
0.046980 [opencl_init] opencl related configuration options:
0.047001 [opencl_init]
0.047005 [opencl_init] opencl: 1
0.047008 [opencl_init] opencl_scheduling_profile: ‘default’
0.047012 [opencl_init] opencl_library: ‘’
0.047015 [opencl_init] opencl_memory_requirement: 768
0.047019 [opencl_init] opencl_memory_headroom: 300
0.047022 [opencl_init] opencl_device_priority: ‘/!0,//
0.047027 [opencl_init] opencl_mandatory_timeout: 200
0.047031 [opencl_init] opencl_size_roundup: 16
0.047033 [opencl_init] opencl_async_pixelpipe: 0
0.047036 [opencl_init] opencl_synch_cache: false
0.047039 [opencl_init] opencl_number_event_handles: 25
0.047043 [opencl_init] opencl_micro_nap: 1000
0.047046 [opencl_init] opencl_use_pinned_memory: 0
0.047049 [opencl_init] opencl_use_cpu_devices: 0
0.047051 [opencl_init] opencl_avoid_atomics: 0
0.047054 [opencl_init]
0.047314 [opencl_init] could not find opencl runtime library ‘libOpenCL’
0.047381 [opencl_init] could not find opencl runtime library ‘libOpenCL.so’
0.047613 [opencl_init] found opencl runtime library ‘libOpenCL.so.1’
0.047644 [opencl_init] opencl library ‘libOpenCL.so.1’ found on your system and loaded
Abort was called at 39 line in file:
/builddir/build/BUILD/compute-runtime-22.11.22682/shared/source/built_ins/built_ins.cpp
Abandon (core dumped)

Any clue on how to make it works?

Thanks.

How did you install darktable? dnf, obs repo, flatpak?

I think the Intel GPU was blacklisted by darktable due to OpenCL issues. I think you can set a flag to enable.

But there current master code has a lot of improvements to OpenCL. And getting more folks willing to test the Intel with it can help remove it from the blacklist.

darktable is installed via dnf from regular Fedora repositories.

I may be wrong, but according to this post, it seems this was the previous version (beignet) that was blacklisted, not the newest one (NEO): OpenCL and Darktable and Iris Xe? - #3 by garrett

Do you know where I can look to find what is blacklisted by darktable?

Windows blacklisted, so that’s not it.

Does clinfo work for you? I think I have the same issue with Intel HD 520 on fedora 36. Darktable won’t start with opencl (–disable-opencl works fine) and clinfo puts out some info followed by a segfault.

I guess it might have something to do with this issue: ocloc crashes with LLVM 13 #204 - intel graphics compiler.
One of the comments is from the guy maintaining the intel-compute-runtime packages for fedora.

clinfo is also reporting an error (same as darktable-cltest):

[ml@ml-dell-fedora ~]$ sudo clinfo
Abort was called at 39 line in file:
/builddir/build/BUILD/compute-runtime-22.11.22682/shared/source/built_ins/built_ins.cpp
Abandon

Thanks for pointing me to this bug report. I guess we’ll have to wait for this to be resolved… unless there is some workaround?

1 Like

The message is not 'opencl disabled because of blacklisted driver’s though, it crashes when trying to interface with the driver .

If clinfo does not work, how should dt do? :slight_smile:

About the mentioned compiler problem: dt uses the systems default llvm compiler and trusts everything up to 13 as correct.

Also - and probably more important - Fedora 36 is not stable atm. This is one of the errors that can be expected on a beta system as only a few applications make use of OpenCl so a bug might get un-noticed longer than others. Also, the linux kernel used is very fresh and intel regularly contributes with OpenCl and driver fixes.

Bug report submitted for Fedora 36: 2075944 – intel-opencl crashes with intel-igc built against LLVM >= 13

… which lead to a confirmation that it is related to this upstream bug: ocloc crashes with LLVM 13 · Issue #204 · intel/intel-graphics-compiler · GitHub

2 Likes

OK, while we wait for this bug to be resolved, here’s a temporary workaround to activate opencl on Fedora for Intel cards, based on packages available here: jdanecki/intel-opencl-ci Copr

Tested and working on Fedora 36 (beta) with darktable 3.8.1.

Here’s how to proceed.

#Enable intel-opencl repository
sudo dnf copr enable jdanecki/intel-opencl

#Enable intel-opencl-ci repository
sudo dnf copr enable jdanecki/intel-opencl-ci

#Install the specific working version of intel-opencl package
sudo dnf install intel-opencl-21.38.21026

#Add the following line to /etc/dnf/dnf.conf to exclude these packages from future upgrade so they won’t be replaced with the newest-buggy ones, until the bug is resolved
exclude=intel-opencl intel-gmmlib

2 Likes