Hi,

I added a bit more flexibility concerning OpenCL device scheduling into master. There is a new selection box in preferences (core options) that allows to choose among a few typical presets.

The main target are modern systems with very fast GPUs. By default and "traditionally" darktable distributes work between CPU and GPU in the darkroom: the GPU processes the center (full) view and the CPU is responsible for the preview (navigation) panel. Now that GPUs get faster and faster there are systems where the GPU so strongly outperforms the CPU that it makes more sense to process preview and full pixelpipe on the GPU sequentially.

For that reason the "OpenCL scheduling profile" parameter has three options:

* "default" describes the old behavior: work is split between GPU and CPU and works best for systems where CPU and GPU performance are on a similar level.

* "very fast GPU" tackles the case described above: in darkroom view both pixelpipes are sequentially processed by the GPU. This is meant for GPUs which strongly outperform the CPU on that system.

* "multiple GPUs" is meant for systems with more than one OpenCL device so that the full and the preview pixelpipe get processed by separate GPUs.

At first startup darktable tries to find the best suited profile based on some benchmarking. You may at any time change the profile, this takes effect immediately.

I am interested in your experience, both in terms of automatic detection of the best suited profile and in terms of overall performance. Please note that this is all about system latency and perceived system responsiveness in the darkroom view. Calling darktable with '-d perf' will only give you limited insights so you need to mostly rely on your own judgement.

Best wishes

Ulrich


___________________________________________________________________________
darktable developer mailing list
to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org

Reply via email to