CL_OUT_OF_RESOURCES on filmicrgb module

I’m getting the CL_OUT_OF_RESOURCES errors on processing the filmicrgb & colorout kernels. I have no idea why. I believe there is enough resources for the OpenCL. The dt_ioppr_transform_image_colorspace operation precede both errors. Maybe the culprit?

I ran dt with various resourcelevel setting. None helped.

Could someone help me please figure out why these errors appear and how to avoid them to prevent pixelpipe processing from failing to CPU? I run dt on ARM SBC, therefore any unnecessary slowing down the pixelpipe processing hurts a lot.

tux@rock5b ~> darktable -d perf -d opencl -d tiling --conf resourcelevel="large"
[dt_detect_cpu_features] Not implemented for this architecture.
[dt_detect_cpu_features] Please contribute a patch.
     0.0001 [dt_init] SSE2 is unavailable, some functions will be noticeably slower.
[dt_detect_cpu_features] Not implemented for this architecture.
[dt_detect_cpu_features] Please contribute a patch.
     0,0716 [dt_get_sysresource_level] switched to 2 as `large'
     0,0717   total mem:       15967MB
     0,0717   mipmap cache:    1995MB
     0,0717   available mem:   10915MB
     0,0717   singlebuff:      249MB
     0,0717   OpenCL tune mem: WANTED
     0,0717   OpenCL pinned:   OFF
[opencl_init] opencl related configuration options:
[opencl_init] opencl: ON
[opencl_init] opencl_scheduling_profile: 'default'
[opencl_init] opencl_library: 'default path'
[opencl_init] opencl_device_priority: '*/!0,*/*/*/!0,*'
[opencl_init] opencl_mandatory_timeout: 400
     0.0762 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL'
     0.0763 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL.so'
[opencl_init] opencl library 'libOpenCL.so.1' found on your system and loaded
arm_release_ver: g13p0-01eac0, rk_so_ver: 3
[opencl_init] found 1 platform
[opencl_init] found 1 device

[dt_opencl_device_init]
   DEVICE:                   0: 'Mali-G610 r0p0'
   PLATFORM NAME & VENDOR:   ARM Platform, ARM
   CANONICAL NAME:           armplatformmalig610r0p0
   DRIVER VERSION:           3.0
   DEVICE VERSION:           OpenCL 3.0 v1.g13p0-01eac0.a8b6f0c7e1f83c654c60d1775112dbe4
   DEVICE_TYPE:              GPU
   GLOBAL MEM SIZE:          15960 MB
   MAX MEM ALLOC:            15960 MB
   MAX IMAGE SIZE:           65536 x 65536
   MAX WORK GROUP SIZE:      1024
   MAX WORK ITEM DIMENSIONS: 3
   MAX WORK ITEM SIZES:      [ 1024 1024 1024 ]
   ASYNC PIXELPIPE:          YES
   PINNED MEMORY TRANSFER:   NO
   MEMORY TUNING:            WANTED
   FORCED HEADROOM:          400
   AVOID ATOMICS:            NO
   MICRO NAP:                250
   ROUNDUP WIDTH:            16
   ROUNDUP HEIGHT:           16
   CHECK EVENT HANDLES:      1024
   PERFORMANCE:              4.130
   TILING ADVANTAGE:         0.000
   DEFAULT DEVICE:           NO
   KERNEL BUILD DIRECTORY:   /opt/darktable/share/darktable/kernels
   KERNEL DIRECTORY:         /home/tux/.cache/darktable/cached_v1_kernels_for_ARMPlatformMaliG610r0p0_30
   CL COMPILER OPTION:       
   KERNEL LOADING TIME:       0.0070 sec
[opencl_init] OpenCL successfully initialized. Internal numbers and names of available devices:
[opencl_init]           0       'ARM Platform Mali-G610 r0p0'
[opencl_init] FINALLY: opencl is AVAILABLE and ENABLED.
[dt_opencl_update_priorities] these are your device priorities:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       -1      0       0       -1
[dt_opencl_update_priorities] show if opencl use is mandatory for a given pixelpipe:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       0       0       0       0
[opencl_synchronization_timeout] synchronization timeout set to 200
[dt_opencl_update_priorities] these are your device priorities:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       -1      0       0       -1
[dt_opencl_update_priorities] show if opencl use is mandatory for a given pixelpipe:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       0       0       0       0

...
 
  392.0407 [dt_dev_process_image_job] loading image. took 0.000 secs (0.000 CPU)
   392.3154 [dev_pixelpipe] took 0.000 secs (0.000 CPU) initing base buffer [full]
   392.3428 [dev_pixelpipe] took 0.027 secs (0.051 CPU) [full] processed `rawprepare' on GPU, blended on GPU
   392.3519 [dev_pixelpipe] took 0.009 secs (0.014 CPU) [full] processed `temperature' on GPU, blended on GPU
   392.4608 [dev_pixelpipe] took 0.109 secs (0.023 CPU) [full] processed `highlights' on GPU, blended on GPU
   392.7028 [resample_cl] plan 0.000 secs (0.000 CPU) resample 0.002 secs (0.000 CPU)
   392.7029 [dev_pixelpipe] took 0.242 secs (0.001 CPU) [full] processed `demosaic' on GPU, blended on GPU
   392.7071 [dev_pixelpipe] took 0.004 secs (0.000 CPU) [full] processed `exposure' on GPU, blended on GPU
   392.7116 [dev_pixelpipe] took 0.004 secs (0.002 CPU) [full] processed `colorin' on GPU, blended on GPU
   392.7206 [dt_ioppr_transform_image_colorspace_cl] IOP_CS_LAB-->IOP_CS_RGB took 0.005 secs (0.001 GPU) [channelmixerrgb]
   392.7209 [dev_pixelpipe] took 0.009 secs (0.001 CPU) [full] processed `channelmixerrgb' on GPU, blended on GPU
   392.7495 [histogram] took 0.000 secs (0.000 CPU) scope draw
   392.8199 [histogram] took 0.000 secs (0.000 CPU) scope draw
   393.1160 [dt_opencl_enqueue_kernel_2d] kernel 210 on device 0: CL_OUT_OF_RESOURCES
   393.1169 [opencl_filmicrgb] couldn't enqueue kernel! CL_OUT_OF_RESOURCES
   393.1169 [pixelpipe_process_CL]       [full]         filmicrgb              (   0/   0) 1152x 768 scale=0.2500 --> (   0/   0) 1152x 768 scale=0.2500 couldn't run module on GPU, falling back to CPU
   393.2754 [dev_pixelpipe] took 0.554 secs (0.698 CPU) [full] processed `filmicrgb' on CPU, blended on CPU
   393.3244 [dt_ioppr_transform_image_colorspace_cl] IOP_CS_RGB-->IOP_CS_LAB took 0.045 secs (0.038 GPU) [colorout]
   393.3762 [pixelpipe_process_CL]       [full]         colorout               (   0/   0) 1152x 768 scale=0.2500 --> (   0/   0) 1152x 768 scale=0.2500 cl input data to host
   393.3764 [dev_pixelpipe] took 0.101 secs (0.091 CPU) [full] processed `colorout' on GPU, blended on GPU
   393.3975 [dev_pixelpipe] took 0.021 secs (0.036 CPU) [full] processed `gamma' on CPU, blended on CPU
   393.3976 [opencl_profiling] profiling device 0 ('ARM Platform Mali-G610 r0p0'):
   393.3976 [opencl_profiling] spent  0.0233 seconds in [Write Image (from host to device)]
   393.3977 [opencl_profiling] spent  0.0111 seconds in rawprepare_1f
   393.3977 [opencl_profiling] spent  0.0091 seconds in whitebalance_1f
   393.3977 [opencl_profiling] spent  0.0121 seconds in highlights_initmask
   393.3977 [opencl_profiling] spent  0.0158 seconds in highlights_dilatemask
   393.3977 [opencl_profiling] spent  0.0000 seconds in [Write Buffer (from host to device)]
   393.3977 [opencl_profiling] spent  0.0225 seconds in highlights_chroma
   393.3977 [opencl_profiling] spent  0.0000 seconds in [Read Buffer (from device to host)]
   393.3978 [opencl_profiling] spent  0.0098 seconds in highlights_opposed
   393.3978 [opencl_profiling] spent  0.0089 seconds in border_interpolate
   393.3978 [opencl_profiling] spent  0.0364 seconds in rcd_border_green
   393.3978 [opencl_profiling] spent  0.0310 seconds in rcd_border_redblue
   393.3978 [opencl_profiling] spent  0.0142 seconds in rcd_populate
   393.3978 [opencl_profiling] spent  0.0399 seconds in rcd_step_1_1
   393.3979 [opencl_profiling] spent  0.0087 seconds in rcd_step_1_2
   393.3979 [opencl_profiling] spent  0.0037 seconds in rcd_step_2_1
   393.3979 [opencl_profiling] spent  0.0134 seconds in rcd_step_3_1
   393.3979 [opencl_profiling] spent  0.0102 seconds in rcd_step_4_1
   393.3979 [opencl_profiling] spent  0.0042 seconds in rcd_step_4_2
   393.3979 [opencl_profiling] spent  0.0143 seconds in rcd_step_5_1
   393.3979 [opencl_profiling] spent  0.0228 seconds in rcd_step_5_2
   393.3980 [opencl_profiling] spent  0.0156 seconds in rcd_write_output
   393.3980 [opencl_profiling] spent  0.1282 seconds in interpolation_resample
   393.3980 [opencl_profiling] spent  0.0011 seconds in exposure
   393.3980 [opencl_profiling] spent  0.0011 seconds in colorin_unbound
   393.3980 [opencl_profiling] spent  0.0119 seconds in [Copy Image (on device)]
   393.3980 [opencl_profiling] spent  0.0011 seconds in colorspaces_transform_lab_to_rgb_matrix
   393.3981 [opencl_profiling] spent  0.0015 seconds in channelmixerrgb_CAT16
   393.3981 [opencl_profiling] spent  0.0007 seconds in filmic_mask_clipped_pixels
   393.3981 [opencl_profiling] spent  0.0375 seconds in [Read Image (from device to host)]
   393.3982 [opencl_profiling] spent  0.0021 seconds in colorspaces_transform_rgb_matrix_to_lab
   393.3982 [opencl_profiling] spent  0.0037 seconds in colorout
   393.3982 [opencl_profiling] spent  0.5159 seconds totally in command queue (with 1 event missing)
   393.3992 [dev_process_image] pixel pipeline took 1.099 secs (0.933 CPU) processing `DSC03584.ARW'
   393.5466 [histogram] took 0.000 secs (0.001 CPU) scope draw
   393.9585 [dev_pixelpipe] took 0.000 secs (0.000 CPU) initing base buffer [preview]
   393.9634 [dev_pixelpipe] took 0.005 secs (0.013 CPU) [preview] processed `rawprepare' on CPU, blended on CPU
   393.9652 [dev_pixelpipe] took 0.002 secs (0.002 CPU) [preview] processed `temperature' on CPU, blended on CPU
   393.9696 [dev_pixelpipe] took 0.004 secs (0.005 CPU) [preview] processed `highlights' on CPU, blended on CPU
   393.9850 [dev_pixelpipe] took 0.015 secs (0.015 CPU) [preview] processed `demosaic' on CPU, blended on CPU
   393.9857 [dev_pixelpipe] took 0.001 secs (0.001 CPU) [preview] processed `exposure' on CPU, blended on CPU
   393.9866 [dev_pixelpipe] took 0.001 secs (0.002 CPU) [preview] processed `colorin' on CPU, blended on CPU
   393.9871 [dt_ioppr_transform_image_colorspace] IOP_CS_LAB-->IOP_CS_RGB took 0.000 secs (0.001 CPU) [channelmixerrgb]
   393.9920 [dev_pixelpipe] took 0.005 secs (0.024 CPU) [preview] processed `channelmixerrgb' on CPU, blended on CPU
   394.0040 [dev_pixelpipe] took 0.012 secs (0.044 CPU) [preview] processed `filmicrgb' on CPU, blended on CPU
   394.0045 [dt_ioppr_transform_image_colorspace] IOP_CS_RGB-->IOP_CS_LAB took 0.000 secs (0.001 CPU) [colorout]
   394.0061 [dev_pixelpipe] took 0.002 secs (0.010 CPU) [preview] processed `colorout' on CPU, blended on CPU
   394.0082 [dev_pixelpipe] took 0.000 secs (0.000 CPU) [preview] processed `gamma' on CPU, blended on CPU
   394.0109 [dt_ioppr_transform_image_colorspace_rgb] RGB-->RGB took 0.003 secs (0.003 CPU) [final histogram]
   394.0113 histogram calculation 256 bins 2 -> -1 compensate 0 3 channels 75825 pixels took 0.000 secs (0.001 CPU)
   394.0118 [histogram] took 0.004 secs (0.004 CPU) final histogram
   394.0120 [dev_process_preview] pixel pipeline processing took 0.432 secs (0.586 CPU)

