Hi
I have a Microsoft Surface 7 tablet PC which is currently running Darktable fairly well but I wonder if getting GPU support working might improve performance further. The GPU hardware inside of a Surface 7 is a “Intel Iris Plus Graphics G4 (Ice Lake)” though with no dedicated GPU RAM, it shares the devices 8GB of RAM with the CPU. Will getting Darktable to use the GPU offer much noticeable performance increase?
The OS installed on this Surface in Mint Linux 22. Initially Darktable didn’t detect anything, and even going back a stage and running clinfo found nothing. But after installing libOpenCL and the package ‘intel-opencl-icd’ from Intel clinfo now finds a platform and a device. But Darktable seems still unable to use the GPU.
I’m running Darktable from the Flatpak package, currently using version 5.0.1. If I run it manually with the openCL switch I get the following output…
$ /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=/app/bin/darktable --file-forwarding org.darktable.Darktable -d opencl
darktable 5.0.1
Copyright (C) 2012-2025 Johannes Hanika and other contributors.
Compile options:
Bit depth -> 64 bit
Debug -> DISABLED
SSE2 optimizations -> ENABLED
OpenMP -> ENABLED
OpenCL -> ENABLED
Lua -> ENABLED - API version 9.4.0
Colord -> ENABLED
gPhoto2 -> ENABLED
GMIC -> ENABLED - Compressed LUTs are supported
GraphicsMagick -> ENABLED
ImageMagick -> DISABLED
libavif -> ENABLED
libheif -> ENABLED
libjxl -> ENABLED
LibRaw -> ENABLED - Version 0.22.0-Devel202403
OpenJPEG -> ENABLED
OpenEXR -> ENABLED
WebP -> ENABLED
See https://www.darktable.org/resources/ for detailed documentation.
See https://github.com/darktable-org/darktable/issues/new/choose to report bugs.
0.0001 [dt starting]
/app/bin/darktable -d opencl
Gtk-Message: 10:13:04.776: Failed to load module "xapp-gtk3-module"
0.1662 [dt_get_sysresource_level] switched to 1 as `default'
0.1662 total mem: 7530MB
0.1662 mipmap cache: 941MB
0.1663 available mem: 3765MB
0.1663 singlebuff: 58MB
0.1849 [opencl_init] opencl disabled via darktable preferences
0.1850 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL'
0.1851 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL.so'
0.1852 [opencl_init] opencl library 'libOpenCL.so.1' found on your system and loaded, preference 'default path'
0.2327 [opencl_init] found 1 platform
0.2327 [check platform] platform 'rusticl' with key 'clplatform_rusticl' is NOT active
[opencl_init] found 0 device
0.2327 [opencl_init] FINALLY: opencl PREFERENCE=OFF is NOT AVAILABLE and NOT ENABLED.
I read this output as say as OpenCL_Init is happy the LibOpenCL library is available but dt_dlopencl_init can’t see this library and hence why Darktable greys out the options for OpenCL GPU acceleration support?
Sorry this message if this message is more of a brain dump than coherent question – but any ideas on where to troubleshoot this next?