【问题标题】:nVidia GPU returns-1000 for clEnqueueWriteImagenVidia GPU 为 clEnqueueWriteImage 返回 1000
【发布时间】:2016-04-06 17:42:41
【问题描述】:

想弄清楚这个调用的问题(和错误代码)是什么。首先,这在 AMD 上工作得很好,它只在 nVidia 上有问题。

unsigned char *buffer;
...
cl_int status;
cl::size_t<3> origin;
cl::size_t<3> region;

origin[0]=0;
origin[1]=0;
origin[2]=0;

region[0]=m_width;
region[1]=m_height;
region[2]=1;

status=clEnqueueWriteImage(m_commandQueue, m_image, CL_FALSE, origin, region, 0, 0, buffer, 0, NULL, NULL);

status 返回 -1000,这不是标准的 openCl 错误代码。所有其他与打开设备、上下文和命令队列相关的功能都成功。上下文与 openGl 互操作,这在 AMD 上也是完全可用的。

【问题讨论】:

    标签: opengl opencl nvidia


    【解决方案1】:

    为了将来参考,如果图像与 OpenGL 纹理互操作并且调用是在使用 clEnqueueAcquireGLObjects 获取图像之前进行的,则似乎会发生错误。我后来在使用图像时使用了采集,但不是在设置图像之前。 AMD的驱动似乎并不关心这个小细节。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-30
      • 2019-06-15
      • 2011-02-14
      • 1970-01-01
      • 2017-05-12
      • 2017-01-28
      • 1970-01-01
      相关资源
      最近更新 更多