(正在学习CUDA中, 写一些自己学习中的心得,如有错误,欢迎指正~)
对于普通变量(如int型,float型等), 不必在device端事先分配空间。在global函数声明时,不要声明为指针,直接声明为int或float。global函数调用时也是。
如果要在device端以指针形式使用这个变量,如下:
float temp;
float *dev_temp = 0;
cudaMalloc((void**)&dev_temp, sizeof(float));
cudaMemcpy(dev_temp,&temp,sizeof(float), cudaMemcpyHostToDevice);