Project

General

Profile

Bug #12325

OpenCL issues with Nvidia GTX 770

Added by Chris Elston 6 months ago. Updated 6 months ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
OpenCL
Target version:
-
Start date:
09/14/2018
Due date:
% Done:

0%

Affected Version:
2.4.4
System:
other GNU/Linux
bitness:
64-bit
hardware architecture:
amd64/x86

Description

Hi,

I just installed a 2Gb NVidia GTX 770 with the hope of getting some performance increase from OpenCL support. Darktable seems to detect my card and enables OpenCL support without a problem. However, after a period of editing photos it always eventually finds an error with OpenCL and falls back to cpu.

I've played with the opencl_memory_headroom parameter (setting it to anything from 300 to 700) thinking that might be the issue and I'm now only using the card for darktable (my X session is using my intel card for display).

Nothing has worked - it always falls back to cpu in the end.

I've attached the output from @darktable -d opencl@ below though it appears that the error that causes it to fall back isn't always the same.

My PC is running Arch Linux, with the latest nvidia driver for the LTS linux package.

@0.082299 [opencl_init] opencl related configuration options:
0.082310 [opencl_init]
0.082312 [opencl_init] opencl: 1
0.082314 [opencl_init] opencl_library: ''
0.082316 [opencl_init] opencl_memory_requirement: 768
0.082318 [opencl_init] opencl_memory_headroom: 300
0.082320 [opencl_init] opencl_device_priority: '*/!0,*/*/*'
0.082322 [opencl_init] opencl_mandatory_timeout: 200
0.082324 [opencl_init] opencl_size_roundup: 16
0.082326 [opencl_init] opencl_async_pixelpipe: 0
0.082328 [opencl_init] opencl_synch_cache: 0
0.082330 [opencl_init] opencl_number_event_handles: 25
0.082333 [opencl_init] opencl_micro_nap: 1000
0.082335 [opencl_init] opencl_use_pinned_memory: 0
0.082337 [opencl_init] opencl_use_cpu_devices: 0
0.082339 [opencl_init] opencl_avoid_atomics: 0
0.082340 [opencl_init]
0.083120 [opencl_init] found opencl runtime library 'libOpenCL'
0.083139 [opencl_init] opencl library 'libOpenCL' found on your system and loaded
0.138330 [opencl_init] found 1 platform
0.138349 [opencl_init] found 1 device
0.138528 [opencl_init] device 0 `GeForce GTX 770' has sm_20 support.
0.138594 [opencl_init] device 0 `GeForce GTX 770' supports image sizes of 16384 x 16384
0.138597 [opencl_init] device 0 `GeForce GTX 770' allows GPU memory allocations of up to 499MB
[opencl_init] device 0: GeForce GTX 770
GLOBAL_MEM_SIZE: 2000MB
MAX_WORK_GROUP_SIZE: 1024
MAX_WORK_ITEM_DIMENSIONS: 3
MAX_WORK_ITEM_SIZES: [ 1024 1024 64 ]
DRIVER_VERSION: 396.54
DEVICE_VERSION: OpenCL 1.2 CUDA
0.177736 [opencl_init] options for OpenCL compiler: -cl-fast-relaxed-math -DNVIDIA_SM_20=1 -DNVIDIA=1 -I"/usr/share/darktable/kernels"
0.178320 [opencl_init] compiling program `demosaic_ppg.cl' ..
0.179048 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/demosaic_ppg.cl.bin'
0.179052 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/demosaic_ppg.cl'
0.209944 [opencl_build_program] successfully built program
0.209955 [opencl_build_program] BUILD STATUS: 0
0.209957 BUILD LOG:
0.209959

0.209968 [opencl_init] compiling program `atrous.cl' ..
0.210293 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/atrous.cl.bin'
0.210297 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/atrous.cl'
0.211153 [opencl_build_program] successfully built program
0.211159 [opencl_build_program] BUILD STATUS: 0
0.211161 BUILD LOG:
0.211162

0.211168 [opencl_init] compiling program `basic.cl' ..
0.213269 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/basic.cl.bin'
0.213274 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/basic.cl'
0.217501 [opencl_build_program] successfully built program
0.217507 [opencl_build_program] BUILD STATUS: 0
0.217509 BUILD LOG:
0.217511

0.217517 [opencl_init] compiling program `blendop.cl' ..
0.218965 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/blendop.cl.bin'
0.218971 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/blendop.cl'
0.221251 [opencl_build_program] successfully built program
0.221260 [opencl_build_program] BUILD STATUS: 0
0.221262 BUILD LOG:
0.221264

0.221273 [opencl_init] compiling program `highpass.cl' ..
0.221676 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/highpass.cl.bin'
0.221680 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/highpass.cl'
0.222689 [opencl_build_program] successfully built program
0.222695 [opencl_build_program] BUILD STATUS: 0
0.222697 BUILD LOG:
0.222698

0.222704 [opencl_init] compiling program `nlmeans.cl' ..
0.223079 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/nlmeans.cl.bin'
0.223084 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/nlmeans.cl'
0.224180 [opencl_build_program] successfully built program
0.224185 [opencl_build_program] BUILD STATUS: 0
0.224187 BUILD LOG:
0.224188

0.224194 [opencl_init] compiling program `gaussian.cl' ..
0.224647 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/gaussian.cl.bin'
0.224651 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/gaussian.cl'
0.225804 [opencl_build_program] successfully built program
0.225809 [opencl_build_program] BUILD STATUS: 0
0.225811 BUILD LOG:
0.225812

0.225819 [opencl_init] compiling program `sharpen.cl' ..
0.226247 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/sharpen.cl.bin'
0.226251 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/sharpen.cl'
0.227298 [opencl_build_program] successfully built program
0.227303 [opencl_build_program] BUILD STATUS: 0
0.227305 BUILD LOG:
0.227306

0.227312 [opencl_init] compiling program `extended.cl' ..
0.228519 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/extended.cl.bin'
0.228524 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/extended.cl'
0.230867 [opencl_build_program] successfully built program
0.230873 [opencl_build_program] BUILD STATUS: 0
0.230875 BUILD LOG:
0.230876

0.230882 [opencl_init] compiling program `soften.cl' ..
0.231284 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/soften.cl.bin'
0.231289 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/soften.cl'
0.232237 [opencl_build_program] successfully built program
0.232242 [opencl_build_program] BUILD STATUS: 0
0.232244 BUILD LOG:
0.232245

0.232251 [opencl_init] compiling program `bilateral.cl' ..
0.232696 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/bilateral.cl.bin'
0.232701 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/bilateral.cl'
0.233694 [opencl_build_program] successfully built program
0.233699 [opencl_build_program] BUILD STATUS: 0
0.233701 BUILD LOG:
0.233702

0.233708 [opencl_init] compiling program `denoiseprofile.cl' ..
0.234173 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/denoiseprofile.cl.bin'
0.234177 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/denoiseprofile.cl'
0.235475 [opencl_build_program] successfully built program
0.235481 [opencl_build_program] BUILD STATUS: 0
0.235483 BUILD LOG:
0.235484

0.235490 [opencl_init] compiling program `bloom.cl' ..
0.235914 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/bloom.cl.bin'
0.235918 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/bloom.cl'
0.236784 [opencl_build_program] successfully built program
0.236789 [opencl_build_program] BUILD STATUS: 0
0.236791 BUILD LOG:
0.236792

0.236798 [opencl_init] compiling program `colorreconstruction.cl' ..
0.237252 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/colorreconstruction.cl.bin'
0.237257 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/colorreconstruction.cl'
0.238233 [opencl_build_program] successfully built program
0.238239 [opencl_build_program] BUILD STATUS: 0
0.238241 BUILD LOG:
0.238242

0.238247 [opencl_init] compiling program `demosaic_other.cl' ..
0.238539 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/demosaic_other.cl.bin'
0.238543 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/demosaic_other.cl'
0.239260 [opencl_build_program] successfully built program
0.239266 [opencl_build_program] BUILD STATUS: 0
0.239270 BUILD LOG:
0.239272

0.239278 [opencl_init] compiling program `demosaic_vng.cl' ..
0.239855 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/demosaic_vng.cl.bin'
0.239862 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/demosaic_vng.cl'
0.241137 [opencl_build_program] successfully built program
0.241144 [opencl_build_program] BUILD STATUS: 0
0.241146 BUILD LOG:
0.241147

0.241154 [opencl_init] compiling program `demosaic_markesteijn.cl' ..
0.242281 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/demosaic_markesteijn.cl.bin'
0.242287 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/demosaic_markesteijn.cl'
0.244447 [opencl_build_program] successfully built program
0.244453 [opencl_build_program] BUILD STATUS: 0
0.244455 BUILD LOG:
0.244457

0.244463 [opencl_init] compiling program `liquify.cl' ..
0.244787 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/liquify.cl.bin'
0.244791 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/liquify.cl'
0.245569 [opencl_build_program] successfully built program
0.245574 [opencl_build_program] BUILD STATUS: 0
0.245576 BUILD LOG:
0.245577

0.245582 [opencl_init] compiling program `basecurve.cl' ..
0.246006 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/basecurve.cl.bin'
0.246010 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/basecurve.cl'
0.247408 [opencl_build_program] successfully built program
0.247414 [opencl_build_program] BUILD STATUS: 0
0.247416 BUILD LOG:
0.247417

