【发布时间】:2013-12-14 01:01:46
【问题描述】:
我正在为 n 体算法编写 OpenCL 代码。当我尝试执行它时,我收到了一个 Invalid Context 错误。错误出现在调用内核以在 GPU 上执行的代码部分。我在这里粘贴了我的代码。如果有人能帮助我理解为什么会出现此错误并帮助我解决它,我将不胜感激。
if (gpuSize) {
/*launch the kernel on second device (GPU)*/
ret = clEnqueueNDRangeKernel(
accelState.queues[1],
accelState.kernel,
1,
global_work_offset1,
global_work_size1,
NULL, /*let OpenCL determine localWorkSize*/
1, &enqEvents[noOfQEvents-1],
&enqEvents[noOfEvents]
);
/*noOfEvents++;*/
checkResult(ret);
}
最后一行 checkResult(ret) 出现错误,但据我了解,我的命令队列 accelState.queues[1] 与内核中的某些内容不匹配?任何帮助将不胜感激。谢谢。
【问题讨论】:
标签: opencl