Samples from 9.1 do not run

Setup:

Ubuntu 18.04
±----------------------------------------------------------------------------+
| NVIDIA-SMI 390.116 Driver Version: 390.116 |
|-------------------------------±---------------------±---------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 675M Off | 00000000:01:00.0 N/A | N/A |
| 0% 64C P1 N/A / N/A | 582MiB / 1977MiB | N/A Default |
±------------------------------±---------------------±---------------------+
| 1 GeForce GTX 675M Off | 00000000:07:00.0 N/A | N/A |
| 0% 56C P12 N/A / N/A | 56MiB / 1985MiB | N/A Default |
±------------------------------±---------------------±---------------------+

±----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 Not Supported |
| 1 Not Supported |
±----------------------------------------------------------------------------+

Installed:

sudo sh ./cuda_9.1.85_387.26_linux.run --verbose --silent --toolkit --override

sudo sh ./cuda_9.1.85.1_linux.run --silent --accept-eula

sudo sh ./cuda_9.1.85.2_linux.run --silent --accept-eula

sudo sh ./cuda_9.1.85.3_linux.run --silent --accept-eula

gcc --version

gcc (Ubuntu 6.5.0-2ubuntu1~18.04) 6.5.0 20181026

cd ~/Projects/cuda-testing/samples/

make -j4

All samples build without error but none run actually run with errors like :

cd bin/x86_64/linux/release

./simpleSurfaceWrite

simpleSurfaceWrite starting…
MapSMtoCores for SM 2.1 is undefined. Default to use 64 Cores/SM
MapSMtoCores for SM 2.1 is undefined. Default to use 64 Cores/SM
GPU Device 0: “GeForce GTX 675M” with compute capability 2.1

CUDA device [GeForce GTX 675M] has 8 Multi-Processors, SM 2.1
Loaded ‘lena_bw.pgm’, 512 x 512 pixels
CUDA error at simpleSurfaceWrite.cu:227 code=37(cudaErrorInvalidSurface) “cudaBindSurfaceToArray(outputSurface, cuArray)”

I have seen a number of other posts in this forum regarding these errors which all suggest my setup is still not correct.

Any ideas appreciated.

CUDA 9.x does not support devices of compute capability 2.1

Those devices are supported by CUDA 8.0 and prior.

Thank you for your assistance and experience.

I am assuming I should remove the 9.1 version prior to installing the 8.0 version or will they happily co-exist?

Also is there a handy chart that indicates the CUDA version to Compute capability compatibility?

Much appreciated!

They can coexist. Follow the instructions in the linux install guide carefully, including section 7, to point to the correct version of CUDA.

I believe your existing driver should be OK for usage with a Fermi device, with a few corner-case exceptions (e.g. usage of cuda-memcheck). If you want full capability with CUDA 8, you should install the driver that comes with the CUDA 8 toolkit.

I ended up removing 9.1 and installing 8.0 as documented and all the samples now work.

Thanks people!