PMSat: a parallel version of MiniSAT

Parallel computing has become an affordable reality forcing a shift in the programming paradigm from sequential to concurrent applications, specially those who demand much computational power or with large search spaces like SAT-solvers. In this context we present the research, planning and implementation of PMSat: a parallel version of MiniSAT with MPI (Message Passing Interface) technology, to be executed in clusters or grids of computers. The main features of the program are described: search modes, search space pruning and share of learnt clauses. An analysis of its performance and load balance is also presented.

[1]  J. A. Robinson,et al.  Review: Martin Davis, George Logemann, Donald Loveland, A Machine Program for Theorem-Proving , 1967 .

[2]  Wolfgang Küchlin,et al.  An object-oriented platform for distributed high-performance symbolic computation , 1999 .

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

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

[5]  Ian Foster,et al.  Designing and building parallel programs , 1994 .

[6]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[7]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[8]  Alan H. Karp,et al.  Measuring parallel processor performance , 1990, CACM.

[9]  Joao Marques-Silva,et al.  GRASP-A new search algorithm for satisfiability , 1996, Proceedings of International Conference on Computer Aided Design.

[10]  Gil Utard,et al.  A Parallelization Scheme Based on Work Stealing for a Class of SAT Solvers , 2005, Journal of Automated Reasoning.

[11]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[12]  Wolfgang Küchlin,et al.  A Universal Parallel SAT Checking Kernel , 2003, PDPTA.

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

[14]  Chu Min Li,et al.  A Constraint-Based Approach to Narrow Search Trees for Satisfiability , 1999, Inf. Process. Lett..

[15]  Wahid Chrabakh,et al.  GrADSAT: A Parallel SAT Solver for the Grid , 2003 .

[16]  Karem A. Sakallah,et al.  GRASP—a new search algorithm for satisfiability , 1996, ICCAD 1996.

[17]  Sean Forman NagSAT; A Randomized Complete, Parallel Solver for 3-SAT , 2002 .