本来有一段较大较复杂的图像处理的代码,但调试总是纹理绑定啊出错。。于是自己写了个小程序检查是不是支持纹理绑定(同样的环境下)。结果是可以的。于是把这个小程序纹理绑定部分代码移植到有问题的大代码中。结果移植的小程序中纹理绑定出错。提示:invalid texture reference。到底怎么回事??简单纹理绑定小程序代码如下:(文件头申明纹理参考了)(环境为CUDA5.0+vs2010,显卡为Tesla M2090计算能力2.0) 跪求大神指点啊!!!!
IplImage lena=cvLoadImage("lena.jpg",0);
int nchanel=lena->nChannels;
int LenaWidth=lena->widthStep;
int LenaHeight=lena->height;
int LenaSize=LenaWidth*LenaHeight;
cudaArray * cuArrayLena;
cudaMallocArray(&cuArrayLena, &channelDesc, LenaWidth,LenaHeight);
cudaError_t error=cudaMemcpyToArray(cuArrayLena, 0, 0, (uchar)lena->imageData,LenaSize, cudaMemcpyHostToDevice);
TRACE("CUDA error:%s\n",cudaGetErrorString(error));
texLena.addressMode[0]=cudaAddressModeClamp;
texLena.addressMode[1]=cudaAddressModeClamp;
texLena.filterMode=cudaFilterModePoint;
texLena.normalized=false;
error=cudaBindTextureToArray(texLena,cuArrayLena,channelDesc);
TRACE("CUDA error:%s\n",cudaGetErrorString(error));
CUDA纹理绑定后提醒invalid texture reference,可能是什么导致的?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-