What device is this?

Tune for memory and using a headroom of 400 is pretty dangerous nowadays. Overstretching CL memory resources instead of accepting tiling could be the problem.

Nope.

Also: there was a filmic opencl bug fixed in master

And the GPU really has 16gb of vram?

Its a Mali, which is usually onboard GPU like what is on the Raspberry Pi

That’s one problem also fixed in master, memory shared by the system and gpu shouldn’t take it all :slight_smile:

Thank you guys for spending your time on this. I appreciate this. If anybody still interested, the board is Radxa Rock Pi 5B with 16 GB RAM.

I will do test to force it to tile (by setting the resourcelevel to some low level). Just curious if it still show this error. But I would like to avoid introducing tiling to my real life RAW development of course.

1 Like

You could also try current master.

Just an info. Did a test with resourcelevel set to mini. Filmicrgb module still shows the error even being tiled. Will try to build and test the current master.

    27.3787 [default_process_tiling_cl_ptp] [full] **** tiling module 'filmicrgb' for image with size 1758x1172 --> 1758x1172
    27.3788 [default_process_tiling_cl_ptp] [full] (2x1) tiles with max dimensions 1240x1172, pinned=OFF, good 984x916 and overlap 128
    27.3788 [default_process_tiling_cl_ptp] [full] tile (0,0) size 1240x1172 at origin [0,0]
    27.3869 [dt_opencl_enqueue_kernel_2d] kernel 210 on device 0: CL_OUT_OF_RESOURCES
    27.3872 [opencl_filmicrgb] couldn't enqueue kernel! CL_OUT_OF_RESOURCES
    27.3872 [default_process_tiling_opencl_ptp] [full] couldn't run process_cl() for module 'filmicrgb' in tiling mode: DT_OPENCL_PROCESS_CL
    27.3872 [pixelpipe_process_CL]       [full]         filmicrgb              (   0/   0) 1758x1172 scale=0.3815 --> (   0/   0) 1758x1172 scale=0.3815 couldn't run module on GPU, falling back to CPU
    27.7010 [dev_pixelpipe] took 0.383 secs (1.098 CPU) [full] processed `filmicrgb' on CPU, blended on CPU

Unfortunately I cannot test the master build. After getting the current source, modding the opencl.c file to workaround the opencl kernels dir name escaping issue on ARM and building dt, the opencl is not available because of some issue in checking the platform. Have no idea how to resolve that.

tux@rock5b ~/D/darktable (master)> darktable-cltest
this is darktable 7d8c6dc-dirty
copyright (c) 2009-2023 johannes hanika
https://github.com/darktable-org/darktable/issues/new/choose

compile options:
  bit depth is 64 bit
  normal build
  SSE2 optimizations unavailable
  OpenMP support enabled
  OpenCL support enabled
  Lua support enabled, API version 9.2.0
  Colord support enabled
  gPhoto2 support enabled
  G'MIC support disabled (compressed LUTs will not be supported)
  GraphicsMagick support enabled
  ImageMagick support disabled
  libavif support disabled
  libheif support disabled
  libjxl support disabled
  OpenJPEG support enabled
  OpenEXR support enabled
  WebP support enabled

     0,0364 [dt_get_sysresource_level] switched to 1 as `default'
     0,0364   total mem:       15967MB
     0,0364   mipmap cache:    1995MB
     0,0364   available mem:   7983MB
     0,0364   singlebuff:      124MB
     0.0380 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL'
     0.0382 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL.so'
     0.0385 [opencl_init] opencl library 'libOpenCL.so.1' found on your system and loaded, preference 'default path'
