Darktable speed

Yes, I found all sorts of little decisions when putting LittleCMS in rawproc that affected display times, e.g., don’t transform the floating point native image for display, wait until it’s been converted to the 8-bit/channel wxImage. Further, if it has to be cropped for a high display magnification, wait for that operation and transform the smaller image.

I also put in a property called display.cms.transform if =set do the display transform when the display image is set by the processing pipeline, if =render do the display transform at each display change, e.g. pan or zoom. Jury is still out on the usefulness of this setting.

Finally, in my colorspace tool instead of cmsTransform-ing the whole image I let the OpenMP break it into chunks and send them to the cores. LittleCMS uses pthreads somehow, but it’s not evident in the speedup I get just using OpenMP. I’m gradually making all my cmsTransforms OpenMP-chunkable, all done for the next release.

Yes, I could be putting these brain cells to better use doing this for darktable. I’m considering digging into the dt codebase, but it may have to wait until my day job is no longer part of my day… :smile: