Works ok for me on Mint 17 with the 331.38 nVidia driver from xorg-edgers:

nick@nick-lm17 ~ $ 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] kernel loading time: 2.6977
[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 650 Ti BOOST'
[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.


Do you have nvidia-opencl-icd-331 installed?

Nick

On 24/07/14 07:32, KOVÁCS István wrote:
> (Merging another thread that started on darktable-dev, as the nvidia
> OpenCL problem is not a DT development issue; I found this thread in
> the list archives. In response to my email, Ulrich suggested that my
> problem may be fixed in recent nvidia driver releases:
> [...] you might upgrade your nvidia driver. The background of your
> issue is a long standing bug in nvidia's opencl implementation
> reported to the developers some time ago. I recently got the
> confirmation of the nvidia guys that the issue has been fixed since
> driver version 331.67.)
>
> Unfortunately, 331.89 (from xorg-edgers) disables OpenCL completely:
>
> kofa@eagle:~/darktable-dev/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] could not find opencl runtime library 'libOpenCL'
> [opencl_init] no working opencl library found. Continue with opencl disabled
> [opencl_init] FINALLY: opencl is NOT AVAILABLE on this system.
> [opencl_init] initial status of opencl enabled flag is OFF.
>
> Verification:
> kofa@eagle:~/darktable-dev/bin > dpkg -l|grep nvidia
> rc  nvidia-304                                  304.117-0ubuntu1
>                                   amd64        NVIDIA legacy binary
> driver - version 304.117
> ii  nvidia-331
> 331.89-0ubuntu1~xedgers14.04.2                          amd64
> NVIDIA binary driver - version 331.89
> ii  nvidia-331-dev
> 331.89-0ubuntu1~xedgers14.04.2                          amd64
> NVIDIA binary Xorg driver development files
> ii  nvidia-331-uvm
> 331.89-0ubuntu1~xedgers14.04.2                          amd64
> NVIDIA Unified Memory kernel module
> rc  nvidia-340
> 340.24-0ubuntu1~xedgers14.04.1                          amd64
> NVIDIA binary driver - version 340.24
> rc  nvidia-libopencl1-304                       304.117-0ubuntu1
>                                   amd64        NVIDIA OpenCL Driver and
> ICD Loader library
> ii  nvidia-libopencl1-331
> 331.89-0ubuntu1~xedgers14.04.2                          amd64
> NVIDIA OpenCL Driver and ICD Loader library
> rc  nvidia-opencl-icd-304                       304.117-0ubuntu1
>                                   amd64        NVIDIA OpenCL ICD
> ii  nvidia-opencl-icd-331
> 331.89-0ubuntu1~xedgers14.04.2                          amd64
> NVIDIA OpenCL ICD
> ii  nvidia-settings
> 340.24-0ubuntu1~xedgers14.04.1                          amd64
> Tool for configuring the NVIDIA graphics driver
> ii  nvidia-settings-304
> 340.24-0ubuntu1~xedgers14.04.1                          amd64
> Transitional package for nvidia-settings
>
> kofa@eagle:~/darktable-dev/bin > dpkg -L nvidia-opencl-icd-331
> /.
> /etc
> /etc/OpenCL
> /etc/OpenCL/vendors
> /etc/OpenCL/vendors/nvidia.icd
> /usr
> /usr/lib
> /usr/lib/i386-linux-gnu
> /usr/lib/i386-linux-gnu/libnvidia-opencl.so.331.89
> /usr/lib/x86_64-linux-gnu
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.331.89
> /usr/share
> /usr/share/doc
> /usr/share/doc/nvidia-opencl-icd-331
> /usr/share/doc/nvidia-opencl-icd-331/changelog.Debian.gz
> /usr/share/doc/nvidia-opencl-icd-331/copyright
> /usr/lib/i386-linux-gnu/libnvidia-opencl.so.1
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1
>
> kofa@eagle:~/darktable-dev/bin > cat /etc/OpenCL/vendors/nvidia.icd
> libnvidia-opencl.so.1
>
> kofa@eagle:~/darktable-dev/bin > ls -l
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1
> lrwxrwxrwx 1 root root 26 Jul 16 09:24
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1 ->
> libnvidia-opencl.so.331.89
>
> kofa@eagle:~/darktable-dev/bin > ls -l
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.331.89
> -rw-r--r-- 1 root root 13971304 Jul  1 20:37
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.331.89
>
> More verification (libOpenCL is present, chain of symlinks leads to
> nvidia's implementation):
> kofa@eagle:~/darktable-dev/bin > ls -l 
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1
> lrwxrwxrwx 1 root root 16 Jul 16 09:24
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1 -> libOpenCL.so.1.0
> kofa@eagle:~/darktable-dev/bin > ls -l
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0
> lrwxrwxrwx 1 root root 18 Jul 16 09:24
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0 -> libOpenCL.so.1.0.0
> kofa@eagle:~/darktable-dev/bin > ls -l
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
> -rw-r--r-- 1 root root 21296 Jul  1 20:37
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
> kofa@eagle:~/darktable-dev/bin > dpkg -S
> /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
> nvidia-libopencl1-331: /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
>
>
> So, everything seems to be there, the nvidia driver is installed, the
> OpenCL library is installed and points to the right library, the
> library symlink is set up properly, and the actual implementation file
> is present, too.
>
> Trying to force the library via darktablerc results in another error:
> 'could not load all required symbols from library':
> kofa@eagle:~/darktable-dev/bin > ./darktable -d opencl
> [opencl_init] opencl related configuration options:
> [opencl_init]
> [opencl_init] opencl: 1
> [opencl_init] opencl_library: 'libnvidia-opencl.so.1'
> [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: 'libnvidia-opencl.so.1'
> [opencl_init] could not load all required symbols from library
> [opencl_init] no working opencl library found. Continue with opencl disabled
> [opencl_init] FINALLY: opencl is NOT AVAILABLE on this system.
> [opencl_init] initial status of opencl enabled flag is OFF.
>
>
>
> On 23 July 2014 22:37, KOVÁCS István <[email protected]> wrote:
>> I'll give nvidia 331.67 a try using the recently updated xorg-edgers
>> PPA, thanks!
>>
>> On 23 July 2014 22:04, Ulrich Pegelow <[email protected]> wrote:
>>> Dear Istvan,
>>>
>>> I consider your proposed option but it will take a bit time for
>>> implementation.
>>>
>>> In between you might upgrade your nvidia driver. The background of your
>>> issue is a long standing bug in nvidia's opencl implementation reported
>>> to the developers some time ago. I recently got the confirmation of the
>>> nvidia guys that the issue has been fixed since driver version 331.67.
>>>
>>> Best wishes
>>>
>>> Ulrich
>>>
>>> Am 23.07.2014 20:56, schrieb KOVÁCS István:
>>>> Dear All,
>>>>
>>>> Given the issues with nvidia (some versions just don't work, some work
>>>> but fail to compile all kernels), I have to remove the blendop kernel
>>>> to get DT to use OpenCL:
>>>> ===
>>>> kofa@eagle:~/darktable-dev/bin > dpkg -l|grep nvidia
>>>> ii  nvidia-304                                  304.117-0ubuntu1
>>>>                              amd64        NVIDIA legacy binary driver -
>>>> version 304.117
>>>> ii  nvidia-libopencl1-304                       304.117-0ubuntu1
>>>>                              amd64        NVIDIA OpenCL Driver and ICD
>>>> Loader library
>>>> ii  nvidia-opencl-icd-304                       304.117-0ubuntu1
>>>>                              amd64        NVIDIA OpenCL ICD
>>>> ii  nvidia-settings                             331.20-0ubuntu8
>>>>                              amd64        Tool for configuring the
>>>> NVIDIA graphics driver
>>>> ii  nvidia-settings-304                         331.20-0ubuntu8
>>>>                              amd64        Transitional package for
>>>> nvidia-settings
>>>> ===
>>>> [opencl_init] compiling program `blendop.cl' ..
>>>> [opencl_fopen_stat] could not open file
>>>> `/home/kofa/.cache/darktable/cached_kernels_for_GeForceGTX650/blendop.cl.bin'!
>>>> [opencl_load_program] could not load cached binary program, trying to
>>>> compile source
>>>> [opencl_load_program] successfully loaded program from
>>>> `/home/kofa/darktable-dev/share/darktable/kernels/blendop.cl'
>>>> [opencl_build_program] could not build program: -30
>>>> [opencl_build_program] BUILD STATUS: -2
>>>> BUILD LOG:
>>>>
>>>>
>>>> [opencl_init] failed to compile program `blendop.cl'!
>>>> [opencl_init] FINALLY: opencl is NOT AVAILABLE on this system.
>>>> [opencl_init] initial status of opencl enabled flag is OFF.
>>>> ===
>>>> kofa@eagle:~/darktable-dev > rm share/darktable/kernels/blendop.cl
>>>> kofa@eagle:~/darktable-dev > cd bin/
>>>> kofa@eagle:~/darktable-dev/bin > ./darktable -debug opencl
>>>> [...]
>>>> [opencl_init] kernel loading time: 0.1189
>>>> [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 650'
>>>> [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] could not create kernel `blendop_mask_Lab'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_mask_RAW'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_mask_rgb'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_Lab'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_RAW'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_rgb'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_copy_alpha'! (-44)
>>>> [opencl_create_kernel] could not create kernel `blendop_set_mask'! (-44)
>>>> ===
>>>>
>>>> I know this is just a workaround, but I've been unable to find a
>>>> better version (I've tried xorg-edgers, too, with all available
>>>> versions).
>>>> Anyway, instead of disabling OpenCL completely, I think DT should just
>>>> behave as if the module was not present at all, and enable whatever
>>>> OpenCL kernels are available. Maybe a warning on the UI would be nice,
>>>> telling the user that performance is not optimal, telling them to run
>>>> with -debug opencl.
>>>>
>>>> What do you think?
>>>>
>>>> Thanks,
>>>> Kofa
>>>>
>>> ------------------------------------------------------------------------------
>>> Want fast and easy access to all the code in your enterprise? Index and
>>> search up to 200,000 lines of code with a free copy of Black Duck
>>> Code Sight - the same software that powers the world's largest code
>>> search on Ohloh, the Black Duck Open Hub! Try it now.
>>> http://p.sf.net/sfu/bds
>>> _______________________________________________
>>> darktable-devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/darktable-devel
> ------------------------------------------------------------------------------
> Want fast and easy access to all the code in your enterprise? Index and
> search up to 200,000 lines of code with a free copy of Black Duck
> Code Sight - the same software that powers the world's largest code
> search on Ohloh, the Black Duck Open Hub! Try it now.
> http://p.sf.net/sfu/bds
> _______________________________________________
> Darktable-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/darktable-users


------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
Darktable-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/darktable-users

Reply via email to