Hello there. I’m using Ubuntu 12.04 and CUDA 5.0.
I was able to find the OpenCL headers, but not the library. A system-wide search for the terms “opencl” and “ocl” only returned a empty folder, namely, /etc/OpenCL/vendors.
Any ideas?
Hello there. I’m using Ubuntu 12.04 and CUDA 5.0.
I was able to find the OpenCL headers, but not the library. A system-wide search for the terms “opencl” and “ocl” only returned a empty folder, namely, /etc/OpenCL/vendors.
Any ideas?
It was my mistake on the find command. As I installed the repo driver, I could find the library on /usr/lib/nvidia-current.
Yet, when I run any program using OpenCL, only the Intel platform is detected. Could it be an Optimus-related issue?
I don’t think it’s Optimus since it generally doesn’t work at all under Linux. Here a few things to check:
To make sure that your code is not the problem you could use clInfo:
wget http://graphics.stanford.edu/~yoel/notes/clInfo.c
gcc -w -lOpenCL clInfo.c -o clinfo
./clinfo
If that didn’t help you could check /var/log/Xorg.0.log to see if the driver is having any problems.
You could also just run “sudo nvidia-bug-report.sh” as described here (https://devtalk.nvidia.com/default/topic/522835/linux/if-you-have-a-problem-please-read-this-first/) and attach the resulting nvidia-bug-report.log.gz.
kugeleck,
Thank you for your reply. Looks like I did not have nvidia.icd on /etc/OpenCL/vendors. I could find it on /etc/share/nvidia-current. Even after copying, it did not work. After comparing with intel’s, I could notice that just the name of the library wasn’t enough. Probably because LD_LIBRARY_PATH doesn’t contain the correct folder. Then, changing the file to
/usr/lib/nvidia-current/libnvidia-opencl.so.1
did work.
As I’m using bumblebee to use the optimus technology, I need to run the command with optirun. Besides that, everything works perfectly.
Glad to hear that it’s working now.
I usually install everything OpenCL related under /opt/OpenCL and then setup environment variables in /etc/profile.d/opencl.sh. For Nvidia it looks like this:
export PATH="$PATH:/opt/OpenCL/sdk/nvidia/5.0/bin"
To make the libs available I then add opencl.conf under /etc/ld.so.conf.d containing:
/opt/OpenCL/sdk/nvidia/5.0/lib64