On Feb 8, 2010, at 7:37 PM, Emil Dotchevski wrote:
On Mon, Feb 8, 2010 at 5:21 PM, Belcourt, Kenneth
wrote: The CUDA compiler (nvcc) is, in essence, a C compiler not C++.
This is incorrect.
You'll need to read the documentation but C++ code is compiled by a host compiler (g++, etc...) while nvcc is used to compile device (GPU) specific C-like code.
The device-specific compiler has a C++ front-end, complete with templates, specializations, etc. + NVIDIA-specific extensions. The complication is that code that targets both the "device" (GPU) and the "host" (CPU) needs to be compatible with at least 2 front-ends (NVCC and GCC/MSVC), but that's not unusual for Boost in general.
Oh, I stand corrected. Guess things have changed quite a bit since I last worked with CUDA. Apologies. -- Noel