Analysis of Portfolio-Style Parallel SAT Solving on Current Multi-Core Architectures

Effectively parallelizing SAT solving is an open and important issue. The current stateof-the-art is based on parallel portfolios. This technique relies on running multiple solvers on the same instance in parallel. As soon as one instance finishes, the entire run stops. Several successful systems even use Plain Parallel Portfolio (PPP), where the individual solvers do not exchange any information. This paper contains a thorough experimental evaluation of PPP, which shows that PPP can improve wall-clock runtime. This improvement is due to the fact that memory access is still local and the memory system can hide the latency of memory access, respectively. In particular, there does not seem as much cache congestion as one might imagine. We further present some limits on the scalability of PPP and finally give one argument why PPP solvers are a good fit for todays multi-core architectures.

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

[2]  Wolfgang Küchlin,et al.  PaSAT - Parallel SAT-Checking with Lemma Exchange: Implementation and Applications , 2001, Electron. Notes Discret. Math..

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

[4]  Sharad Malik,et al.  Cache Performance of SAT Solvers: a Case Study for Efficient Implementation of Algorithms , 2003, SAT.

[5]  Armin Biere,et al.  PicoSAT Essentials , 2008, J. Satisf. Boolean Model. Comput..

[6]  Lakhdar Sais,et al.  ManySAT: a Parallel SAT Solver , 2009, J. Satisf. Boolean Model. Comput..

[7]  Daniel Le Berre Sat4j, un moteur libre de raisonnement en logique propositionnelle. (Sat4j, an open reasoning platform for propositional reasoning) , 2010 .

[8]  Armin Biere,et al.  Cube and Conquer: Guiding CDCL SAT Solvers by Lookaheads , 2011, Haifa Verification Conference.

[9]  Norbert Manthey Parallel SAT Solving-Using More Cores , 2011 .

[10]  Armin Biere LINGELING and Friends Entering the SAT Challenge 2012 , 2012 .

[11]  A. Hyvärinen,et al.  Approaches for Multi-Core Propagation in Clause Learning Satisfiability Solvers , 2012 .

[12]  Antti Eero Johannes Hyvärinen,et al.  Designing Scalable Parallel SAT Solvers , 2012, SAT.

[13]  Olivier Roussel Behind the Scene of Solvers Competitions: the "evaluation" Experience , 2012, COMPARE.

[14]  Vasco M. Manquinho,et al.  An overview of parallel SAT solving , 2012, Constraints.

[15]  Youssef Hamadi,et al.  Seven Challenges in Parallel SAT Solving , 2012, AI Mag..