我从内核收到错误:在此过程中设备处于活动状态时无法设置。
你能给我建议是什么意思吗?
内核是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()
?- 发现它们是相互排斥的,但这不是导致问题的原因。