Am 25.05.2018 um 17:48 schrieb Matthias Bodenbinder:
Am 25.05.2018 um 14:35 schrieb Peter McD:
Is there a rule of thumb for headroom settings?
Very good question.
Specifically because I do not see a performance difference between
opencl_memory_headroom=1000 and opencl_memory_headroom=400. The pipeline
processing always takes the same time (with a 3 % variance). So why shoulkd I
bother with small values of opencl_memory_headroom?
In fact that depends a lot on your total amount of GPU memory.
When darktable's opencl support was implemented, systems with 1GB were
the norm. Typically only about 700MB of that would be available to
darktable, the rest needed to be left alone for system purposes (which
we found out by trial and error).
There were two corner cases to be taken into account:
* a too small value of opencl_memory_headroom would lead to out of
memory situations in darktable, processing would fall back to the CPU
which tends to be much slower.
* a too high value of opencl_memory_headroom would force darktable to go
into tile-wise processing much too often. This also costs performance.
As a reasonable compromise we now have a setting of 400 as default. That
should reserve enough space for the system and still prevent tiling in
most cases.
If your system has lots of GPU memory the opencl_memory_headroom setting
can be much more relaxed = higher. When doing some tests in the course
of this thread on my computer I reached peak memory usage of about 4GB
during export of 5Ds images without any tiling (I have 6GB total GPU
memory). In my case I may therefore set opencl_memory_headroom to 2000
without getting any performance difference.
Even on a 4GB system a setting of 1000 might be totally fine. Tiling
will happen a bit more frequently, but in the end this will only affect
few modules with high memory demand (e.g. profiled denoise) and large
images. On a system with 2GB or less the situation will probably look a
bit different, though.
Ulrich
____________________________________________________________________________
darktable user mailing list
to unsubscribe send a mail to [email protected]