Yes, have read it but there is something amiss in the guide, it talks about 4 settings.
center image
preview pixelpipe
the export pixelpipes
the thumbnail pixelpipes
But if you run DT with -d opencl from terminal it shows
1.648834 [opencl_priorities] these are your device priorities:
1.648836 [opencl_priorities] image preview export thumbs preview2
1.648841 [opencl_priorities] 0 0 0 0 0
1.648845 [opencl_priorities] 1 1 1 1 1
1.648849 [opencl_priorities] show if opencl use is mandatory for a given pixelpipe:
1.648851 [opencl_priorities] image preview export thumbs preview2
1.648855 [opencl_priorities] 0 0 0 0 0
So now there are 5 setting with addition of preview2
Is the Guide not updated?
My DT version is
darktable 3.7.0~git1263.b9383373cc-1
Ubuntu 20.04.3
Better visible like this (the forum thought your * characters were meant to indicate italics).
You may want to give +1 a try:
You can enforce GPU processing by prefixing the list of allowed GPUs with a plus sign +. In this case darktable will not use the CPU but rather suspend processing until the next permitted OpenCL device is available.
1.648834 [opencl_priorities] these are your device priorities:
1.648836 [opencl_priorities] image preview export thumbs preview2
1.648841 [opencl_priorities] 0 0 0 0 0
1.648845 [opencl_priorities] 1 1 1 1 1
I think this is one line per device (so, first device #0, then #1). Why is device #1 listed for preview, when that is configured as !1,*, meaning anything but #1?
To me this looks as if darktable ignored the config string, if the profile is set to multiple GPUs or very fast GPU: dt_conf_get_string_const("opencl_device_priority") is only used if some other value (e.g. default) is used for opencl_scheduling_profile.
you might get better performance if you just prioritize full pixel pipe to be done on your faster gpu. If you set same priorities for each pixel pipe then it’s first come first serve - so the full pixel pipe might be done on a slower device since the faster is already in user for preview or thumbnail pipe …
The custom prioritization just works if you’re using standard mode
But you may want to connect to the channel where developers hang out, and ask them if this is indeed a problem or if we don’t understand the documentation: https://webchat.oftc.net/?channels=%23darktable
Simply ask them to check out the issue here (copy the link of your reply where you have already updated the config but still get the ‘not utilized’ message).
I have found a workaround with playing with different opencl settings. My Current setting is
> opencl=TRUE
> opencl_async_pixelpipe=true
> opencl_avoid_atomics=false
> opencl_checksum=766871645
> opencl_device_priority=+1/!1,/+1,/+0,/+0,
> opencl_library=
> opencl_mandatory_timeout=200
> opencl_memory_headroom=400
> opencl_memory_requirement=768
> opencl_micro_nap=500
> opencl_number_event_handles=100
> opencl_scheduling_profile=default
> opencl_size_roundup=16
> opencl_synch_cache=false
> opencl_use_cpu_devices=false
> opencl_use_pinned_memory=true
Special mention to opencl_synch_cache=false
if I put the value to =active modules DT will will not start and in the terminal will give error opencl NULL pointer error BUT if I try the second/third time it will start but in some modules it will not do mouse click and give signal error as mentioned in my earlier post here https://discuss.pixls.us/t/cannot-import-many-mouse-clicks-on-modules-not-working/27334?u=rajkhand and sometimes everything will work perfectly!
but after changing the value to false everything works. (I donn’t know the logic/reason)
Can someone tell me why? What exactly this setting does?