|
@@ -87,6 +87,7 @@ static void redux_opencl_kernel(void *descr[], void *arg)
|
|
|
h_dst += h_src;
|
|
|
|
|
|
clEnqueueWriteBuffer(queue, d_dst, CL_TRUE, 0, sizeof(unsigned), (void *)&h_dst, 0, NULL, NULL);
|
|
|
+ clFinish(queue);
|
|
|
}
|
|
|
|
|
|
static void neutral_opencl_kernel(void *descr[], void *arg)
|
|
@@ -100,6 +101,7 @@ static void neutral_opencl_kernel(void *descr[], void *arg)
|
|
|
starpu_opencl_get_current_queue(&queue);
|
|
|
|
|
|
clEnqueueWriteBuffer(queue, d_dst, CL_TRUE, 0, sizeof(unsigned), (void *)&h_dst, 0, NULL, NULL);
|
|
|
+ clFinish(queue);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
@@ -167,6 +169,7 @@ static void increment_opencl_kernel(void *descr[], void *cl_arg __attribute__((u
|
|
|
clEnqueueReadBuffer(queue, d_token, CL_TRUE, 0, sizeof(unsigned), (void *)&h_token, 0, NULL, NULL);
|
|
|
h_token++;
|
|
|
clEnqueueWriteBuffer(queue, d_token, CL_TRUE, 0, sizeof(unsigned), (void *)&h_token, 0, NULL, NULL);
|
|
|
+ clFinish(queue);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
@@ -248,6 +251,7 @@ int main(int argc, char **argv)
|
|
|
STARPU_CHECK_RETURN_VALUE(ret, "starpu_data_acquire");
|
|
|
if (var != ntasks * (loop+1))
|
|
|
{
|
|
|
+ FPRINTF(stderr, "[end of loop] Value %u != Expected value %u\n", var, ntasks * (loop+1));
|
|
|
starpu_data_release(handle);
|
|
|
starpu_data_unregister(handle);
|
|
|
goto err;
|
|
@@ -257,7 +261,10 @@ int main(int argc, char **argv)
|
|
|
|
|
|
starpu_data_unregister(handle);
|
|
|
if (var != ntasks * nloops)
|
|
|
+ {
|
|
|
+ FPRINTF(stderr, "Value %u != Expected value %u\n", var, ntasks * (loop+1));
|
|
|
goto err;
|
|
|
+ }
|
|
|
|
|
|
starpu_shutdown();
|
|
|
|