I had one of our engineer look at this what he found is the following
In the hydro_kernels.c and the code is not legal 1.2 OpenCL C so it is not compiling:
"/tmp/OCL29553T8.cl", line 621: error: kernel arguments can't be declared with
types
bool/half/size_t/ptrdiff_t/intptr_t/uintptr_t/pointer-to-pointer
Init1KcuRiemann(__global Args_t * K,
^
"/tmp/OCL29553T8.cl", line 645: error: kernel arguments can't be declared with
types
bool/half/size_t/ptrdiff_t/intptr_t/uintptr_t/pointer-to-pointer
Init2KcuRiemann(__global Args_t * K,
^
In OepnCL 1.2 You’re not allowed to pass in pointers to a kernel other than as kernel arguments. Note This restriction is removed with OpenCL 2.0. Looks like NVIDIA relaxed the driver and runtime relative to the spec here why it is working.