From c36035c0667fdd224da914b50c30a9366e1a5c38 Mon Sep 17 00:00:00 2001 From: Dennis Kobert Date: Tue, 7 Jan 2020 03:12:55 +0100 Subject: Fix global worgsize calculation --- src/solvers/gpusolver.rs | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'src/solvers/gpusolver.rs') diff --git a/src/solvers/gpusolver.rs b/src/solvers/gpusolver.rs index 69c400e..3a96568 100644 --- a/src/solvers/gpusolver.rs +++ b/src/solvers/gpusolver.rs @@ -1,5 +1,6 @@ use crate::permutations::PermutationGenerator; use crate::solver::{wall_stats, IteratorSolver, Solver}; +use crate::solvers::opencl; use crate::structs::StoneWall; #[derive(Debug)] @@ -16,14 +17,17 @@ impl GpuSolver { let src = std::fs::read_to_string("src/solvers/check.cl").expect("failed to open kernel file"); - crate::solvers::opencl::GpuSolver::launch_sevice( - &self.masks, - self.n, - self.h, - self.w, - src.as_ref(), - ) - .unwrap(); + let senders = + opencl::GpuSolver::launch_sevice(&self.masks, self.n, self.h, self.w, 4, src.as_ref()) + .unwrap(); + for i in 0..12 { + senders[1 - i / 6] + .send(opencl::Job::new(vec![i as u32], self.masks[i])) + .unwrap(); + } + loop { + std::thread::sleep(std::time::Duration::from_secs(5)); + } vec![] } } -- cgit v1.2.3-54-g00ecf