Designing Scalable Parallel SAT Solvers

  • Antti E. J. Hyvärinen
  • Norbert Manthey
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7317)


Solving instances of the propositional satisfiability problem (SAT) in parallel has received a significant amount of attention as the number of cores in a typical workstation is steadily increasing. With the increase of the number of cores, in particular the scalability of such approaches becomes essential for fully harnessing the potential of modern architectures. The best parallel SAT solvers have, until recently, been based on algorithm portfolios, while search-space partitioning approaches have been less successful. We prove, under certain natural assumptions on the partitioning function, that search-space partitioning can always result in an increased expected run time, justifying the success of the portfolio approaches. Furthermore, we give first controlled experiments showing that an approach combining elements from partitioning and portfolios scales better than either of the two approaches and succeeds in solving instances not solved in a recent solver competition.


Partition Tree Unit Clause Portfolio Approach Partitioning Approach Master Thread 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cook, S.A.: The complexity of theorem-proving procedures. In: Proc. STOC 1971, pp. 151–158. ACM (1971)Google Scholar
  2. 2.
    Béjar, R., Manyà, F.: Solving the round robin problem using propositional logic. In: Proc. AAAI 2000, pp. 262–266. AAAI Press/MIT Press (2000)Google Scholar
  3. 3.
    Fuhs, C., Giesl, J., Middeldorp, A., Schneider-Kamp, P., Thiemann, R., Zankl, H.: SAT Solving for Termination Analysis with Polynomial Interpretations. In: Marques-Silva, J., Sakallah, K.A. (eds.) SAT 2007. LNCS, vol. 4501, pp. 340–354. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  4. 4.
    Kautz, H.A., Selman, B.: Planning as satisfiability. In: Proc. ECAI 1992, pp. 359–363. John Wiley and Sons (1992)Google Scholar
  5. 5.
    Lynce, I., Marques-Silva, J.: SAT in Bioinformatics: Making the Case with Haplotype Inference. In: Biere, A., Gomes, C.P. (eds.) SAT 2006. LNCS, vol. 4121, pp. 136–141. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Hyvärinen, A.E.J., Junttila, T., Niemelä, I.: Partitioning SAT Instances for Distributed Solving. In: Fermüller, C.G., Voronkov, A. (eds.) LPAR-17. LNCS, vol. 6397, pp. 372–386. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  7. 7.
    Luby, M., Sinclair, A., Zuckerman, D.: Optimal speedup of Las Vegas algorithms. Information Processing Letters 47(4), 173–180 (1993)MathSciNetzbMATHCrossRefGoogle Scholar
  8. 8.
    Rao, V.N., Kumar, V.: On the efficiency of parallel backtracking. IEEE Transactions on Parallel and Distributed Systems 4(4), 427–437 (1993)CrossRefGoogle Scholar
  9. 9.
    Luby, M., Ertel, W.: Optimal Parallelization of Las Vegas Algorithms. In: Enjalbert, P., Mayr, E.W., Wagner, K.W. (eds.) STACS 1994. LNCS, vol. 775, pp. 463–474. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  10. 10.
    Segre, A.M., Forman, S.L., Resta, G., Wildenberg, A.: Nagging: A scalable fault-tolerant paradigm for distributed search. Artificial Intelligence 140(1/2), 71–106 (2002)MathSciNetzbMATHCrossRefGoogle Scholar
  11. 11.
    Hyvärinen, A.E.J., Junttila, T., Niemelä, I.: Partitioning search spaces of a randomized search. Fundamenta Informaticae 107(2-3), 289–311 (2011)MathSciNetzbMATHGoogle Scholar
  12. 12.
    Böhm, M., Speckenmeyer, E.: A fast parallel SAT-solver — efficient workload balancing. Annals of Mathematics and Artificial Intelligence 17(3-4), 381–400 (1996)MathSciNetzbMATHCrossRefGoogle Scholar
  13. 13.
    Sinz, C., Blochinger, W., Küchlin, W.: PaSAT — parallel SAT-checking with lemma exchange: Implementation and applications. In: Proc. SAT 2001. Electronic Notes in Discrete Mathematics, vol. 9. Elsevier (2001)Google Scholar
  14. 14.
    Schubert, T., Lewis, M., Becker, B.: PaMiraXT: Parallel SAT solving with threads and message passing. Journal on Satisfiability, Boolean Modeling and Computation 6(4), 203–222 (2009)zbMATHGoogle Scholar
  15. 15.
    Heule, M.J., Kullmann, O., Wieringa, S., Biere, A.: Cube and conquer: Guiding CDCL SAT solvers by lookaheads. In: Proc. HVC 2001. Springer (2011) (to appear)Google Scholar
  16. 16.
    Huberman, B.A., Lukose, R.M., Hogg, T.: An economics approach to hard computational problems. Science 275(5296), 51–54 (1997)CrossRefGoogle Scholar
  17. 17.
    Hamadi, Y., Jabbour, S., Saïs, L.: ManySAT: a parallel SAT solver. Journal on Satisfiability, Boolean Modeling and Computation 6(4), 245–262 (2009)zbMATHGoogle Scholar
  18. 18.
    Hamadi, Y., Jabbour, S., Saïs, L.: Control-based clause sharing in parallel SAT solving. In: Proc. IJCAI 2009, pp. 499–504. IJCAI/AAAI (2009)Google Scholar
  19. 19.
    Guo, L., Hamadi, Y., Jabbour, S., Sais, L.: Diversification and Intensification in Parallel SAT Solving. In: Cohen, D. (ed.) CP 2010. LNCS, vol. 6308, pp. 252–265. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  20. 20.
    Hyvärinen, A.E.J., Junttila, T., Niemelä, I.: Incorporating clause learning in grid-based randomized SAT solving. Journal on Satisfiability, Boolean Modeling and Computation 6, 223–244 (2009)zbMATHGoogle Scholar
  21. 21.
    Hyvärinen, A.E.J., Junttila, T.A., Niemelä, I.: A Distribution Method for Solving SAT in Grids. In: Biere, A., Gomes, C.P. (eds.) SAT 2006. LNCS, vol. 4121, pp. 430–435. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  22. 22.
    Hyvärinen, A.E.J., Junttila, T., Niemelä, I.: Grid-Based SAT Solving with Iterative Partitioning and Clause Learning. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 385–399. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  23. 23.
    Zhang, H., Bonacina, M.P., Hsiang, J.: PSATO: a distributed propositional prover and its application to quasigroup problems. Journal of Symbolic Computation 21(4-6), 543–560 (1996)MathSciNetzbMATHCrossRefGoogle Scholar
  24. 24.
    Hyvärinen, A.E.J.: Grid Based Propositional Satisfiability Solving. PhD thesis, Aalto University (2011)Google Scholar
  25. 25.
    Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: Proc. DAC 2001, pp. 530–535. ACM (2001)Google Scholar
  26. 26.
    Eén, N., Sörensson, N.: An Extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Antti E. J. Hyvärinen
    • 1
  • Norbert Manthey
    • 2
  1. 1.Department of Information and Computer ScienceAalto UniversityAaltoFinland
  2. 2.Knowledge Representation and Reasoning GroupTechnische Universität DresdenDresdenGermany

Personalised recommendations