1
我已经宣布了下面的模板,使代码更短分配CUDA设备内存:警告,而使用C++模板
template <typename T>
void allocateGPUSpace(T* ptr, int size){
cudaMalloc((void**)&ptr,size * sizeof(T));
}
此外,我使用模板如下:
float* alphaWiMinusOne;
allocateGPUSpace<float>(alphaWiMinusOne,numUnigrams);
但是,当我编译代码时,VS 2008给出警告
warning: variable "alphaWiMinusOne" is used before its value is set
和
uninitialized local variable 'alphaWiMinusOne' used
不CUDA不能理解C++模板?天哪,这将是一个必须为NVIDIA做