I have this code, for which I already posted something some time ago.
Today I got my kernel running with a typedef struct in a little test program, but clEnqueueNDRangeKernel gives an invalid work group size error. This can have 3 causes, according to the khronos webiste.
- Global work size is not divisable by the local work size. In my code, it is divisable.
- Local work size is bigger than the GPU can handle. My local worksize is 128, way under the reported maximum of 1024.
- Something to do with local work size that is
NULL. My local work size isn'tNULL, it's 128.
I've searched the internet for quite some hours, and most solutions I found involves to query clGetKernelWorkGroupInfo for the maximum local work size. When I do that, it also reports 1024. I'm really out of options now, can somebody help? :)
main: http://pastebin.com/S6R6t3iF kernel: http://pastebin.com/Mrhr8B4v