diff options
author | Dennis Kobert <dennis@kobert.dev> | 2020-01-12 06:36:06 +0100 |
---|---|---|
committer | Dennis Kobert <dennis@kobert.dev> | 2020-01-12 06:36:06 +0100 |
commit | cf6c285d0960526843f849a9033ff1895fc8cab7 (patch) | |
tree | caa08ac9f44284852e395c4d9e41bdf8ed16e763 /src/solvers/gpusolver.rs | |
parent | 29bffc6f6c794fee886904ad3960c4cb770deb11 (diff) |
Fix borrow mustakesrefactoring
Diffstat (limited to 'src/solvers/gpusolver.rs')
-rw-r--r-- | src/solvers/gpusolver.rs | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/solvers/gpusolver.rs b/src/solvers/gpusolver.rs index 41de7e7..3bf8429 100644 --- a/src/solvers/gpusolver.rs +++ b/src/solvers/gpusolver.rs @@ -1,5 +1,5 @@ use crate::permutations::PermutationGenerator; -use crate::solvers::{opencl, wall_stats, IteratorSolver, Solver}; +use crate::solvers::{gpu, wall_stats, IteratorSolver, Solver}; use crate::structs::StoneWall; #[derive(Debug)] @@ -16,12 +16,15 @@ impl GpuSolver { let src = std::fs::read_to_string("src/solvers/check.cl").expect("failed to open kernel file"); - let senders = - opencl::GpuSolver::launch_sevice(&self.masks, self.n, self.h, self.w, 4, src.as_ref()) - .unwrap(); + let (sender, handle) = + gpu::OclManager::launch_sevice(&self.permutations, &self.masks, self.n, 4); for i in 0..12 { - senders[1 - i / 6] - .send(opencl::Job::new(vec![i as u32], self.masks[i])) + sender + .send(gpu::Message::CheckRequest(gpu::CheckRequest::new( + vec![i as u32], + self.masks[i], + 1 - i as u32 / 6, + ))) .unwrap(); } loop { |