6

I am only one without OpenCL or it is a common problem?

UPDATE: It appears that something removed /etc/OpenCL/vendors/nvidia.icd, which should have been installed with nvidia-opencl-icd-331, but it doesn't.

It started with BOINC. It refused to calculate Milkyway data specifically fetched for my GPU:

Starting BOINC client version 7.2.42 for i686-pc-linux-gnu
...
CUDA: NVIDIA GPU 0: GeForce GT 520 (driver version unknown, CUDA version 6.0,
 compute capability 2.1, 1023MB, 999MB available, 156 GFLOPS peak)
...
Requesting new tasks for CPU and NVIDIA
App version needs OpenCL but GPU doesn't support it
Scheduler request completed: got 2 new tasks
[error] App version uses non-existent NVIDIA GPU
[error] Missing coprocessor for task de_modfit_fast_simulated15_136_free_1_14
13455402_27741174_0; aborting

So I decided to check why there is no OpenCL. I couldn't find "official" way to check for OpenCL support, but I found people use :

$ darktable -d opencl
[opencl_init] opencl related configuration options:
...
[opencl_init] trying to load opencl library: '<system default>'
[opencl_init] opencl library 'libOpenCL' found on your system and loaded
[opencl_init] could not get platforms: -1001
[opencl_init] FINALLY: opencl is NOT AVAILABLE on this system.

Also tried to detect anything with pyrit:

$ pyrit list_cores
Pyrit 0.4.0 (C) 2008-2011 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

The following cores seem available...
#1:  'CPU-Core (SSE2)'
#2:  'CPU-Core (SSE2)'

Finally discovered clinfo:

$ clinfo
I: ICD loader reports no usable platforms

And then How to make OpenCL work on 14.10 + Nvidia 331.89 drivers?

I still couldn't get why BOINC can't detect version of nVidia driver, so I removed boinc and installed boinc-nvidia-cuda, but the problem did not go away. I also tried to see if there is anything with opencl missing, but it seems fine.

The linked question says to install nvidia-modprobe. I am trying it right now. However, I don't get how this magic pill should work, and if it works - why it is not enabled by default? I also wonder if there should be some virtual package that does everything necessary to enable OpenCL?

  • any news about this problem? I'm having exactly the same – silgon May 18 '15 at 13:29
  • I somehow got OpenCL to work, but now nvidia driver crashes every time new kernel is installed, so I am not sure that I've done things right. – anatoly techtonik May 18 '15 at 14:01
  • In any case, could you explain what you did? I've been several days trying to get it to work and nothing is working. Then we could help each other if I find another solution since we have the same problem ;) – silgon May 18 '15 at 14:06
  • @silgon, have you checked out the linked question? It seems to me that it was a combination of some packages linked in apt-get. I remember that the order matters. – anatoly techtonik May 18 '15 at 14:45
  • as you remarked, I'm on it. I'll screw up a little bit more my configuration with that nvidia-modprobe and see what happens ;) – silgon May 18 '15 at 15:18
1

I don't exactly know why its happening or how somehow the problem is solved.

First of all, the nvidia-331-uvm is not activated from the start (god knows why). So let's activate it:

$ sudo modprobe nvidia-331-uvm
$ sudo mknod -m 666 /dev/nvidia-uvm c 249 0

Then if you do clinfo you'll have the same error about the ICD loader. Nonetheless, if you do it as root:

$ sudo clinfo

You'll get a good result (E: -30), and then you're also able to run the command as a non-root user. Long story short:

$ clinfo
I: ICD loader reports no usable platforms
$ sudo clinfo 
E: -30
$ clinfo 
E: -30
# then you run anything as non-root user

Then, also darktable -d opencl works well, or any opencl program ;).

UPDATE

I finally added the next lines in my /etc/rc.local file:

# begin opencl config
modprobe nvidia-331-uvm
mknod -m 666 /dev/nvidia-uvm c 249 0
clinfo
# end opencl config 

Then everything works smoothly ;)

  • I use nvidia 355 from graphic driver ppa and for opencl to work, I have to install nvidia-modprobe for clinfo to show a functional opencl. – Arup Roy Chowdhury Oct 17 '15 at 15:17
0

I've spent two frustrating days trying to add gpugrid as a Boinc project. The Boinc log says, no usable GPUs found, but without bothering to report why. So, I quit and went to Windows 7 (which I hate to do) until Boinc, Nvidia, and Ubuntu get their acts together.

There is a lot of misleading information on the web to sort through. I did succeed in getting the Nvidia 355.11 driver installed using the new graphics PPA. I proved that the GTX 960 card and driver are recognized. However, using a test from darktable Install darktable I proved that OpenCL is not working even though the graphics card is working correctly as the computer video output device. Solving the missing OpenCL feature is too much to ask of every new grid computing contributor.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.