diff --git a/loopy/compiled.py b/loopy/compiled.py index 977237d50d9892ae4851ce5473b4b4e65f27d3a1..af2925543888c5bfdb6888bdd137f9d0498eff0b 100644 --- a/loopy/compiled.py +++ b/loopy/compiled.py @@ -131,6 +131,7 @@ class CompiledKernel: allocator = kwargs.pop("allocator", None) wait_for = kwargs.pop("wait_for", None) out_host = kwargs.pop("out_host", None) + no_run = kwargs.pop("no_run", None) import loopy as lp @@ -186,11 +187,14 @@ class CompiledKernel: assert not kwargs_copy, ( "extra arguments: "+", ".join(kwargs_copy.iterkeys())) - evt = self.cl_kernel(queue, - self.global_size_func(**domain_parameters), - self.local_size_func(**domain_parameters), - *args, - g_times_l=True, wait_for=wait_for) + if no_run: + evt = cl.enqueue_marker(queue) + else: + evt = self.cl_kernel(queue, + self.global_size_func(**domain_parameters), + self.local_size_func(**domain_parameters), + *args, + g_times_l=True, wait_for=wait_for) if out_host is None and encountered_non_numpy: out_host = True