I already mentioned here, that dt 5.6 feels a bit sluggish on my system. It doesn’t make any difference if I use the appimage or install the deb file.
Now I have downloaded the latest nightly build 20260712, and I’m really surprised, that it makes a huge difference on my sytem. The nightly is fast and a pleasure to use. On the stable release I have to wait after every change I make on a module to see the result. On the nightly build the chnages are visible nearly instant.
If so, wouldn’t it make sense to implement these changes into stable as quick as possible? @Jens-Hanno_Schwalm already pointed me here to the master branch. Which I tried, but the master branch on OBS is versioned with 5.5.0 and brought no improvements.
I had the same impression. I wondered whether OpenCL had been properly enabled. It wasn’t enabled, and everything was grayed out.
I noticed that I had two graphics drivers installed. I disabled the Intel graphics driver, restarted Darktable, and it installed some components related to the NVIDIA driver. Since then, it has been working much better.
This is a more general question, but related to this topic. Suppose I can invest time in improving darktable performance, what would a good approach to do that?
Of course I would like to improve the performance, but not introduce any bugs or side effects.
There will be quite huge improvements for dt pixelpipe code quite early in 5.8 dev, i will ping you if that’s done and maybe we find something that fits you
I updated to 5.6 about the same time as I upgraded my CPU. I noticed 5.6 being slower.
AMD Ryzen 7 3700X → Ryzen 7 5800 XT. GPU (Nvidia GTX 1660 6GB) and OS (Windows 11 25H2) are the same.
Supposedly the CPU change should delivering roughly 33% faster single-thread performance, a 25% boost in multi-threaded tasks. I get that darktable relies on a lot of GPU processing. But editing just feels slower.
I went down the OpenCL and dt-performance analyzer worm hole.
debug mode shows OpenCL is enabled and working. No messages about CPU fallback.
DEVICE VERSION: OpenCL 3.0 CUDA API=300
DEVICE_TYPE: GPU, dedicated mem
GLOBAL MEM SIZE: 6144 MB
MAX IMAGE ALLOC: 1536 MB
[opencl_init] OpenCL successfully initialized. internal numbers and names of available devices:
[opencl_init] 0 'NVIDIA CUDA NVIDIA GeForce GTX 1660'
[opencl_init] FINALLY: opencl PREFERENCE=YES is AVAILABLE and ENABLED
device 'NVIDIA CUDA NVIDIA GeForce GTX 1660' id=0: 89274 out of 89274 events were successful and 0 events lost. max event=1838
I ran the darktable.info benchmark vs. an early windows nightly just after the 5.4.0 release. It showed slightly faster CPU tasks and slightly slower GPU tasks. But nothing earth-shattering. Sub 3 second end-to-end is perfectly usable.
One difference between the benchmark and actual usage is the GUI. Is there something about the gui in interactive mode that makes it feel slower in 5.6.0?
There is an issue in 5.6 that makes dt preview to have more pixels, so it takes longer. It is fixed in master. You can wait until 5.6.1 or compile to the 5.6.1 tag. The nightly now has future work for 5.8, so some small risk.
So if I want my local build to stay on the 5.6.x branch, it appears I’ll have to git cherry-pick the fix into a local fork of 5.6.x – assuming the change applies cleanly – and proceed to testing it.