Since I have noticed a marked improvement of the results using the latest Darktable 3.0.1 especially with regards to using CPU only, I will add these results to the thread.
I’m using the same laptop as in my original post up here (Dell XPS-15, i7-7700HQ@2.8Ghz, Geforce GTX1050, 16 Gb ram, 512 Gb ssd):
With GPU:
$ darktable-cli bench.SRW test.jpg --core -d perf -d opencl
[...]
12,562578 [dev_process_export] pixel pipeline processing took 11,683 secs (41,596 CPU)
12,958019 [opencl_summary_statistics] device 'GeForce GTX 1050' (0): 543 out of 544 events were successful and 1 events lost
I have no GPU and only i5 4th gen with only Intel 500 graphics HD and on Linux, I have just see significant speed by changing kernel release from 5.3.x to 5.4.x. I’ve tried also 5.5.x (better than 5.3) but find 5.4.x the faster one with darktable. If you use Linux, considering which kernel you use seems also a good thing. Of course, it’s just my using so could be different on a different PC.
I have the impression that most performance issues discussed here are focused on the processing times of the pixel pipeline.
Does anyone experience UI lags during processing in the Darkroom?
Especially on complex edits, as soon as a parameter of some module is changed, the whole GUI becomes very unresponsive or freezes until the processing is done. This makes editing images quite frustrating because even simple adjustments like dragging a slider or curve nodes are next to impossible.
Is it only me who is experiencing this? I wonder if I’m doing something wrong.
(Using current master build on Arch; tried with and without Opencl)
I’ve also created an issue in the bug tracker in case someone is interested:
The performance depends on the resoltuion of your screens - each change of sliders etc. Causes a reprocessing of the main view and the preview.
Try to start darktable -d perf to get an idea, which are the most time consuming steps (denoise or retouch are one of them) and then activate them at the end of your editing …
If these values are of any interest, we should perhaps collect them in a table for a better overview. Maybe we can even combine this with GPU benchmarks in darktable.
From my testings (n=3 and CPU only) I get these values:
Intel i5-3210M (2 cores/4 threads with 2.5–3.1 GHz, Linux Mint 18.3): 50 s
Intel i5-4590 (4 cores/4 threads with 3.3–3.7 GHz, Windows 7): 37 s
AMD Ryzen 3 2200G (4 cores/4 threads with 3.5–3.7 GHz, Linux Solus 4.1): 28 s
Note: OpenCL via Beignet on the integrated HD 4600 of the i5-4590 slows it down to 47 s.
Despite the numbers indicating a roughly twofold increase from the mobile i5 to the Ryzen, I found darktable sometimes not very ‘fluid’. Unfortunatly OpenCL isn’t supported on the Ryzen under Solus, but I guess it won’t make a huge difference.
Especially switching between developed RAWs to compare them in fullscreen takes some time until they appear sharp (on a 1680 x 1050 screen). And while improved and new modules are nice, they are often quite heavy on the computational side.
Darktable has contributors that managed to improve performance of several modules and parts of darktable, loads of which landed with 3.6 so now speeds are better and contrinue to get better.