Is this valid :lol: ? Are variable references or pointer to one struct element available?
It’s really ugly to pass the whole global array and item id to Auxiliary function…
As long as you keep the memory type (global, local, private, constant) in mind, you can just pass around pointers as you do in C. E.g., just pass the function a pointer to the struct and then de-reference it there.
I know both AMD and Apple have OpenCL that will run on your CPU, so you should be able to play around with it regardless of your graphics card. In general I suggest people start working with OpenCL on the CPU because it is far more forgiving for debugging. (And you can often get printf and a bit of gdb to work, although neither are officially supported.)
Unfortunately OpenCL (AMD/ATI’s implementation) support X86 CPU w/ SSE 3.x or later. My historic Intel P4 doesn’t meet the minimal requirement. And OpenCL specs are cheap on words considering pointers (or support of variable references) in OpenCL. Can you feel my pain?