c-sat: A Parallel SAT Solver for Clusters

Parallelizing modern SAT solvers for clusters such as Beowulf is an important challenge both in terms of performance scalability and stability. This paper describes a SAT Solver c-sat, a parallelization of MiniSat using MPI. It employs a layered master-worker architecture, where the masters handle lemma exchange, deletion of redundant lemmas and the dynamic partitioning of search trees, while the workers do search using different decision heuristics and random number seeds. With careful tuning, c-sat showed good speedup over MiniSat with reasonably small communication overhead on various clusters. On an eight-node cluster with two Dual-Core Opterons on each node (32 PEs), c-sat ran at least 23 times faster than MiniSat using 31 PEs (geometric mean; at least 31 times for satisfiable problems) for 189 large-scale problems from SAT Competition and two SAT-Races.

[1]  Maria Paola Bonacina,et al.  PSATO: a Distributed Propositional Prover and its Application to Quasigroup Problems , 1996, J. Symb. Comput..

[2]  Paulo F. Flores,et al.  PMSat: a parallel version of MiniSAT , 2008, J. Satisf. Boolean Model. Comput..

[3]  Lakhdar Sais,et al.  ManySat: solver description , 2008 .

[4]  Bernd Becker,et al.  Multithreaded SAT Solving , 2007, 2007 Asia and South Pacific Design Automation Conference.

[5]  Ilkka Niemelä,et al.  Incorporating Learning in Grid-Based Randomized SAT Solving , 2008, AIMSA.

[6]  John Domingue,et al.  Artificial Intelligence: Methodology, Systems, and Applications, 12th International Conference, AIMSA 2006, Varna, Bulgaria, September 12-15, 2006, Proceedings , 2006, AIMSA.

[7]  Sharad Malik,et al.  The Quest for Efficient Boolean Satisfiability Solvers , 2002, CAV.

[8]  Daniel Singer Parallel Resolution of the Satisfiability Problem: A Survey , 2006 .

[9]  Katsumi Inoue,et al.  A competitive and cooperative approach to propositional satisfiability , 2006, Discret. Appl. Math..

[10]  Wolfgang Blochinger Towards Robustness in Parallel SAT Solving , 2005, PARCO.

[11]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[12]  E. Talbi Parallel combinatorial optimization , 2006 .

[13]  Lintao Zhang On Subsumption Removal and On-the-Fly CNF Simplification , 2005, SAT.

[14]  Wolfgang Küchlin,et al.  Parallel propositional satisfiability checking with distributed dynamic learning , 2003, Parallel Comput..