Could someone please give an advice on how to pass arrays of structures that contain members that contain other arrays of structs? To be more more clear, here’s what I am trying to do:
__kernel void calc(__global CL_ThreadData* tData)
//Do some calc
//Mask off tData by thread_ID
printf(“ID of data is %d”,tData[get_global_id(0)].data.id);
On the host side I create an array of CL_ThreadData for 16 threads, initialize it, move it to device mem via clCreateBuffer and pass entire thing via SetArg() to the kernel.