cudaGetDeviceCount() only detects 1 GPU

I have two 9800 GT’s (with SLI disabled), but cudaGetDeviceCount() only returns 1, so there’s no way I can select which GPU to use to run the code. I’d prefer to use the secondary GPU so that it doesn’t glitch my desktop when I’m running tests. It’s also interesting to note that when I go into the Physx control panel, I cannot select which GPU to use for GeForce Acceleration.

Any ideas what might be causing this?

I’m using the 178.24 drivers, under Windows Server 2008 x64.

This is probably known issue about Vista/WS2008 when CUDA only sees devices which have desktop extended onto them. Connect another monitor to second card, extend desktop onto it and check if it works.

This is a Vista limitation. CUDA can only use GPUs which have the desktop extended onto them.

Thanks for the suggestions. The problem is that I don’t have another monitor to plug in. Is here no other workaround?

If you go to the display properties, you can extend the display onto that card even without a monitor connected. Or, wait for 2.1, because that limitation will go away.

That’s not correct. If I go into Display properties and, I can choose to extend my desktio onto a non-existent monitor, but no changes will be made after I click Apply. I am still left with one main monitor and three inactive monitors.

Hm. Maybe that hack actually is disabled–I hope so, because it’s a horrible hack that no one should ever use.

Regardless, 2.1 is coming very soon and it won’t have this problem.

Thanks for the info.

Do you have a more exact timeframe for the release of 2.1?

If you don’t have another monitor try connecting s-video cable to the card. It worked for me with GTX 280, I was able to extend desktop onto that device without actually connecting monitor.

Does this mean that Tesla 10 will be supported under Vista?

Yes.

Thanks a lot! (both for reply and for upcoming Tesla support ;-) )