Цитата:от: Rafael Fomenko
Ну для начала можно бы было вот это рассмотреть:
8.2.6. OpenCL performance optimization
Для работы OpenCL нужно:
1. Иметь AMD/ATI, NVIDIA или Co видеокарту.
2. На карте должно быть 1GB+ графической памяти, чтобы получить выгоду от использования OpenCL.
3. Установленные драйвера с поддержкой OpenCL.
Для точной настройки OpenCL в darktable:
1. В терминале набрать:
darktable -d opencl -d perf
В самом darktable открываем любой Raw file и пробуем делать обработку, параллельно смотрим на время обработки в терминале. Должно получиться что-то вроде:
[dev] took 0.000 secs (0.000 CPU) to load the image.
[pixelpipe_process] [full] using device 0
[pixelpipe_process] [preview] using device -1
[dev_pixelpipe] took 0.042 secs (0.053 CPU) processing `shadows and highlights' [full]
[dev_pixelpipe] took 0.028 secs (0.068 CPU) processing `sharpen' [full]
[dev_pixelpipe] took 0.026 secs (0.057 CPU) processing `output color profile' [full]
[dev_pixelpipe] took 0.004 secs (0.010 CPU) processing `overexposed' [full]
[dev_pixelpipe] took 0.020 secs (0.065 CPU) processing `gamma' [full]
[opencl_profiling] spent 0.0067 seconds in [Write Image (from host to device)]
[opencl_profiling] spent 0.0037 seconds in [Copy Image to Buffer (on device)]
[opencl_profiling] spent 0.0122 seconds in gaussian_column_4c
[opencl_profiling] spent 0.0042 seconds in gaussian_transpose_4c
[opencl_profiling] spent 0.0027 seconds in [Copy Buffer to Image (on device)]
[opencl_profiling] spent 0.0043 seconds in shadows_highlights_mix
[opencl_profiling] spent 0.0049 seconds in sharpen_hblur
[opencl_profiling] spent 0.0045 seconds in sharpen_vblur
[opencl_profiling] spent 0.0047 seconds in sharpen_mix
[opencl_profiling] spent 0.0090 seconds in colorout
[opencl_profiling] spent 0.0014 seconds in [Copy Image (on device)]
[opencl_profiling] spent 0.0071 seconds in [Read Image (from device to host)]
[opencl_profiling] spent 0.0654 seconds totally in command queue (with 0 events missing)
[dev_process_image] pixel pipeline processing took 0.121 secs (0.258 CPU)
[dev_pixelpipe] took 0.096 secs (0.233 CPU) processing `shadows and highlights' [preview]
[dev_pixelpipe] took 0.033 secs (0.070 CPU) processing `sharpen' [preview]
[dev_pixelpipe] took 0.027 secs (0.075 CPU) processing `output color profile' [preview]
[dev_pixelpipe] took 0.008 secs (0.022 CPU) processing `gamma' [preview]
[dev_process_preview] pixel pipeline processing took
0.288 secs (0.550 CPU)
То есть общее время на выполнение обработки Raw file составила 0.288 sec.
Для оптимизации - нам необходимо закрыть darktable и открыть следующий конфигурационный файл, любым текстовым редактором:
~/.config/darktable/darktablerc
~ - это ваша домашняя директория. Так как, директория имеет названия начинающегося с ".", то эта директория - скрытая. Если вы умеете работать с
Vi (visual), то в терминале набираем следующею строку:
vi ~/.config/darktable/darktablerc
Делаем необходимые изменения в нем, например меняем вот это параметр на true:
opencl_async_pixelpipe=false
Сохраняем изменения. Отрываем darktable и повторяем те же операции, над тем же Raw file, что мы делали ранее и проверяем насколько оптимизировалось время выполнения. Если, нас не устраивает результат, то повторяем все выше перечисленные действия.
Как то так... Надеюсь помогло. :D
P.S. В итоге после нехитрых манипуляций мы получаем повышение производительности в 2 раза:
[dev_process_preview] pixel pipeline processing took
0.123 secs (0.269 CPU)
[opencl_summary_statistics] device 'Quadro FX 880M': 205 out of 205 events were
successful and 0 events lost.