Darktable preview image size

I’m using darktable on Fedora 37, AMD Ryzen 5 7600X, Radeon 6650XT system together with a 4k monitor. OpenCL is activated (scheduling profile: very fast GPU; tune OpenCL performance: memory size and transfer)

When I’m scrolling through images in the preview mode of the lighttable (button F), it takes quite a long time until the previews are generated.
I have the impression that this is due to the 4k monitor, leading to previews being generated in resolution 6 (3830x2560px).

Is there a way to make preview generation faster or to change the maximum preview size?

You can use the tool darktable-generate-cache : darktable 4.2 user manual - darktable-generate-cache from the commandline to generate the thumbnails.

There is a performance over quality setting in preferences…maybe that will help…

use -d perf to see how long it takes and what’s slowing it down. Maybe your Radeon is tiling or going thru CPU path.

There is a performance over quality setting in preferences…maybe that will help…

Thanks, I tried this setting, however, the images get quite grainy so that I find it difficult to detect blurr.

You can use the tool darktable-generate-cache

Thanks, thats definitely worth it when importing the first time, but I consider it a bit annoying to do that after every import.

use -d perf to see how long it takes and what’s slowing it down. Maybe your Radeon is tiling or going thru CPU path.

Thanks, I’m still analyzing and playing around with the settings.

When I use -d opencl -d perf I see, that for some reason also the iGPU receives some tasks.
At least I see it in the log: [opencl_profiling] profiling device 1 ('gfx1036')

Is it recommended to turn iGPU off in the cldevice settings, or does it give additional performance due to parallel GPU being used?

This is something that you will need to evaluate with your system. Try using the same image/xmp and see if there is a performance gain with the GPU, iGPU and CPU.

For my system, I turned off the iGPU and avoid the CPU since waiting for the GPU to finish all the process is faster than trying to use GPU and CPU.

2 Likes

how to avoid CPU?
I don’t see any tiling in the logs, however, some tasks are done by CPU
'raw black/white point' on GPU, blended on GPU
'white balance' on GPU, blended on GPU
'highlight reconstruction' on CPU, blended on CPU

'display encoding' on CPU, blended on CPU

What version of darktable are you using? What drivers for the AMD card? Which module is taking the longest?

After disabling the iGPU it’s much faster.
Additionally I set micro nap to 0, since I’m not using the discrete GPU for drawing on the screen and the number of event handles to 1024 (was 16).

Darktable version 4.2.1
GPU driver is amdgpu
opencl driver version 3513.0 (HSA1.1,LC)

When scrolling reasonably fast through the images I’m now usually not facing any issues with preview generation.
Just in case I’m scrolling very fast there’s sometimes lags, since it has to create multiple previews.

1 Like