小编Pau*_*fti的帖子

OpenCL clEnqueueReadBuffer随机段错误

我很难确定在我的代码中的下一行随机发生分段错误的原因:

rc = clEnqueueReadBuffer(ompctx->clctx->queue,
                ompctx->result, CL_TRUE, 0, sizeof(int), &pos,
                1, &ompctx->clctx->ev1, NULL);
Run Code Online (Sandbox Code Playgroud)

ompctx-> result是一个用作整数数组的内存对象,pos是一个声明为的主机对象:

int pos
Run Code Online (Sandbox Code Playgroud)

我尝试在堆栈和全局空间中声明的pos,结果不会改变.我试着等待最后一个内核完成(如上所述,虽然我不应该因为我有一个有序命令队列)并且没有等待,结果仍然是相同的.

我正在使用AMD APP v2.8,我尝试使用带有8个CPU的i7和AMD FirePro v8800.两者都表现出同样的问题.

我错过了一些明显的东西吗 我还应该检查什么?

c opencl segmentation-fault

0
推荐指数
1
解决办法
1875
查看次数

标签 统计

c ×1

opencl ×1

segmentation-fault ×1