CUDA doesn't detect the second device...


I use 2 X 9600 GT on my Asus P5N-E SLI motherboard. (650i SLI)
(with the motherboard latest bios)

Each device used alone in the first PCI-E works fine and is cuda compatible. (everything works…)

But when i use both devices there is only one that is detected. (by “device query” the NV sample)
CUDA only detect one device though Windows device manager shows both of them…

The motherboard second PCI-E slot works fine : the GPU on it gives images on the screen…

I’ve tried everything but nothing worked.
(activated-desactivated SLI, changed CUDA drivers and versions, enabled and disabled dual video cards on the motherboard, … )

Any Ideas ? (is there any kind of jumper to move on this motherboard to make CUDA detect correctly the second GPU ? Is it a problem of CUDA driver ? …)

I’d rather think this is due to the GPUs drivers but i’m not sure…


What OS are you using? If you’re on Vista, I think you need to go into the nVidia control panel and enable PhysX on the second (non-display) card in order for CUDA to be activated for that card (or, connect another display to the second card).

I’ve tried the PhysX solution but it didn’t worked… (it doesn’t even gives me the choice to choose the graphic card i want to use for PhysX)

My system is running with Windows 7 (free build 7000 beta with all microsoft updates)
I’ve looked on the net for my problem but for systems that runs with windows vista.

I think you’ve got the right solution when you recommand connecting a second display monitor.
(On the vista’s forum the given solution is to extend windows display on the two graphics cards plugging one display monitor to each graphic device)

I can’t do this right now : I’ve only got one display monitor available. But one friend of mine must bring back home a display of mine in a couple of weeks… So i’ll soon know if this works or not…

Is there any kind of tweak to extend windows display without a second display monitor ?
How do they param systems were there is a lot of GPUs. FASTRA for example use 8 GPUs for CUDA and only one display monitor. So how can they do that ? (they use XP 64 perharps it is the explication…)

Thank you for your response.

I don’t have the two graphics cards running yet but testing pilots and CUDA apps is usefull :

I use the NBODY sample as a bench…

On my system the best match for performance is this one :

  • CUDA 2.01 X64 graphic driver (refuse now to install X32 graphic driver but did it in the past…)
  • CUDA 2.01 X32 Toolkit
  • CUDA 2.01 X32 SDK

Overclocked elements in the system :
GPU : 750 Mhz
Video RAM : 1150 Mhz
(didn’t separate GPU core and shaders frequencies yet. Perharps will I get more performance…)
Nbody sample runs at about 80 FPS/sec and a little less 110 GFlop/sec. (8192 bodies)
(This is better than with X32 Graphic Driver)


Yes. This is what enabling PhysX on the 2nd card does under the hood. If it isn’t working for you on Windows 7, then it is likely that this workaround that NVIDIA implemented no longer works (or something). CUDA doesn’t officially support Windows 7, yet AFAIK.

By far, the easiest way is just to install linux. XP would probably work too as it doesn’t have all the weird limitations that the Vista display drivers so.

I’ve tested the system with both GPU on the motherboard.

I’ve just switched the display from one card to another…
And Cuda was running well on each graphic card.

I think that with one display for each Cuda device it will work well in the future. :thumbup:
(And the old display that comes back home costs nothing after all. So there’s nothing to loose…) :ph34r:

I will send feedback when it’s done. (in a near future)

Thanks for your support.


I also used Windows 7 x64 and it also requires that I connect a second monitor to the second card for CUDA to see it.
Another problem is that “concurrent copy and execution” is not supported. I’m using a GeForce 8800GT and a GeForce 9600GT. They support concurrent copy and execution under Windows XP 32 bits. But under Windows 7 x64, device query reports that it’s not supported, and the stream sample also acts that way as well.

I believe this is already the case with Vista (check the releasenotes)

This is a WDDM (so Vista and Win7) limitation for the moment.