CUDA won't recognize card

Hi there,

I’ve been attempting to install CUDA in openSUSE 11.1 (64 bit) for some time now, but to no avail and would really appreciate any help, I have the following set up:

Desktop: KDE4
Card: GeForce 9500 GT
Driver: 185.18.14

I’m using the default kernel for the driver installed through Yast; I attempted installing the driver manually, but sax2 ended up not being able to start and I was without any X, so I reverted to the former. I’ve noticed that at least a few people on this site have used a work around by adding uppermem, vmalloc and pci to the grub boot file (menu.lst); I tried this too:

root (hd0,0)
uppermem 524288
kernel /vmlinuz-2.6.27.23-0.1-default root=/dev/md0 resume=/dev/disk/by-id/ata-ST3500320AS_9QM4X7MA-part3 splash=silent showopts vga=0x31a vmalloc=256MB pci=nommconf
initrd /initrd-2.6.27.23-0.1-default

But my deviceQuery still gives the following output:

CUDA Device Query (Runtime API) version (CUDART static linking)
There is no device supporting CUDA.

Device 0: "Device Emulation (CPU)"
  CUDA Capability Major revision number:         9999
  CUDA Capability Minor revision number:         9999
  Total amount of global memory:                 4294967295 bytes
  Number of multiprocessors:                     16
  Number of cores:                               128
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       16384 bytes
  Total number of registers available per block: 8192
  Warp size:                                     1
  Maximum number of threads per block:           512
  Maximum sizes of each dimension of a block:    512 x 512 x 64
  Maximum sizes of each dimension of a grid:     65535 x 65535 x 1
  Maximum memory pitch:                          262144 bytes
  Texture alignment:                             256 bytes
  Clock rate:                                    1.35 GHz
  Concurrent copy and execution:                 No
  Run time limit on kernels:                     No
  Integrated:                                    Yes
  Support host page-locked memory mapping:       Yes
  Compute mode:                                  Default (multiple host threads can use this device simultaneously)

Test PASSED

I had CUDA working on XP before I decided to switch to Linux, so this is fairly frustrating… any help would be wonderful, thanks!

Do you have nvidia devices?

ls /dev/nv*

Mine are not created automatically, I need to start X first. There are mknod commands somewhere on the forums to do this properly, but starting/stoping X has never been enough hassle for me to actually bother. :)

My devices are there and my permissions should be okay (I think at least):

ls -l /dev/nv*:

crw-rw---- 1 root video 195, 0 2009-06-30 11:25 /dev/nvidia0

crw-rw---- 1 root video 195, 255 2009-06-30 11:25 /dev/nvidiactl

crw-r----- 1 root kmem 10, 144 2009-06-30 07:24 /dev/nvram

You could also get this message if libcuda.so were not installed. Does Yast break up the nvidia drivers into different pieces like nvidia-drivers, nvidia-drivers-devel, … Maybe the CUDA libs were not installed with the default package.

searched for the above…

find / -iname libcuda*:

/usr/local/cuda/lib/libcudart.so.2.2

/usr/local/cuda/lib/libcudart.so

/usr/local/cuda/lib/libcudart.so.2

/usr/programs/VMD/lib/vmd/libcudart.so.2

/usr/lib64/libcuda.so.1

/usr/lib64/libcuda.so.185.18.14

I’m assuming the last 2 are the driver libraries that you were talking about? Thanks for your help though, everything seems to be in place, it just doesn’t want to work.

Try making a /usr/lib64/libcuda.so symbolic link which points to /usr/lib64/libcuda.so.1

N.

That worked, thanks Nico :) Probably never would have thought of something that simple.