【发布时间】:2013-03-19 21:10:12
【问题描述】:
我有这段代码,前段时间我已经发布了一些内容。
今天我在一个小测试程序中使用 typedef 结构运行我的内核,但是 clEnqueueNDRangeKernel 给出了一个无效的工作组大小错误。根据 khronos webiste,这可能有 3 个原因。
- 全局工作大小不能被本地工作大小整除。在我的代码中,它是可分的。
- 本地工作大小大于 GPU 可以处理的大小。我的本地工作量为 128,远低于报告的最大值 1024。
- 与
NULL的本地工作大小有关。我的本地工作规模不是NULL,而是 128。
我已经在互联网上搜索了好几个小时,我发现的大多数解决方案都涉及查询 clGetKernelWorkGroupInfo 以获取最大本地工作大小。当我这样做时,它也会报告 1024。我现在真的没有选择,有人可以帮忙吗? :)
主:http://pastebin.com/S6R6t3iF 内核:http://pastebin.com/Mrhr8B4v
【问题讨论】:
标签: opencl