arm_release_ver: g13p0-01eac0, rk_so_ver: 3
     0.0483 [opencl_init] found 1 platform
     0.0483 [check platform] platform 'ARM Platform' with key 'clplatform_armplatform' is NOT active
[opencl_init] found 0 device
     0.0483 [opencl_init] FINALLY: opencl is NOT AVAILABLE and NOT ENABLED.

Can you click in Other platforms?

image

I see, thx for kicking me into the right direction! I selected the “other platforms” and unslelected all others. On the next dt launch, the opencl is available again. That’s great. But the issue with the filmicrgb module still persist. I’m happy to do any other testing if needed.

tux@rock5b ~> darktable -d perf -d opencl -d tiling --conf resourcelevel="large"
this is darktable 7d8c6dc-dirty
copyright (c) 2009-2023 johannes hanika
https://github.com/darktable-org/darktable/issues/new/choose

compile options:
  bit depth is 64 bit
  normal build
  SSE2 optimizations unavailable
  OpenMP support enabled
  OpenCL support enabled
  Lua support enabled, API version 9.2.0
  Colord support enabled
  gPhoto2 support enabled
  G'MIC support disabled (compressed LUTs will not be supported)
  GraphicsMagick support enabled
  ImageMagick support disabled
  libavif support disabled
  libheif support disabled
  libjxl support disabled
  OpenJPEG support enabled
  OpenEXR support enabled
  WebP support enabled

     0,1051 [dt_get_sysresource_level] switched to 2 as `large'
     0,1052   total mem:       15967MB
     0,1052   mipmap cache:    1995MB
     0,1052   available mem:   10915MB
     0,1052   singlebuff:      249MB
     0.1076 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL'
     0.1077 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL.so'
     0.1079 [opencl_init] opencl library 'libOpenCL.so.1' found on your system and loaded, preference 'default path'
arm_release_ver: g13p0-01eac0, rk_so_ver: 3
     0.1181 [opencl_init] found 1 platform
[opencl_init] found 1 device

[dt_opencl_device_init]
   DEVICE:                   0: 'Mali-G610 r0p0'
   PLATFORM NAME & VENDOR:   ARM Platform, ARM
   CANONICAL NAME:           armplatformmalig610r0p0
   DRIVER VERSION:           3.0
   DEVICE VERSION:           OpenCL 3.0 v1.g13p0-01eac0.a8b6f0c7e1f83c654c60d1775112dbe4
   DEVICE_TYPE:              GPU, unified mem
   GLOBAL MEM SIZE:          15960 MB
   MAX MEM ALLOC:            15960 MB
   MAX IMAGE SIZE:           65536 x 65536
   MAX WORK GROUP SIZE:      1024
   MAX WORK ITEM DIMENSIONS: 3
   MAX WORK ITEM SIZES:      [ 1024 1024 1024 ]
   ASYNC PIXELPIPE:          YES
   PINNED MEMORY TRANSFER:   NO
   AVOID ATOMICS:            NO
   MICRO NAP:                250
   ROUNDUP WIDTH & HEIGHT    16x16
   CHECK EVENT HANDLES:      1024
   TILING ADVANTAGE:         0.000
   DEFAULT DEVICE:           NO
   KERNEL BUILD DIRECTORY:   /opt/darktable/share/darktable/kernels
   KERNEL DIRECTORY:         /home/tux/.cache/darktable/cached_v2_kernels_for_ARMPlatformMaliG610r0p0_30
   CL COMPILER OPTION:       
   KERNEL LOADING TIME:       0.0130 sec
[opencl_init] OpenCL successfully initialized. internal numbers and names of available devices:
[opencl_init]           0       'ARM Platform Mali-G610 r0p0'
     0.1328 [opencl_init] FINALLY: opencl is AVAILABLE and ENABLED.
[opencl_init] opencl_scheduling_profile: 'default'
[opencl_init] opencl_device_priority: '*/!0,*/*/*/!0,*'
[opencl_init] opencl_mandatory_timeout: 400
[dt_opencl_update_priorities] these are your device priorities:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       -1      0       0       -1
[dt_opencl_update_priorities] show if opencl use is mandatory for a given pixelpipe:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       0       0       0       0
[opencl_synchronization_timeout] synchronization timeout set to 200
   UNIFIED MEM SIZE:         3992 MB reserved for 'armplatformmalig610r0p0'
[dt_opencl_update_priorities] these are your device priorities:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       -1      0       0       -1
[dt_opencl_update_priorities] show if opencl use is mandatory for a given pixelpipe:
[dt_opencl_update_priorities]           image   preview export  thumbs  preview2
[dt_opencl_update_priorities]           0       0       0       0       0
[opencl_synchronization_timeout] synchronization timeout set to 200
    24.8773 [dt_dev_load_raw] loading the image. took 0.093 secs (0.264 CPU)
    25.9756 [histogram] took 0.001 secs (0.000 CPU) scope draw
    26.1701 [dt_dev_process_image_job] loading image. took 0.000 secs (0.000 CPU)
    26.2819 [dt_opencl_check_tuning] use 3156MB (headroom=OFF, pinning=OFF) on device `ARM Platform Mali-G610 r0p0' id=0
    26.2821 [dev_pixelpipe] took 0.000 secs (0.000 CPU) initing base buffer [full]
    26.3002 [dev_pixelpipe] took 0.018 secs (0.017 CPU) [full] processed `rawprepare' on GPU, blended on GPU
    26.3251 [dev_pixelpipe] took 0.025 secs (0.009 CPU) [full] processed `temperature' on GPU, blended on GPU
    26.4271 [histogram] took 0.000 secs (0.001 CPU) scope draw
    26.4283 [dev_pixelpipe] took 0.103 secs (0.126 CPU) [full] processed `highlights' on GPU, blended on GPU
    26.6945 [resample_cl] plan 0.000 secs (0.002 CPU) resample 0.000 secs (0.001 CPU)
    26.6946 [dev_pixelpipe] took 0.266 secs (0.274 CPU) [full] processed `demosaic' on GPU, blended on GPU
    26.7059 [dev_pixelpipe] took 0.011 secs (0.008 CPU) [full] processed `exposure' on GPU, blended on GPU
    26.7183 [dev_pixelpipe] took 0.012 secs (0.007 CPU) [full] processed `colorin' on GPU, blended on GPU
    26.7436 [dt_ioppr_transform_image_colorspace_cl] IOP_CS_LAB-->IOP_CS_RGB took 0.015 secs (0.021 GPU) [channelmixerrgb]
    26.7439 [dev_pixelpipe] took 0.026 secs (0.033 CPU) [full] processed `channelmixerrgb' on GPU, blended on GPU
    27.2317 [dt_opencl_enqueue_kernel_2d] kernel 209 on device 0: CL_OUT_OF_RESOURCES
    27.2444 Error: process_CL          [full]         filmicrgb              (   0/   0) 1758x1172 scale=0.3815 --> (   0/   0) 1758x1172 scale=0.3815 device=0 (armplatformmalig610r0p0), CL_OUT_OF_RESOURCES
    27.2444 pixelpipe process CL       [full]         filmicrgb              (   0/   0) 1758x1172 scale=0.3815 --> (   0/   0) 1758x1172 scale=0.3815 couldn't run module on GPU, falling back to CPU
    27.5699 [dev_pixelpipe] took 0.826 secs (1.724 CPU) [full] processed `filmicrgb' on CPU, blended on CPU

