How to support Double Precision on CUDA2.1? Double precision works well on CUDA2.0 but can not work

Hi, all

I use CUDA for several month.

In my program, double precision is critical.

On cuda2.0, I added a compiler command <-arch compute_13>, and double precision is well supported.

The following is my compiling command

[codebox]"(CUDA_BIN_PATH)\nvcc.exe" -arch compute_13 -ccbin "(VCInstallDir)bin" -c -DWIN32 -D_CONSOLE -D_MBCS -Xcompiler /EHsc,/W3,/nologo,/Wp64,/O2,/Zi,/MT -I"(CUDA_INC_PATH)" -I./ -I"(NVSDKCUDA_ROOT)\common\inc" -o $(ConfigurationName)$(InputName).obj .\CUDA$(InputFileName)

[/codebox]

But unfortunately, after I upgrade CUDA to 2.1, I open this project with Visual Studio2005, build and run the project, double precision is not supported any more.

I try to build and run some other projects which only use single precision float, everything is OK.

After that, I try to modify the compiling command to be "-arch compute_13 - code sm_13 " and “-arch sm_13” and some others, none of them works fine.

My CUDA toolkit2.1 , SDK2.1 and driver 181.20 is downloaded directly from

http://www.nvidia.com/object/cuda_get.html

My graphic card is GTX280, OS is WindowsXP Sp2

Can anyone tell me what the problem is?

Or how to support double precision on CUDA2.1?

Is it a bug of CUDA2.1?

Thanks in advance for your help.

Does anyone know this problem?? :whistling:

I had a similar problem… i tried with the compiler option “-arch=sm_13” and doubles were working.

These are the specs of my machine

OS - Linux x86_64

NVidia Driver Version - 180.22

CUDA SDK  - 2.1

Regards,

Katta