From 006102479a2e8892f943f004c6292bea3d57f092 Mon Sep 17 00:00:00 2001 From: Dennis Kobert Date: Wed, 15 Jan 2020 01:38:48 +0100 Subject: Force ocl to wait for the queue to finish --- src/solvers/gpu/host.rs | 1 + src/solvers/gpusolver.rs | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/solvers/gpu/host.rs b/src/solvers/gpu/host.rs index 6b91d74..80f9de9 100644 --- a/src/solvers/gpu/host.rs +++ b/src/solvers/gpu/host.rs @@ -173,6 +173,7 @@ impl Host { .offset(0) .read(&mut data) .enq()?; + self.queue.finish()?; self.output_sender .send(Message::ResultMessage(ResultMessage::new( data, diff --git a/src/solvers/gpusolver.rs b/src/solvers/gpusolver.rs index 62e6e0f..d2365e7 100644 --- a/src/solvers/gpusolver.rs +++ b/src/solvers/gpusolver.rs @@ -55,11 +55,11 @@ impl GpuSolver { println!("mem wait {:?}", info); } let i = self.n - 3 - numbers[index - 1] / self.chunk; - sender + let _ = sender .send(Message::CheckRequest(CheckRequest::new( new_num, curr_mask, i, ))) - .unwrap(); + .is_ok(); return; } let start = numbers[index as usize] / self.chunk; -- cgit v1.2.3-54-g00ecf