CUDA程序出错“no instance of overloaded function“,求解决办法

来源:百度知道 编辑:UC知道 时间:2024/09/23 10:57:33
系统环境:ubuntu9.04
在CUDA环境中编程,申请设备上的一个二维数组,按照编程手册中要求所写:
CUDA_SAFE_CALL( cudaMallocPitch((void**)&cell,&pitch,64*sizeof(int),64));
编译出现错误:
error: no instance of overloaded function "cudaMallocPitch" matches the argument list
argument types are: (void **, int *, unsigned int, int)
求大侠指点

cudaMallocPitch函数原型是下面这样的:
cudaError_t cudaMallocPitch (void ** devPtr, size_t * pitch, size_t width, size_t height)
你的pitch是不是size_t类型的,看上面好像你写成int了,改成size_t试试。再不行的话,把后面两个参数也用size_t类型的试试。