169 drivers + CUDA 1.0 will this work?

Here’s my question: should my CUDA 1.0 program be able to detect hardware with 169 drivers?

My problem is that it doesn’t, so I’m wondering if it’s a bug or this behaviour is ‘by design’.

Hey Andrei,
I’ve been able to run the pre-built 1.0 sdk sample binaries such as deviceQuery with the new driver and beta 1.1 toolkit installed.

That’s great, thanks.

Going to investigate problem further.

Here’s what I’ve got.

Program compiled with CUDA 1.0 SDK won’t work correctly with 169.09 driver unless 1.1 toolkit is installed. New driver is incomatible with cudart.dll and/or cuda.dll from 1.0 ?!

Most of SDK 1.0 samples won’t work either. deviceQuery correctly reports compatible device, but other samples just crash (MonteCarlo and MersenneTwister) or say (“Test FAILED”).

Installing 1.1 SDK seems to solve the problem, at least 1.0 samples are now “Test PASSED”.

This means that our program will become unusable if user updates driver (we’re using Driver API and redistributing only cuda.dll with our software)… and that’s no good.

I have a feeling that I’m missing something, because I can’t believe new driver can break backward compatibility in such a way :(

Any ideas, help or comments?

This doesn’t help you, but in case anyone else is wondering: I found on Linux that CUDA 1.0 compiled code ran just fine with the 169.01 beta Linux driver without updating the toolkit to CUDA 1.1.

You should not redistribute cuda.dll. You can include the other dll’s from the toolkit and sdk from cuda v1.1. These will match up with the current public beta display driver (should be non-beta soon) and all future drivers. These drivers install nvcuda.dll that match up with the dll’s from the toolkit and sdk.

In this way your customers will no longer need to install a cuda-specific driver anymore (that had been getting old), they can just use standard NVIDIA display drivers.

So we just ask that when you redistribute the toolkit/sdk dll’s with your app, you install them in a local directory where your app is installed, not in some place that could be common to other apps that use cuda.

Yes, we’re keeping cuda.dll in our app’s directory. Problem is that after updating driver app is not able to use GPU. On linux backward compatibility is okay, so this is some problem with driver?

We will definitely release updated version as driver will become non-beta, but I guess users won’t like ‘forced’ driver updates :(