Cuda won't recognize my GPU as being supported. [Solved]

I have 2 GTX 550 TI cards and have just installed cuda. (Running ubuntu16) My card is listed on the supported GPUs list but cuda says it can’t find any cuda capable devices. What is the problem?

Error: only 0 Devices available, 1 requested. Exiting.

./deviceQuery Starting…

CUDA Device Query (Runtime API) version (CUDART static linking)

cudaGetDeviceCount returned 38
-> no CUDA-capable device is detected
Result = FAIL

Error from running the deviceQuery

Hmm…, says that:

Supported CUDA Level of GPU and Card. See direct also Nvidia:

CUDA SDK 6.5: Last Version with support for Compute Capability 1.x (Tesla)
CUDA SDK 7.5 support for Compute Capability 2.0 – 5.x (Fermi, Kepler, Maxwell)
CUDA SDK 8.0 support for Compute Capability 2.0 – 6.x (Fermi, Kepler, Maxwell, Pascal), last version with support for Compute Capability 2.x (Fermi)
CUDA SDK 9.0 support for Compute Capability 3.0 – 7.x (Kepler, Maxwell, Pascal, Volta)

I’m guessing this means that my problem is with my version of cuda… My cards compute capability is 2.1 and by this reference the version I have installed (cuda9.0) doesn’t support 2.1. I suppose I will try to install the earlier version.

Ok, so I un-installed cuda9:

sudo apt-get --purge remove cuda

Installed cuda8:

sudo apt-get install cuda-8-0

Followed the post install instructions for version 8:

Restarted my machine after a soul crushing still not found error and tada! deviceQuery shows both gpus and Passed

Your diagnosis is correct. GTX 550 Ti is a device with compute capability 2.1 and as such not supported by CUDA 9. CUDA 8 is the most suitable choice: the latest release with support for your GPU and generally of high quality with only minor issues. Note that a refreshed version of CUDA 8 shipped in early 2017. When you run

nvcc --version

what does is the output? If you see a date from early 2017 and a version number like 8.0.6x (for some value of x), that would indicate the refreshed version of CUDA 8.

I don’t think it really matters anyhow. cudnn doesn’t support anything under 3.0…sigh. I guess it will work if I get new graphics cards lol :cry:

Actually I ran this in an effort to answer your question and it said it wasn’t installed…:

The program ‘nvcc’ is currently not installed. You can install it by typing:
sudo apt install nvidia-cuda-toolkit

I did that and afterward ran again:

nvcc: NVIDIA ® Cuda compiler driver
Copyright © 2005-2015 NVIDIA Corporation
Built on Tue_Aug_11_14:27:32_CDT_2015
Cuda compilation tools, release 7.5, V7.5.17

I also ran the cudnn mnist sample program:

cudnnGetVersion() : 6021 , CUDNN_VERSION from cudnn.h : 6021 (6.0.21)
Host compiler version : GCC 5.4.0
There are 2 CUDA capable devices on your machine :
device 0 : sms 4 Capabilities 2.1, SmClock 1820.0 Mhz, MemSize (Mb) 962, MemClock 2052.0 Mhz, Ecc=0, boardGroupID=0
device 1 : sms 4 Capabilities 2.1, SmClock 1950.0 Mhz, MemSize (Mb) 964, MemClock 2052.0 Mhz, Ecc=0, boardGroupID=1
Using device 0

Testing single precision
CUDNN failure

So close…

That is clearly the CUDA 7.5 toolchain, not the CUDA 8.0 toolchain.

I am reasonably sure none of the popular deep learning frameworks supports GPUs with compute capability < 3.0. You would definitely want to invest in new hardware if you are interested in deep learning. The very reasonably priced Geforce GTX 1050 Ti would already outperform the Geforce GTX 550 you have now.

Yeah, my group has been using tensorflow for our backend but I had these two nvidia cards sitting in my machine and I thought I would try to utilize the gpu supported version and run our model on the cards. Had I understood anything about the “Compute Capability” measurement I would have put it together before going all the way through everything haha. Tensorflow clearly states on their site that you need 3.0 or higher cards. I did learn a great deal about installing cuda and cudnn and when I can get some new cards and fix my multiple cuda installations. I’ll be gtg. Thanks for helping me. 8)