From bafd6a422a5db042b8d9f42aca6764fd8ee9b255 Mon Sep 17 00:00:00 2001 From: Pierre Paleo Date: Thu, 25 Jul 2024 10:02:24 +0200 Subject: [PATCH 1/2] Wait for partial convolution if execution is on CPU --- src/silx/opencl/convolution.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/silx/opencl/convolution.py b/src/silx/opencl/convolution.py index 99ecd02447..eb5be55396 100644 --- a/src/silx/opencl/convolution.py +++ b/src/silx/opencl/convolution.py @@ -385,6 +385,8 @@ def _batched_convolution(self, axis, input_ref=None, output_ref=None): self.kernel_args, input_ref, output_ref ) ev = opencl_kernel(*opencl_kernel_args) + if self.device.type == "CPU": + ev.wait() if self.profile: self.events.append(EventDescription("batched convolution", ev)) From 3620fd5bf02cc4da960d44f42a28c212d66e4ce1 Mon Sep 17 00:00:00 2001 From: Pierre Paleo Date: Thu, 25 Jul 2024 14:59:12 +0200 Subject: [PATCH 2/2] Fix device type check --- src/silx/opencl/convolution.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/silx/opencl/convolution.py b/src/silx/opencl/convolution.py index eb5be55396..719c1ada37 100644 --- a/src/silx/opencl/convolution.py +++ b/src/silx/opencl/convolution.py @@ -385,7 +385,7 @@ def _batched_convolution(self, axis, input_ref=None, output_ref=None): self.kernel_args, input_ref, output_ref ) ev = opencl_kernel(*opencl_kernel_args) - if self.device.type == "CPU": + if self.queue.device.type == cl.device_type.CPU: ev.wait() if self.profile: self.events.append(EventDescription("batched convolution", ev))