I have a GeForce GTX 560 Ti which is not used by the X server (it is a secondary card). I installed the GPU SDK, compiled the examples. For some reason, the card is not seen by the CUDA runtime (it is not seen by the OpenCL runtime either), so I get errors:
$ export LD_LIBRARY_PATH=/usr/local/cuda/lib64
/opt/nVidia-GPU-computing-SDK/CUDALibraries/bin/linux/release$ ./conjugateGradientPrecond
[conjugateGradientPrecond] starting...
../../common/inc/cutil_inline_runtime.h(398) : cudaSafeCallNoSync() Runtime API error : no CUDA-capable device is detected.
Other hardware information (the ATI card drives the display):
# lspci | grep VGA
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Cayman XT [Radeon HD 6970]
02:00.0 VGA compatible controller: NVIDIA Corporation GF110 [GeForce GTX 560 Ti] (rev a1)
Reloading the nvidia kernel module driver (ver 295.20)
# rmmod nvidia
# modprobe nvidia_current
# dmesg | tail
...
[ 1277.382344] nvidia 0000:02:00.0: PCI INT A disabled
[ 1280.539164] nvidia 0000:02:00.0: PCI INT A -> GSI 40 (level, low) -> IRQ 40
[ 1280.539178] nvidia 0000:02:00.0: setting latency timer to 64
[ 1280.539188] vgaarb: device changed decodes: PCI:0000:02:00.0,olddecodes=none,decodes=none:owns=none
[ 1280.539390] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 295.20 Mon Feb 6 21:07:30 PST 2012
# uname -a
Linux flair 3.2.0-18-generic #29-Ubuntu SMP Fri Mar 9 21:36:08 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
Any hint?