0.247424 [opencl_init] compiling program `locallaplacian.cl' ..
0.247954 [opencl_load_program] loaded cached binary program from file `/home/chris/.cache/darktable/cached_kernels_for_GeForceGTX770/locallaplacian.cl.bin'
0.247958 [opencl_load_program] successfully loaded program from `/usr/share/darktable/kernels/locallaplacian.cl'
0.249193 [opencl_build_program] successfully built program
0.249199 [opencl_build_program] BUILD STATUS: 0
0.249201 BUILD LOG:
0.249202

0.249206 [opencl_init] kernel loading time: 0.0710
0.249212 [opencl_init] OpenCL successfully initialized.
0.249215 [opencl_init] here are the internal numbers and names of OpenCL devices available to darktable:
0.249217 [opencl_init] 0 'GeForce GTX 770'
0.249221 [opencl_init] FINALLY: opencl is AVAILABLE on this system.
0.249223 [opencl_init] initial status of opencl enabled flag is ON.
0.249643 [opencl_create_kernel] successfully loaded kernel `blendop_mask_Lab' (0) for device 0
0.249650 [opencl_create_kernel] successfully loaded kernel `blendop_mask_RAW' (1) for device 0
0.249654 [opencl_create_kernel] successfully loaded kernel `blendop_mask_rgb' (2) for device 0
0.249657 [opencl_create_kernel] successfully loaded kernel `blendop_Lab' (3) for device 0
0.249662 [opencl_create_kernel] successfully loaded kernel `blendop_RAW' (4) for device 0
0.249667 [opencl_create_kernel] successfully loaded kernel `blendop_rgb' (5) for device 0
0.249671 [opencl_create_kernel] successfully loaded kernel `blendop_set_mask' (6) for device 0
0.249675 [opencl_create_kernel] successfully loaded kernel `blendop_display_channel' (7) for device 0
0.249678 [opencl_create_kernel] successfully loaded kernel `zero' (8) for device 0
0.249683 [opencl_create_kernel] successfully loaded kernel `splat' (9) for device 0
0.249687 [opencl_create_kernel] successfully loaded kernel `blur_line' (10) for device 0
0.249691 [opencl_create_kernel] successfully loaded kernel `blur_line_z' (11) for device 0
0.249696 [opencl_create_kernel] successfully loaded kernel `slice' (12) for device 0
0.249699 [opencl_create_kernel] successfully loaded kernel `slice_to_output' (13) for device 0
0.249708 [opencl_create_kernel] successfully loaded kernel `gaussian_column_1c' (14) for device 0
0.249712 [opencl_create_kernel] successfully loaded kernel `gaussian_transpose_1c' (15) for device 0
0.249716 [opencl_create_kernel] successfully loaded kernel `gaussian_column_4c' (16) for device 0
0.249720 [opencl_create_kernel] successfully loaded kernel `gaussian_transpose_4c' (17) for device 0
0.250072 [opencl_create_kernel] successfully loaded kernel `interpolation_resample' (18) for device 0
0.250078 [opencl_create_kernel] successfully loaded kernel `pad_input' (19) for device 0
0.250081 [opencl_create_kernel] successfully loaded kernel `gauss_expand' (20) for device 0
0.250084 [opencl_create_kernel] successfully loaded kernel `gauss_reduce' (21) for device 0
0.250089 [opencl_create_kernel] successfully loaded kernel `laplacian_assemble' (22) for device 0
0.250093 [opencl_create_kernel] successfully loaded kernel `process_curve' (23) for device 0
0.250096 [opencl_create_kernel] successfully loaded kernel `write_back' (24) for device 0
0.250106 [opencl_priorities] these are your device priorities:
0.250108 [opencl_priorities] image preview export thumbnail
0.250112 [opencl_priorities] 0 -1 0 0
0.250116 [opencl_priorities] show if opencl use is mandatory for a given pixelpipe:
0.250117 [opencl_priorities] image preview export thumbnail
0.250120 [opencl_priorities] 0 0 0 0
0.250127 [opencl_synchronization_timeout] synchronization timeout set to 200
0.442734 [opencl_create_kernel] successfully loaded kernel `sharpen_hblur' (25) for device 0
0.442787 [opencl_create_kernel] successfully loaded kernel `sharpen_vblur' (26) for device 0
0.442799 [opencl_create_kernel] successfully loaded kernel `sharpen_mix' (27) for device 0
0.467804 [opencl_create_kernel] successfully loaded kernel `clip_and_zoom_demosaic_half_size' (28) for device 0
0.467820 [opencl_create_kernel] successfully loaded kernel `ppg_demosaic_green' (29) for device 0
0.467825 [opencl_create_kernel] successfully loaded kernel `green_equilibration_lavg' (30) for device 0
0.467831 [opencl_create_kernel] successfully loaded kernel `green_equilibration_favg_reduce_first' (31) for device 0
0.467835 [opencl_create_kernel] successfully loaded kernel `green_equilibration_favg_reduce_second' (32) for device 0
0.467838 [opencl_create_kernel] successfully loaded kernel `green_equilibration_favg_apply' (33) for device 0
0.467843 [opencl_create_kernel] successfully loaded kernel `pre_median' (34) for device 0
0.467846 [opencl_create_kernel] successfully loaded kernel `ppg_demosaic_redblue' (35) for device 0
0.467851 [opencl_create_kernel] successfully loaded kernel `clip_and_zoom' (36) for device 0
0.467854 [opencl_create_kernel] successfully loaded kernel `border_interpolate' (37) for device 0
0.467859 [opencl_create_kernel] successfully loaded kernel `color_smoothing' (38) for device 0
0.467862 [opencl_create_kernel] successfully loaded kernel `passthrough_monochrome' (39) for device 0
0.467866 [opencl_create_kernel] successfully loaded kernel `clip_and_zoom_demosaic_passthrough_monochrome' (40) for device 0
0.467871 [opencl_create_kernel] successfully loaded kernel `vng_border_interpolate' (41) for device 0
0.467875 [opencl_create_kernel] successfully loaded kernel `vng_lin_interpolate' (42) for device 0
0.467880 [opencl_create_kernel] successfully loaded kernel `clip_and_zoom_demosaic_third_size_xtrans' (43) for device 0
0.467885 [opencl_create_kernel] successfully loaded kernel `vng_green_equilibrate' (44) for device 0
0.467890 [opencl_create_kernel] successfully loaded kernel `vng_interpolate' (45) for device 0
0.467894 [opencl_create_kernel] successfully loaded kernel `markesteijn_initial_copy' (46) for device 0
0.467899 [opencl_create_kernel] successfully loaded kernel `markesteijn_green_minmax' (47) for device 0
0.467906 [opencl_create_kernel] successfully loaded kernel `markesteijn_interpolate_green' (48) for device 0
0.467912 [opencl_create_kernel] successfully loaded kernel `markesteijn_solitary_green' (49) for device 0
0.467918 [opencl_create_kernel] successfully loaded kernel `markesteijn_recalculate_green' (50) for device 0
0.467923 [opencl_create_kernel] successfully loaded kernel `markesteijn_red_and_blue' (51) for device 0
0.467927 [opencl_create_kernel] successfully loaded kernel `markesteijn_interpolate_twoxtwo' (52) for device 0
0.467931 [opencl_create_kernel] successfully loaded kernel `markesteijn_convert_yuv' (53) for device 0
0.467935 [opencl_create_kernel] successfully loaded kernel `markesteijn_differentiate' (54) for device 0
0.467939 [opencl_create_kernel] successfully loaded kernel `markesteijn_homo_threshold' (55) for device 0
0.467943 [opencl_create_kernel] successfully loaded kernel `markesteijn_homo_set' (56) for device 0
0.467946 [opencl_create_kernel] successfully loaded kernel `markesteijn_homo_sum' (57) for device 0
0.467950 [opencl_create_kernel] successfully loaded kernel `markesteijn_homo_max' (58) for device 0
0.467954 [opencl_create_kernel] successfully loaded kernel `markesteijn_homo_max_corr' (59) for device 0
0.467957 [opencl_create_kernel] successfully loaded kernel `markesteijn_homo_quench' (60) for device 0
0.467962 [opencl_create_kernel] successfully loaded kernel `markesteijn_zero' (61) for device 0
0.467966 [opencl_create_kernel] successfully loaded kernel `markesteijn_accu' (62) for device 0
0.467970 [opencl_create_kernel] successfully loaded kernel `markesteijn_final' (63) for device 0
0.469215 [opencl_create_kernel] successfully loaded kernel `overexposed' (64) for device 0
0.471902 [opencl_create_kernel] successfully loaded kernel `channelmixer' (65) for device 0
0.479268 [opencl_create_kernel] successfully loaded kernel `shadows_highlights_mix' (66) for device 0
0.480842 [opencl_create_kernel] successfully loaded kernel `rawprepare_1f' (67) for device 0
0.480852 [opencl_create_kernel] successfully loaded kernel `rawprepare_1f_unnormalized' (68) for device 0
0.480856 [opencl_create_kernel] successfully loaded kernel `rawprepare_4f' (69) for device 0
0.487018 [opencl_create_kernel] successfully loaded kernel `colorreconstruction_zero' (70) for device 0
0.487036 [opencl_create_kernel] successfully loaded kernel `colorreconstruction_splat' (71) for device 0
0.487041 [opencl_create_kernel] successfully loaded kernel `colorreconstruction_blur_line' (72) for device 0
0.487046 [opencl_create_kernel] successfully loaded kernel `colorreconstruction_slice' (73) for device 0
0.489800 [opencl_create_kernel] successfully loaded kernel `colorize' (74) for device 0
0.491227 [opencl_create_kernel] successfully loaded kernel `lowpass_mix' (75) for device 0
0.497582 [opencl_create_kernel] successfully loaded kernel `highlights_1f_clip' (76) for device 0
0.497597 [opencl_create_kernel] successfully loaded kernel `highlights_1f_lch_bayer' (77) for device 0
0.497602 [opencl_create_kernel] successfully loaded kernel `highlights_1f_lch_xtrans' (78) for device 0
0.497605 [opencl_create_kernel] successfully loaded kernel `highlights_4f_clip' (79) for device 0
0.499020 [opencl_create_kernel] successfully loaded kernel `pixelmax_first' (80) for device 0
0.499029 [opencl_create_kernel] successfully loaded kernel `pixelmax_second' (81) for device 0
0.499033 [opencl_create_kernel] successfully loaded kernel `global_tonemap_reinhard' (82) for device 0
0.499036 [opencl_create_kernel] successfully loaded kernel `global_tonemap_drago' (83) for device 0
0.499040 [opencl_create_kernel] successfully loaded kernel `global_tonemap_filmic' (84) for device 0
0.501935 [opencl_create_kernel] successfully loaded kernel `eaw_decompose' (85) for device 0
0.501949 [opencl_create_kernel] successfully loaded kernel `eaw_synthesize' (86) for device 0
0.506105 [opencl_create_kernel] successfully loaded kernel `vibrance' (87) for device 0
0.507450 [opencl_create_kernel] successfully loaded kernel `splittoning' (88) for device 0
0.510275 [opencl_create_kernel] successfully loaded kernel `colorin_unbound' (89) for device 0
0.510292 [opencl_create_kernel] successfully loaded kernel `colorin_clipping' (90) for device 0
0.511659 [opencl_create_kernel] successfully loaded kernel `vignette' (91) for device 0
0.514306 [opencl_create_kernel] successfully loaded kernel `graduatedndp' (92) for device 0
0.514317 [opencl_create_kernel] successfully loaded kernel `graduatedndm' (93) for device 0
0.517299 [opencl_create_kernel] successfully loaded kernel `basecurve_lut' (94) for device 0
0.517309 [opencl_create_kernel] successfully loaded kernel `basecurve_zero' (95) for device 0
0.517313 [opencl_create_kernel] successfully loaded kernel `basecurve_ev_lut' (96) for device 0
0.517317 [opencl_create_kernel] successfully loaded kernel `basecurve_compute_features' (97) for device 0
0.517320 [opencl_create_kernel] successfully loaded kernel `basecurve_blur_h' (98) for device 0
0.517324 [opencl_create_kernel] successfully loaded kernel `basecurve_blur_v' (99) for device 0
0.517330 [opencl_create_kernel] successfully loaded kernel `basecurve_expand' (100) for device 0
0.517333 [opencl_create_kernel] successfully loaded kernel `basecurve_reduce' (101) for device 0
0.517339 [opencl_create_kernel] successfully loaded kernel `basecurve_detail' (102) for device 0
0.517344 [opencl_create_kernel] successfully loaded kernel `basecurve_adjust_features' (103) for device 0
0.517347 [opencl_create_kernel] successfully loaded kernel `basecurve_blend_gaussian' (104) for device 0
0.517350 [opencl_create_kernel] successfully loaded kernel `basecurve_blend_laplacian' (105) for device 0
0.517353 [opencl_create_kernel] successfully loaded kernel `basecurve_normalize' (106) for device 0
0.517358 [opencl_create_kernel] successfully loaded kernel `basecurve_reconstruct' (107) for device 0
0.517362 [opencl_create_kernel] successfully loaded kernel `basecurve_finalize' (108) for device 0
0.522911 [opencl_create_kernel] successfully loaded kernel `colorzones' (109) for device 0
0.525679 [opencl_create_kernel] successfully loaded kernel `bloom_threshold' (110) for device 0
0.525695 [opencl_create_kernel] successfully loaded kernel `bloom_hblur' (111) for device 0
0.525699 [opencl_create_kernel] successfully loaded kernel `bloom_vblur' (112) for device 0
0.525702 [opencl_create_kernel] successfully loaded kernel `bloom_mix' (113) for device 0
0.527231 [opencl_create_kernel] successfully loaded kernel `flip' (114) for device 0
0.529835 [opencl_create_kernel] successfully loaded kernel `monochrome_filter' (115) for device 0
0.529848 [opencl_create_kernel] successfully loaded kernel `monochrome' (116) for device 0
0.533124 [opencl_create_kernel] successfully loaded kernel `borders_fill' (117) for device 0
0.538538 [opencl_create_kernel] successfully loaded kernel `whitebalance_4f' (118) for device 0
0.538557 [opencl_create_kernel] successfully loaded kernel `whitebalance_1f' (119) for device 0
0.538561 [opencl_create_kernel] successfully loaded kernel `whitebalance_1f_xtrans' (120) for device 0
0.540516 [opencl_create_kernel] successfully loaded kernel `clip_rotate_bilinear' (121) for device 0
0.540534 [opencl_create_kernel] successfully loaded kernel `clip_rotate_bicubic' (122) for device 0
0.540540 [opencl_create_kernel] successfully loaded kernel `clip_rotate_lanczos2' (123) for device 0
0.540547 [opencl_create_kernel] successfully loaded kernel `clip_rotate_lanczos3' (124) for device 0
0.542113 [opencl_create_kernel] successfully loaded kernel `tonecurve' (125) for device 0
0.565621 [opencl_create_kernel] successfully loaded kernel `warp_kernel' (126) for device 0
0.567261 [opencl_create_kernel] successfully loaded kernel `nlmeans_init' (127) for device 0
0.567276 [opencl_create_kernel] successfully loaded kernel `nlmeans_dist' (128) for device 0
0.567280 [opencl_create_kernel] successfully loaded kernel `nlmeans_horiz' (129) for device 0
0.567284 [opencl_create_kernel] successfully loaded kernel `nlmeans_vert' (130) for device 0
0.567287 [opencl_create_kernel] successfully loaded kernel `nlmeans_accu' (131) for device 0
0.567292 [opencl_create_kernel] successfully loaded kernel `nlmeans_finish' (132) for device 0
0.570051 [opencl_create_kernel] successfully loaded kernel `colorcorrection' (133) for device 0
0.575465 [opencl_create_kernel] successfully loaded kernel `soften_overexposed' (134) for device 0
0.575479 [opencl_create_kernel] successfully loaded kernel `soften_hblur' (135) for device 0
0.575485 [opencl_create_kernel] successfully loaded kernel `soften_vblur' (136) for device 0
0.575489 [opencl_create_kernel] successfully loaded kernel `soften_mix' (137) for device 0
0.576905 [opencl_create_kernel] successfully loaded kernel `colorcontrast' (138) for device 0
0.579751 [opencl_create_kernel] successfully loaded kernel `relight' (139) for device 0
0.582140 [opencl_create_kernel] successfully loaded kernel `colorout' (140) for device 0
0.584866 [opencl_create_kernel] successfully loaded kernel `ashift_bilinear' (141) for device 0
0.584877 [opencl_create_kernel] successfully loaded kernel `ashift_bicubic' (142) for device 0
0.584882 [opencl_create_kernel] successfully loaded kernel `ashift_lanczos2' (143) for device 0
0.584886 [opencl_create_kernel] successfully loaded kernel `ashift_lanczos3' (144) for device 0
0.586233 [opencl_create_kernel] successfully loaded kernel `profilegamma' (145) for device 0
0.587663 [opencl_create_kernel] successfully loaded kernel `colorchecker' (146) for device 0
0.590771 [opencl_create_kernel] successfully loaded kernel `rawoverexposed_mark_cfa' (147) for device 0
0.590786 [opencl_create_kernel] successfully loaded kernel `rawoverexposed_mark_solid' (148) for device 0
0.590790 [opencl_create_kernel] successfully loaded kernel `rawoverexposed_falsecolor' (149) for device 0
0.593145 [opencl_create_kernel] successfully loaded kernel `exposure' (150) for device 0
0.595635 [opencl_create_kernel] successfully loaded kernel `levels' (151) for device 0
0.596970 [opencl_create_kernel] successfully loaded kernel `lowlight' (152) for device 0
0.599570 [opencl_create_kernel] successfully loaded kernel `colisa' (153) for device 0
0.601060 [opencl_create_kernel] successfully loaded kernel `colormapping_histogram' (154) for device 0
0.601070 [opencl_create_kernel] successfully loaded kernel `colormapping_mapping' (155) for device 0
0.603603 [opencl_create_kernel] successfully loaded kernel `invert_1f' (156) for device 0
0.603613 [opencl_create_kernel] successfully loaded kernel `invert_4f' (157) for device 0
0.604918 [opencl_create_kernel] successfully loaded kernel `zonesystem' (158) for device 0
0.606274 [opencl_create_kernel] successfully loaded kernel `velvia' (159) for device 0
0.611438 [opencl_create_kernel] successfully loaded kernel `highpass_invert' (160) for device 0
0.611450 [opencl_create_kernel] successfully loaded kernel `highpass_hblur' (161) for device 0
0.611454 [opencl_create_kernel] successfully loaded kernel `highpass_vblur' (162) for device 0
0.611457 [opencl_create_kernel] successfully loaded kernel `highpass_mix' (163) for device 0
0.612828 [opencl_create_kernel] successfully loaded kernel `colorbalance' (164) for device 0
0.618606 [opencl_create_kernel] successfully loaded kernel `lens_distort_bilinear' (165) for device 0
0.618618 [opencl_create_kernel] successfully loaded kernel `lens_distort_bicubic' (166) for device 0
0.618622 [opencl_create_kernel] successfully loaded kernel `lens_distort_lanczos2' (167) for device 0
0.618627 [opencl_create_kernel] successfully loaded kernel `lens_distort_lanczos3' (168) for device 0
0.618632 [opencl_create_kernel] successfully loaded kernel `lens_vignette' (169) for device 0
0.698585 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_precondition' (170) for device 0
0.698600 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_init' (171) for device 0
0.698604 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_dist' (172) for device 0
0.698607 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_horiz' (173) for device 0
0.698611 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_vert' (174) for device 0
0.698614 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_accu' (175) for device 0
0.698625 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_finish' (176) for device 0
0.698630 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_backtransform' (177) for device 0
0.698634 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_decompose' (178) for device 0
0.698642 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_synthesize' (179) for device 0
0.698646 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_reduce_first' (180) for device 0
0.698649 [opencl_create_kernel] successfully loaded kernel `denoiseprofile_reduce_second' (181) for device 0
1.400288 [pixelpipe_process] [thumbnail] using device 0
1.416204 [pixelpipe_process] [thumbnail] using device -1
4.777537 [pixelpipe_process] [full] using device 0
5.896305 [pixelpipe_process] [preview] using device -1
6.968897 [pixelpipe_process] [full] using device 0
7.895573 [pixelpipe_process] [full] using device 0
9.800564 [pixelpipe_process] [full] using device 0
10.496539 [pixelpipe_process] [full] using device 0
12.568109 [pixelpipe_process] [full] using device 0
13.284934 [pixelpipe_process] [full] using device 0
14.534447 [pixelpipe_process] [full] using device 0
15.218328 [pixelpipe_process] [full] using device 0
17.396639 [pixelpipe_process] [thumbnail] using device 0
19.725684 [pixelpipe_process] [full] using device 0
21.144610 [pixelpipe_process] [preview] using device -1
22.792503 [pixelpipe_process] [full] using device 0
23.787973 [pixelpipe_process] [full] using device 0
25.498459 [pixelpipe_process] [full] using device 0
26.130551 [pixelpipe_process] [full] using device 0
28.374543 [pixelpipe_process] [full] using device 0
29.164253 [pixelpipe_process] [full] using device 0
31.654856 [pixelpipe_process] [thumbnail] using device 0
33.716266 [pixelpipe_process] [full] using device 0
34.881616 [pixelpipe_process] [preview] using device -1
35.532656 [pixelpipe_process] [full] using device 0
36.265283 [pixelpipe_process] [full] using device 0
38.610330 [pixelpipe_process] [full] using device 0
39.362130 [pixelpipe_process] [full] using device 0
40.926311 [pixelpipe_process] [full] using device 0
41.681037 [pixelpipe_process] [full] using device 0
43.268310 [pixelpipe_process] [full] using device 0
44.127269 [pixelpipe_process] [full] using device 0
45.446350 [pixelpipe_process] [full] using device 0
46.339001 [pixelpipe_process] [full] using device 0
48.893163 [pixelpipe_process] [thumbnail] using device 0
53.061454 [pixelpipe_process] [full] using device 0
54.372933 [pixelpipe_process] [preview] using device -1
55.636416 [pixelpipe_process] [full] using device 0
56.572917 [pixelpipe_process] [full] using device 0
58.860311 [pixelpipe_process] [full] using device 0
59.508911 [pixelpipe_process] [full] using device 0
61.126240 [pixelpipe_process] [full] using device 0
61.796862 [pixelpipe_process] [full] using device 0
64.351137 [pixelpipe_process] [thumbnail] using device 0
71.080246 [pixelpipe_process] [thumbnail] using device 0
71.105408 [pixelpipe_process] [thumbnail] using device -1
71.110044 [pixelpipe_process] [thumbnail] using device -1
71.133197 [pixelpipe_process] [thumbnail] using device -1
73.359418 [pixelpipe_process] [thumbnail] using device 0
73.494007 [pixelpipe_process] [thumbnail] using device -1
73.956930 [pixelpipe_process] [thumbnail] using device -1
74.017424 [pixelpipe_process] [thumbnail] using device -1
75.803093 [pixelpipe_process] [thumbnail] using device 0
76.087542 [pixelpipe_process] [thumbnail] using device -1
76.372952 [pixelpipe_process] [full] using device -1
76.393583 [pixelpipe_process] [thumbnail] using device -1
76.717745 [pixelpipe_process] [thumbnail] using device -1
79.433569 [pixelpipe_process] [preview] using device -1
80.763435 [pixelpipe_process] [full] using device 0
81.587742 [pixelpipe_process] [full] using device 0
83.630442 [pixelpipe_process] [full] using device 0
85.186185 [pixelpipe_process] [full] using device 0
85.756128 [pixelpipe_process] [full] using device 0
87.845795 [pixelpipe_process] [thumbnail] using device 0
89.894414 [pixelpipe_process] [full] using device 0
90.722018 [pixelpipe_process] [preview] using device -1
92.172567 [pixelpipe_process] [full] using device 0
92.824676 [pixelpipe_process] [full] using device 0
94.850150 [pixelpipe_process] [full] using device 0
95.408100 [pixelpipe_process] [full] using device 0
96.595639 [pixelpipe_process] [full] using device 0
97.092374 [pixelpipe_process] [full] using device 0
98.191378 [pixelpipe_process] [full] using device 0
98.815802 [pixelpipe_process] [full] using device 0
105.590086 [pixelpipe_process] [full] using device 0
106.244262 [pixelpipe_process] [full] using device 0
107.515801 [pixelpipe_process] [full] using device 0
108.038088 [pixelpipe_process] [full] using device 0
109.297140 [pixelpipe_process] [full] using device 0
111.246453 [pixelpipe_process] [thumbnail] using device 0
113.847619 [pixelpipe_process] [full] using device 0
114.928711 [pixelpipe_process] [preview] using device -1
116.006999 [pixelpipe_process] [full] using device 0
116.979865 [pixelpipe_process] [full] using device 0
120.337109 [pixelpipe_process] [full] using device 0
121.189287 [pixelpipe_process] [full] using device 0
122.592211 [pixelpipe_process] [full] using device 0
123.311058 [pixelpipe_process] [full] using device 0
124.525939 [pixelpipe_process] [full] using device 0
125.472672 [pixelpipe_process] [full] using device 0
127.337710 [pixelpipe_process] [full] using device 0
129.097175 [pixelpipe_process] [full] using device 0
131.386776 [pixelpipe_process] [thumbnail] using device 0
134.901569 [pixelpipe_process] [full] using device 0
135.996277 [pixelpipe_process] [preview] using device -1
136.634862 [pixelpipe_process] [full] using device 0
137.480600 [pixelpipe_process] [full] using device 0
178.802094 [pixelpipe_process] [full] using device 0
178.814168 [opencl_events_flush] could not get event info for '[Write Image (from host to device)]': -9999
178.814185 [opencl_events_flush] could not get event info for 'rawprepare_1f': -9999
178.814189 [opencl_pixelpipe] could not run module 'rawprepare' on gpu. falling back to cpu path
178.814353 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5
178.814472 [pixelpipe_process] [full] falling back to cpu path
180.181644 [pixelpipe_process] [full] using device 0
180.183558 [opencl_pixelpipe] couldn't copy image to opencl device for module rawprepare
180.184649 [opencl_pixelpipe] could not run module 'rawprepare' on gpu. falling back to cpu path
180.184716 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5
180.184932 [pixelpipe_process] [full] falling back to cpu path
182.313813 [pixelpipe_process] [full] using device 0
182.315824 [opencl_pixelpipe] couldn't copy image to opencl device for module rawprepare
182.316932 [opencl_pixelpipe] could not run module 'rawprepare' on gpu. falling back to cpu path
182.317024 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5
182.317255 [pixelpipe_process] [full] falling back to cpu path
183.887622 [pixelpipe_process] [full] using device 0
183.898052 [opencl_pixelpipe] couldn't copy image to opencl device for module rawprepare
183.899141 [opencl_pixelpipe] could not run module 'rawprepare' on gpu. falling back to cpu path
183.899193 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5
183.899390 [pixelpipe_process] [full] falling back to cpu path
188.034465 [pixelpipe_process] [thumbnail] using device 0
188.043391 [opencl_pixelpipe] couldn't copy image to opencl device for module rawprepare
188.044479 [opencl_pixelpipe] could not run module 'rawprepare' on gpu. falling back to cpu path
188.044508 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5
188.044643 [opencl] frequent opencl errors encountered; disabling opencl for this session!
188.044682 [pixelpipe_process] [thumbnail] falling back to cpu path
@

