Hi James,

James Bergstra <[email protected]> writes:
> I've come across a similar issue I think: I'm on debian unstable and I
> haven't seen my GTX 280 show up in the platforms or devices yet. I've tried
> all of these I think:
>
> nvidia-opencl-dev - NVIDIA OpenCL development files
> nvidia-libopencl1 - NVIDIA OpenCL library
> nvidia-libopencl1-ia32 - please switch to multiarch nvidia-libopencl1:i386
> nvidia-opencl-common - NVIDIA OpenCL driver
> nvidia-opencl-icd - NVIDIA OpenCL ICD
> nvidia-opencl-icd-ia32 - please switch to multiarch nvidia-opencl-icd:i386
> nvidia-libopencl1-dev - NVIDIA OpenCL development files
>
> I've also tried installing drivers from the official cuda 5 distribution
> (the one not using .deb files from nvidia's website).
>
> I feel like I'm stumped on what filename should I put into the nvidia.icd
> file in /etc/Opencl/vendors.

It's either just the file name of the .so (which is then searched using
/etc/ld.so.conf and LD_LIBRARY_PATH) or the full absolute path of the .so.

> The nvidia-opencl-common package sets up nvidia.icd to point to:
> libnvidia-opencl.so.1
>
> The only matching library I can find is:
> /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1
>
> This library has no symbols:
> $ nm /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.304.88
> 0000000000a5a190 b cudbgApiClientPid
> 0000000000a5a194 b cudbgApiClientRevision
> 0000000000130eb0 t cudbgApiInit
> 0000000000a3b744 b cudbgDebuggerInitialized
> 0000000000a5a164 b cudbgIpcFlag
> 0000000000a5a170 b cudbgRpcEnabled
> 0000000000a5a160 b cudbgSessionId

That's normal, I think.

$ nm /usr/lib/x86_64-linux-gnu/libamdocl64.so
nm: /usr/lib/x86_64-linux-gnu/libamdocl64.so: no symbols

But:

$ nm -D /usr/lib/x86_64-linux-gnu/libamdocl64.so | egrep T
00000000002d5d80 T clBuildProgram
00000000002cdde0 T clCreateBuffer
00000000002bee60 T clCreateCommandQueue
00000000002bfa60 T clCreateContext
00000000002bfda0 T clCreateContextFromType
(snip)

> Perhaps unsurprisingly, no nvidia platform appears when I run clinfo. When
> I install the amd opencl package, the icd file points to a library that has
> cl* symbols, and the amd reveals my CPU as a device. All good.
>
> What do I have to do to get my nvidia card to be visible as an opencl
> device?

Do you have access to /dev/nvi*? Run you code under strace and see if it
open()s the library and/or the /dev/nvi* device files.

HTH,
Andreas

_______________________________________________
PyOpenCL mailing list
[email protected]
http://lists.tiker.net/listinfo/pyopencl

Reply via email to