Hi,
I own a laptop with a low-end OpenCL capable graphics card. Usually I
explicitly turn OpenCL support off for darktable.
Today I enabled OpenCL support in darktable for some testing purposes.
Starting darktable (current git master with some extensions not related
to OpenCL) with the options '-d opencl -d perf' yields
0.062332 [opencl_init] opencl related configuration options:
0.062345 [opencl_init]
0.062359 [opencl_init] opencl: 1
0.062361 [opencl_init] opencl_library: ''
0.062364 [opencl_init] opencl_memory_requirement: 200
0.062367 [opencl_init] opencl_memory_headroom: 0
0.062372 [opencl_init] opencl_device_priority: ''
0.062377 [opencl_init] opencl_mandatory_timeout: 0
0.062382 [opencl_init] opencl_size_roundup: 16
0.062386 [opencl_init] opencl_async_pixelpipe: 0
0.062389 [opencl_init] opencl_synch_cache: 0
0.062392 [opencl_init] opencl_number_event_handles: 0
0.062396 [opencl_init] opencl_micro_nap: 0
0.062399 [opencl_init] opencl_use_pinned_memory: 0
0.062402 [opencl_init] opencl_use_cpu_devices: 0
0.062404 [opencl_init] opencl_avoid_atomics: 0
0.062407 [opencl_init]
0.062615 [opencl_init] found opencl runtime library 'libOpenCL'
0.062652 [opencl_init] opencl library 'libOpenCL' found on your system and
loaded
0.078292 [opencl_init] found 1 platform
0.078310 [opencl_init] found 1 device
0.078526 [opencl_init] device 0 `GeForce GT 730M' has sm_20 support.
0.078613 [opencl_init] device 0 `GeForce GT 730M' supports image sizes of 16384
x 16384
0.078619 [opencl_init] device 0 `GeForce GT 730M' allows GPU memory allocations
of up to 501MB
[opencl_init] device 0: GeForce GT 730M
GLOBAL_MEM_SIZE: 2004MB
MAX_WORK_GROUP_SIZE: 1024
MAX_WORK_ITEM_DIMENSIONS: 3
MAX_WORK_ITEM_SIZES: [ 1024 1024 64 ]
DRIVER_VERSION: 390.77
DEVICE_VERSION: OpenCL 1.2 CUDA
0.157247 [opencl_init] options for OpenCL compiler: -cl-fast-relaxed-math
-DNVIDIA_SM_20=1 -DNVIDIA=1
-I"/usr/local/darktable_guided/share/darktable/kernels"
[...]
0.177151 [opencl_init] compiling program `heal.cl' ..
0.177158 [opencl_fopen_stat] could not open file
`/usr/local/darktable_guided/share/darktable/kernels/heal.cl'!
0.177163 [opencl_init] kernel loading time: 0.0198
0.177170 [opencl_init] OpenCL successfully initialized.
0.177173 [opencl_init] here are the internal numbers and names of OpenCL
devices available to darktable:
0.177176 [opencl_init] 0 'GeForce GT 730M'
0.177180 [opencl_init] FINALLY: opencl is AVAILABLE on this system.
0.177183 [opencl_init] initial status of opencl enabled flag is ON.
0.177205 [opencl_create_kernel] successfully loaded kernel `blendop_mask_Lab'
(0) for device 0
0.177213 [opencl_create_kernel] successfully loaded kernel `blendop_mask_RAW'
(1) for device 0
0.177222 [opencl_create_kernel] successfully loaded kernel `blendop_mask_rgb'
(2) for device 0
[...]
Neglecting the fact that the kernel heal.cl cannot be loaded everything
looks fine to me. Nevertheless, all modules utilize CPUs only but not
my GPU, including 'denoise (profiled)'.
38.392474 [dev_pixelpipe] took 0.405 secs (1.365 CPU) processed `denoise
(profiled)' on CPU, blended on CPU [full]
How can I enable GPU processing?
In particular, I need to enable blending on GPU. Currently I am working
on automatic mask refinement based on a guided filter, see
http://kaiminghe.com/publications/eccv10guidedfilter.pdf For this
purpose I have extended the function dt_develop_blend_process and now I
also have to ajust dt_develop_blend_process_cl. But currently, the
latter function is never called. Any hint?
Heiko
--
-- Number Crunch Blog @ https://www.numbercrunch.de
-- Cluster Computing @ https://www.clustercomputing.de
-- Social Networking @ https://www.researchgate.net/profile/Heiko_Bauke
___________________________________________________________________________
darktable developer mailing list
to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org