我很高兴忽略了这一段时间,但现在已成为一个很大的问题 - 我希望你们能帮助我。
我正在调用cudaMallocPitch,但无论我尝试什么,它都会一直给我红色下划线和“无效参数”错误。即使我从Nvidia CUDA C编程指南中复制源代码,它仍然会给我错误。我对CUDA很陌生,所以请不要犹豫,指出你认为可能引起问题的任何明显的事情。
以下是我所指的确切代码:
int width = 64, height = 64;
float* devPtr;
size_t pitch;
cudaMallocPitch(&devPtr, pitch,
width * sizeof(float), height);
非常感谢任何评论,欢呼。
答案 0 :(得分:1)
第二个参数应该是size_t*
,但您传递的是size_t
。试试这个:
cudaMallocPitch(&devPtr, &pitch, width * sizeof(float), height);
另请注意,最后一个参数类型也是size_t
。 height
可能会更好size_t
。