0

我从内核收到错误:在此过程中设备处于活动状态时无法设置。

你能给我建议是什么意思吗?

内核是cudaMemset(). 内核应该比cudaMemset().

核心:

__global__ void kernelMemSet ( float *sSum, float *cSum, int length ){

int idx = blockIdx.x * blockDim.x + threadIdx.x;
int idy = blockIdx.y * blockDim.y + threadIdx.y;

int tid = idx*length + idy;

cSum[idx] = 0.0f;
sSum[idx] = 0.0f;
}

内核被循环调用,错误只发生在第一次调用,第二次调用内核时,第三次,......没有错误。

错误是否可能是由调用cudaSetDevice()before引起的cudaGLSetDevice()?- 发现它们是相互排斥的,但这不是导致问题的原因。

4

0 回答 0