CUDA program only works correctly when compiled with -G0
A CUDA program I'm working on only gives the correct result when compiled with `Generate GPU Debug Information` set to `Yes (-G0)` in the `CUDA C/C++ | Device` property page in Visual Studio 2010.

When I change `Generate GPU Debug Information` to `No`, without changing anything else, the resulting program runs, but prints out an incorrect result. I have verified that the only difference in the command line for the two versions is that "-G0" is present in the working version.

Since the version that does not work does not have debug information, I think I will have to debug this with device `printf()`.

Is there a better way to debug this than inserting `printf()` statements and is there some likely causes I can check before starting that process?

CUDA program only works correctly when compiled with -G0
===

A CUDA program I'm working on only gives the correct result when compiled with `Generate GPU Debug Information` set to `Yes (-G0)` in the `CUDA C/C++ | Device` property page in Visual Studio 2010.

When I change `Generate GPU Debug Information` to `No`, without changing anything else, the resulting program runs, but prints out an incorrect result. I have verified that the only difference in the command line for the two versions is that "-G0" is present in the working version.

Since the version that does not work does not have debug information, I think I will have to debug this with device `printf()`.

Is there a better way to debug this than inserting `printf()` statements and is there some likely causes I can check before starting that process?