This PR did not fix this issue? Sarunas is using the same card. Fix escapedkerneldir for OpenCL kernels on Linux/ARM64 by sarunasb · Pull Request #15207 · darktable-org/darktable · GitHub

Try adjusting darktablerc so it uses less of the available memory. Right now it is using 25% ( UNIFIED MEM SIZE: 3992 MB reserved for ‘armplatformmalig610r0p0’). If that doesnt help, then maybe it is a driver issue. I wonder if Sarunas can test with his build.

Yeah I know of that. I was surprised too, that I still had to modify the file myself again. Seems this PR has not been applied in master yet.

It certainly is in the master branch. You may want to verify your git checkout (as it may be missing also other recent additions/fixes).

Hmm, that’s really weird, because all I did was a new source clone with

git clone --recurse-submodules --depth 1 https://github.com/darktable-org/darktable.git

and nothing else. Did no checkouts then.

OK, I’ll do a next try.

Sorry guys, mea culpa, already resolved. The problem was in between the chair and the keyboard. I didn’t realized the change in the opencl.c file, from this:

#ifndef __APPLE__

to this:

#if !defined(__APPLE__) && !(defined(__linux__) && defined(__aarch64__))

and unfortunately was not aware, that I had to select the new setting “other platforms” OpenCL drivers preferences too. So because the dt on the first launch reported “OPENCL NOT AVAILABLE” I thought that it was because the sarunasb’s modification is still not in place and modded the opencl.c file by hand again…

It’s OK now and working as it should. Will do some experiments using various unified _fraction values to see if it helps to resolve the filmicrgb module issue.

BTW: The “configuration information” dialog opened at dt start still tells “unified-rate” instead of “unified _fraction”.

Unfortunately changing the unified _fraction parameter to either 5% or 50% (i.e. usage of approx. 0.75 GB or approx. 8 GB of RAM) has no positive impact on the filmicrgb processing failing to CPU issue.

I deleted databases and sidecar files and switched to sigmoid scene referred workflow. Sigmoid module works fine on GPU, it doesn’t fail back to CPU. I can clearly recognize it works a bit faster. I’ll do a research to find out if it is OK for me to use sigmoid instead of filmicrgb.