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做