Hi, the error code -4 in opencl means that a memory object could not be allocated. It is not uncommon that the whole memory management on your graphics card has issues once this happens so that only a reboot helps.
My best guess would be that your setting of opencl_memory_headroom should be increased. Background of that setting: while we know the total memory of your graphics card, we do not know how much the card needs to reserve for its own purposes (GUI related issues, driver, opencl kernels etc.). The only way to take this into account is leaving a certain headroom free. This is set to 300 by default as was found to be sufficient. Maybe it's not sufficient for your system. Try to increase in steps of 50 and see if the problem goes away. Ulrich Am 18.10.2014 um 14:27 schrieb Matthias Bodenbinder: > I made some additional tests. > > 1) DT is not recovering from the loss of opencl functionality. A restart of > DT does not help. opencl performance is still not available although it is > activated in the GUI. Only a reboot of the computer brings back the opencl > performance. > > 2) The issue is difficult to reproduce. I did three tests by exporting 140+ > images in one shot. The bug occured at different points in time. It occured > once with image 34, once with image 50 and once with image 121. > > 3) It is not a single image causing the issue. If an image triggers the bug > in one test, I can export the same image after reboot with no issue. > > Full output of "darktable -d opencl": > > 5# /opt/darktable-git/bin/darktable -d opencl > [opencl_init] opencl related configuration options: > [opencl_init] > [opencl_init] opencl: 1 > [opencl_init] opencl_library: '' > [opencl_init] opencl_memory_requirement: 768 > [opencl_init] opencl_memory_headroom: 300 > [opencl_init] opencl_device_priority: '*/!0,*/*/*' > [opencl_init] opencl_size_roundup: 16 > [opencl_init] opencl_async_pixelpipe: 0 > [opencl_init] opencl_synch_cache: 0 > [opencl_init] opencl_number_event_handles: 25 > [opencl_init] opencl_micro_nap: 1000 > [opencl_init] opencl_use_pinned_memory: 0 > [opencl_init] opencl_use_cpu_devices: 0 > [opencl_init] opencl_avoid_atomics: 0 > [opencl_init] opencl_omit_whitebalance: 0 > [opencl_init] > [opencl_init] trying to load opencl library: '<system default>' > [opencl_init] opencl library 'libOpenCL' found on your system and loaded > [opencl_init] found 1 platform > [opencl_init] found 1 device > [opencl_init] device 0 `GeForce GTX 750 Ti' has sm_20 support. > [opencl_init] device 0 `GeForce GTX 750 Ti' supports image sizes of 32768 x > 32768 > [opencl_init] device 0 `GeForce GTX 750 Ti' allows GPU memory allocations of > up to 511MB > [opencl_init] device 0: GeForce GTX 750 Ti > GLOBAL_MEM_SIZE: 2047MB > MAX_WORK_GROUP_SIZE: 1024 > MAX_WORK_ITEM_DIMENSIONS: 3 > MAX_WORK_ITEM_SIZES: [ 1024 1024 64 ] > DRIVER_VERSION: 340.46 > DEVICE_VERSION: OpenCL 1.1 CUDA > [opencl_init] compiling program `demosaic_ppg.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/demosaic_ppg.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/demosaic_ppg.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `atrous.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/atrous.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/atrous.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `basic.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/basic.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/basic.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `blendop.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/blendop.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/blendop.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `highpass.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/highpass.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/highpass.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `nlmeans.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/nlmeans.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/nlmeans.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `gaussian.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/gaussian.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/gaussian.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `sharpen.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/sharpen.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/sharpen.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `extended.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/extended.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/extended.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `soften.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/soften.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/soften.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `bilateral.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/bilateral.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/bilateral.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `denoiseprofile.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/denoiseprofile.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/denoiseprofile.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] compiling program `bloom.cl' .. > [opencl_load_program] loaded cached binary program from file > `/home/matthias/.cache/darktable/cached_kernels_for_GeForceGTX750Ti/bloom.cl.bin' > [opencl_load_program] successfully loaded program from > `/opt/darktable-git/share/darktable/kernels/bloom.cl' > [opencl_build_program] successfully built program > [opencl_build_program] BUILD STATUS: 0 > BUILD LOG: > > > [opencl_init] kernel loading time: 0.3875 > [opencl_init] OpenCL successfully initialized. > [opencl_init] here are the internal numbers and names of OpenCL devices > available to darktable: > [opencl_init] 0 'GeForce GTX 750 Ti' > [opencl_init] these are your device priorities: > [opencl_init] image preview export thumbnail > [opencl_init] 0 -1 0 0 > [opencl_init] FINALLY: opencl is AVAILABLE on this system. > [opencl_init] initial status of opencl enabled flag is ON. > [opencl_create_kernel] successfully loaded kernel `zero' (0) for device 0 > [opencl_create_kernel] successfully loaded kernel `splat' (1) for device 0 > [opencl_create_kernel] successfully loaded kernel `blur_line' (2) for device 0 > [opencl_create_kernel] successfully loaded kernel `blur_line_z' (3) for > device 0 > [opencl_create_kernel] successfully loaded kernel `slice' (4) for device 0 > [opencl_create_kernel] successfully loaded kernel `slice_to_output' (5) for > device 0 > [opencl_create_kernel] successfully loaded kernel `gaussian_column_1c' (6) > for device 0 > [opencl_create_kernel] successfully loaded kernel `gaussian_transpose_1c' (7) > for device 0 > [opencl_create_kernel] successfully loaded kernel `gaussian_column_4c' (8) > for device 0 > [opencl_create_kernel] successfully loaded kernel `gaussian_transpose_4c' (9) > for device 0 > [opencl_create_kernel] successfully loaded kernel `interpolation_resample' > (10) for device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_mask_Lab' (11) for > device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_mask_RAW' (12) for > device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_mask_rgb' (13) for > device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_Lab' (14) for > device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_RAW' (15) for > device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_rgb' (16) for > device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_copy_alpha' (17) > for device 0 > [opencl_create_kernel] successfully loaded kernel `blendop_set_mask' (18) for > device 0 > [opencl_create_kernel] successfully loaded kernel `vignette' (19) for device 0 > [opencl_create_kernel] successfully loaded kernel `lens_distort_bilinear' > (20) for device 0 > [opencl_create_kernel] successfully loaded kernel `lens_distort_bicubic' (21) > for device 0 > [opencl_create_kernel] successfully loaded kernel `lens_distort_lanczos2' > (22) for device 0 > [opencl_create_kernel] successfully loaded kernel `lens_distort_lanczos3' > (23) for device 0 > [opencl_create_kernel] successfully loaded kernel `lens_vignette' (24) for > device 0 > [opencl_create_kernel] successfully loaded kernel `splittoning' (25) for > device 0 > [opencl_create_kernel] successfully loaded kernel `overexposed' (26) for > device 0 > [opencl_create_kernel] successfully loaded kernel `graduatedndp' (27) for > device 0 > [opencl_create_kernel] successfully loaded kernel `graduatedndm' (28) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorbalance' (29) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorzones' (30) for > device 0 > [opencl_create_kernel] successfully loaded kernel `borders_fill' (31) for > device 0 > [opencl_create_kernel] successfully loaded kernel `invert_1f' (32) for device > 0 > [opencl_create_kernel] successfully loaded kernel `invert_4f' (33) for device > 0 > [opencl_create_kernel] successfully loaded kernel `velvia' (34) for device 0 > [opencl_create_kernel] successfully loaded kernel > `denoiseprofile_precondition' (35) for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_init' (36) > for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_dist' (37) > for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_horiz' (38) > for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_vert' (39) > for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_accu' (40) > for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_finish' > (41) for device 0 > [opencl_create_kernel] successfully loaded kernel > `denoiseprofile_backtransform' (42) for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_decompose' > (43) for device 0 > [opencl_create_kernel] successfully loaded kernel `denoiseprofile_synthesize' > (44) for device 0 > [opencl_create_kernel] successfully loaded kernel > `denoiseprofile_reduce_first' (45) for device 0 > [opencl_create_kernel] successfully loaded kernel > `denoiseprofile_reduce_second' (46) for device 0 > [opencl_create_kernel] successfully loaded kernel `lowlight' (47) for device 0 > [opencl_create_kernel] successfully loaded kernel `colorize' (48) for device 0 > [opencl_create_kernel] successfully loaded kernel `flip' (49) for device 0 > [opencl_create_kernel] successfully loaded kernel `clip_rotate_bilinear' (50) > for device 0 > [opencl_create_kernel] successfully loaded kernel `clip_rotate_bicubic' (51) > for device 0 > [opencl_create_kernel] successfully loaded kernel `clip_rotate_lanczos2' (52) > for device 0 > [opencl_create_kernel] successfully loaded kernel `clip_rotate_lanczos3' (53) > for device 0 > [opencl_create_kernel] successfully loaded kernel `vibrance' (54) for device 0 > [opencl_create_kernel] successfully loaded kernel `levels' (55) for device 0 > [opencl_create_kernel] successfully loaded kernel > `clip_and_zoom_demosaic_half_size' (56) for device 0 > [opencl_create_kernel] successfully loaded kernel `ppg_demosaic_green' (57) > for device 0 > [opencl_create_kernel] successfully loaded kernel `green_equilibration' (58) > for device 0 > [opencl_create_kernel] successfully loaded kernel `pre_median' (59) for > device 0 > [opencl_create_kernel] successfully loaded kernel `ppg_demosaic_green_median' > (60) for device 0 > [opencl_create_kernel] successfully loaded kernel `ppg_demosaic_redblue' (61) > for device 0 > [opencl_create_kernel] successfully loaded kernel `clip_and_zoom' (62) for > device 0 > [opencl_create_kernel] successfully loaded kernel `border_interpolate' (63) > for device 0 > [opencl_create_kernel] successfully loaded kernel `color_smoothing' (64) for > device 0 > [opencl_create_kernel] successfully loaded kernel `zonesystem' (65) for > device 0 > [opencl_create_kernel] successfully loaded kernel `highlights_1f' (66) for > device 0 > [opencl_create_kernel] successfully loaded kernel `highlights_4f' (67) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorin_unbound' (68) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorin_clipping' (69) for > device 0 > [opencl_create_kernel] successfully loaded kernel `eaw_decompose' (70) for > device 0 > [opencl_create_kernel] successfully loaded kernel `eaw_synthesize' (71) for > device 0 > [opencl_create_kernel] successfully loaded kernel `sharpen_hblur' (72) for > device 0 > [opencl_create_kernel] successfully loaded kernel `sharpen_vblur' (73) for > device 0 > [opencl_create_kernel] successfully loaded kernel `sharpen_mix' (74) for > device 0 > [opencl_create_kernel] successfully loaded kernel `whitebalance_4f' (75) for > device 0 > [opencl_create_kernel] successfully loaded kernel `whitebalance_1f' (76) for > device 0 > [opencl_create_kernel] successfully loaded kernel `relight' (77) for device 0 > [opencl_create_kernel] successfully loaded kernel `colormapping_histogram' > (78) for device 0 > [opencl_create_kernel] successfully loaded kernel `colormapping_mapping' (79) > for device 0 > [opencl_create_kernel] successfully loaded kernel `monochrome_filter' (80) > for device 0 > [opencl_create_kernel] successfully loaded kernel `monochrome' (81) for > device 0 > [opencl_create_kernel] successfully loaded kernel `soften_overexposed' (82) > for device 0 > [opencl_create_kernel] successfully loaded kernel `soften_hblur' (83) for > device 0 > [opencl_create_kernel] successfully loaded kernel `soften_vblur' (84) for > device 0 > [opencl_create_kernel] successfully loaded kernel `soften_mix' (85) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorout' (86) for device 0 > [opencl_create_kernel] successfully loaded kernel `tonecurve' (87) for device > 0 > [opencl_create_kernel] successfully loaded kernel `letsgofloat_1ui' (88) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorcorrection' (89) for > device 0 > [opencl_create_kernel] successfully loaded kernel `pixelmax_first' (90) for > device 0 > [opencl_create_kernel] successfully loaded kernel `pixelmax_second' (91) for > device 0 > [opencl_create_kernel] successfully loaded kernel `global_tonemap_reinhard' > (92) for device 0 > [opencl_create_kernel] successfully loaded kernel `global_tonemap_drago' (93) > for device 0 > [opencl_create_kernel] successfully loaded kernel `global_tonemap_filmic' > (94) for device 0 > [opencl_create_kernel] successfully loaded kernel `exposure' (95) for device 0 > [opencl_create_kernel] successfully loaded kernel `nlmeans_init' (96) for > device 0 > [opencl_create_kernel] successfully loaded kernel `nlmeans_dist' (97) for > device 0 > [opencl_create_kernel] successfully loaded kernel `nlmeans_horiz' (98) for > device 0 > [opencl_create_kernel] successfully loaded kernel `nlmeans_vert' (99) for > device 0 > [opencl_create_kernel] successfully loaded kernel `nlmeans_accu' (100) for > device 0 > [opencl_create_kernel] successfully loaded kernel `nlmeans_finish' (101) for > device 0 > [opencl_create_kernel] successfully loaded kernel `shadows_highlights_mix' > (102) for device 0 > [opencl_create_kernel] successfully loaded kernel `channelmixer' (103) for > device 0 > [opencl_create_kernel] successfully loaded kernel `highpass_invert' (104) for > device 0 > [opencl_create_kernel] successfully loaded kernel `highpass_hblur' (105) for > device 0 > [opencl_create_kernel] successfully loaded kernel `highpass_vblur' (106) for > device 0 > [opencl_create_kernel] successfully loaded kernel `highpass_mix' (107) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colorcontrast' (108) for > device 0 > [opencl_create_kernel] successfully loaded kernel `bloom_threshold' (109) for > device 0 > [opencl_create_kernel] successfully loaded kernel `bloom_hblur' (110) for > device 0 > [opencl_create_kernel] successfully loaded kernel `bloom_vblur' (111) for > device 0 > [opencl_create_kernel] successfully loaded kernel `bloom_mix' (112) for > device 0 > [opencl_create_kernel] successfully loaded kernel `profilegamma' (113) for > device 0 > [opencl_create_kernel] successfully loaded kernel `colisa' (114) for device 0 > [opencl_create_kernel] successfully loaded kernel `lowpass_mix' (115) for > device 0 > [opencl_create_kernel] successfully loaded kernel `basecurve' (116) for > device 0 > [lib_load_module] failed to open operation `capture': libwebp.so.4: Kann die > Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden > > > > > Am 18.10.2014 um 12:15 schrieb Matthias Bodenbinder:> Hello Developers, >> >> I just want to share my first opencl experiences with you. >> >> The positiv things to start with: >> >> I have a core i7-2600k. I used to run it with onboard graphics (HD3000). >> With this setup I get a JPG export speed of ca. 1.5 pictures per minute. >> Today I got a Geforce GTX750TI. With opencl enabled I get an export speed of >> 8 JPG/min. This is factor 5 faster than before. In addition to this the CPU >> load drops significantly going from 800% (8 core fully loaded) to 160%. And >> it is not only the export that is faster. Also the GUI feels a lot smoother >> when zooming in and out of images. >> >> Now the negative thing that occured to me: >> >> I exported 149 pictures in one shot. For the first 34 pictures I see the >> above mentioned benefits. But starting with picture 35 I am back to the old >> performance incl. a CPU load of 800%. It looks like opencl stopped working >> after some time. And it is never coming back. The next export is slow again. >> >> darktable -d opencl says: >> >> [opencl_denoiseprofile] couldn't enqueue kernel! -4 >> [opencl_pixelpipe] failed to run module 'denoiseprofile'. fall back to cpu >> path >> ------------------------------------------------------------------------------ Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email, SMS, voice calls or mobile push notifications. Take corrective actions from your mobile device. http://p.sf.net/sfu/Zoho _______________________________________________ darktable-devel mailing list darktable-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/darktable-devel