【发布时间】:2013-04-20 21:31:00
【问题描述】:
这是我的代码:
int threadNum = BLOCKDIM/8;
dim3 dimBlock(threadNum,threadNum);
int blocks1 = nWidth/threadNum + (nWidth%threadNum == 0 ? 0 : 1);
int blocks2 = nHeight/threadNum + (nHeight%threadNum == 0 ? 0 : 1);
dim3 dimGrid;
dimGrid.x = blocks1;
dimGrid.y = blocks2;
// dim3 numThreads2(BLOCKDIM);
// dim3 numBlocks2(numPixels/BLOCKDIM + (numPixels%BLOCKDIM == 0 ? 0 : 1) );
perform_scaling<<<dimGrid,dimBlock>>>(imageDevice,imageDevice_new,min,max,nWidth, nHeight);
cudaError_t err = cudaGetLastError();
cudasafe(err,"Kernel2");
这是我的第二个内核的执行,它完全独立于数据的使用。 BLOCKDIM 是 512 , nWidth and nHeight 也是 512 并且 cudasafe 只是打印错误代码的相应字符串消息。这部分代码在内核调用之后给出了配置错误。
什么可能导致这个错误,你知道吗?
【问题讨论】:
标签: cuda