History

#1 Updated by Chris Elston 6 months ago

I tried running journalctl -f while editing and each time darktable falls back to cpu I see the following Xid error

kernel: NVRM: Xid (PCI:0000:01:00): 31, Ch 00000009, engmask 00000108, intr 10000000

NVidia website (https://docs.nvidia.com/deploy/xid-errors/index.html) says this (error 31) is a "GPU memory page fault".

#2 Updated by Chris Elston 6 months ago

Someone else showing similar issues on a different card http://darktable-users.narkive.com/vZexsG6h/heavily-disappointed-about-opencl

#3 Updated by Christian Kanzian 6 months ago

0.138597 [opencl_init] device 0 `GeForce GTX 770' allows GPU memory allocations of up to 499MB

500 MB is not much memory?

I followed the disscusion on the mailing-list and experimented with nvidid-smi.
nvidia-smi showed peak memory usages of more than 2 GB with 24 MPix images on export in my testcases.

I think you can set opencl_memory_headroom to zero: https://www.darktable.org/usermanual/en/darktable_and_opencl_amd.html

#4 Updated by Chris Elston 6 months ago

I have 2GB RAM on my card. I don't think the 499MB represents the amount of available RAM (Darktable would refuse to use opencl at all with that little amount of RAM). If you look towards the top of my log it has "GLOBAL_MEM_SIZE: 2000MB"

Agreed I can set headroom very low (since nothing else apart from darktable is using the card). However I have set it as low as 100MB and still get the same errors.

My understanding from the manual/blog posts is that it's "-4" errors that are resolved with the headroom parameter. I'm getting "-5" errors reported by darktable. The manual suggests reducing the number of event handles might help -5 errors but I'm not entirely clear what that parameter does - what's the impact of reducing it?

#5 Updated by Chris Elston 6 months ago

Tried opencl_number_event_handles=1. Still no joy - same errors.

#6 Updated by Chris Elston 6 months ago

It seems that I can consistenly reproduce this by leaving darktable idle for 20-30 seconds (either before or after doing some editing). When I go back in and continue to edit, the error occurs, most often starting with something like the following:

49.923403 [opencl_pixelpipe] couldn't copy image to opencl device for module rawprepare
49.924488 [opencl_pixelpipe] could not run module 'rawprepare' on gpu. falling back to cpu path
49.924516 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5

or

41.053141 [opencl_events_flush] could not get event info for 'whitebalance_1f': -9999
41.053167 [opencl_pixelpipe] could not run module 'temperature' on gpu. falling back to cpu path
41.053404 [opencl_pixelpipe (b)] late opencl error detected while copying back to cpu buffer: -5
41.053616 [pixelpipe_process] [full] falling back to cpu path

The errors occur less frequently if I start using darktable immediately and keep continuously editing, generating thumbnails or otherwise throwing processing work at the GPU.

#7 Updated by Chris Elston 6 months ago

Is there anything I can do to help progress this issue?

#8 Updated by Chris Elston 6 months ago

This looks like it might be an issue with the drivers. I've downgraded to the (340.107) legacy branch of the NVidia driver and the issue seems to be resolved.

The issue is present on both the long lived (390.87) and beta (410.57) branches of the driver, even though my card is supposed to be supported on both versions.

I have raised the issue on the NVidia developer forums.

Also available in: Atom PDF