There is no device supporting CUDA

Recently I got assigned to looking into CUDA architecture to speed some of heavy computations in our application. So this was my first attempt on CUDA stuff. I have a Dell XPS 630 Windows XP machine with NVidia GeForce GTX285 video card. So I followed the steps mentioned on NVidia CUDA site for installing drivers etc. So the sequence of install is CUDA Driver, CUDA Toolkit and CUDA SDK. Just to test that everything is installed correctly and working fine, I compiled clock sample and tried to run it. I got error message saying no CUDA devices found. I looked around on different forums and sites and lot of people had run into similar issues. A lot of got the issue resolved by installing newer driver. I have a relatively newer machine with latest drivers. And I also made sure that I install CUDA 2.3 drivers and toolkits. So I reinstalled the drivers and everything and still it will not work. I ran deviceQuery sample as well. And it gave me the same error message. The out of that sample looked as below.

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

Device 0: "Device Emulation (CPU)"
  CUDA Driver Version:                           2.30
  CUDA Runtime Version:                          2.30
  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:                                  Unknown

Test PASSED

Press ENTER to exit...

That was not a good sign. Then I started thinking and then it struck my mind that I am not directly logged into my desktop. I was using remote desktop to use the machine. In the past when I have tried to run some video games over RDP, I always used to get error telling me that I could not do so over RDP. So I immediately switched the connections and directly logged into the machine. And there it was, everything worked like a charm. And I felt like a dumb noob :-) Bottom line is that when you are seeing similar issue, check the following things:

  • Make sure you have latest video card driver installed
  • Make sure that you are using latest CUDA driver, toolkit and SDK
  • Make sure that you install three component in order suggested by NVidia
  • and .... you are directly logged into the machine and not using RDP or using any means that puts its own graphics pipe line on top
comments powered by Disqus

Blog Tags