#pragma OPENCL EXTENSION cl_khr_byte_addressable_store : enable __kernel void collatz(__global unsigned int* inputNums, __global unsigned int* triesArr) { int N = get_global_id(1) * get_global_size(0) + get_global_id(0); int val = N + 1; int tries = 0; inputNums[N] = val; while(val != 1) { if(val % 2 == 0) { val = val / 2; } else { val = 3 * val + 1; } tries++; } triesArr[N] = tries; }