diff options
author | Dennis Kobert <dennis@kobert.dev> | 2020-01-15 01:38:48 +0100 |
---|---|---|
committer | Dennis Kobert <dennis@kobert.dev> | 2020-01-15 01:38:48 +0100 |
commit | 006102479a2e8892f943f004c6292bea3d57f092 (patch) | |
tree | 1c7743b75fa624c771934bbb77d1144d5e7d30fc | |
parent | 042641ea2cfe3ad53eeae5c0cc311bf46f587d07 (diff) |
Force ocl to wait for the queue to finish
-rw-r--r-- | src/solvers/gpu/host.rs | 1 | ||||
-rw-r--r-- | 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; |