Skip to main content

On Multi-threaded Satisfiability Solving with OpenMP

  • Conference paper
OpenMP in a New Era of Parallelism (IWOMP 2008)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5004))

Included in the following conference series:

Abstract

The boolean satisfiability problem sat is a well-known NP-Complete problem, which is widely studied because of its conceptual simplicity. Nowadays the number of existing parallel SAT solvers is quite small. Furthermore, they are generally designed for large clusters using the message passing paradigm. These solvers are coarse grained application since they divide the search-tree among the processors avoiding communication and synchronization. In this paper mtss, for Multi Threaded Sat Solver, is introduced. It is a fine grain parallel sat solver, in shared memory. It defines a rich thread in charge of the search-tree evaluation and a set of poor threads that will help the rich one by simplifying the opened node. mtss is well designed for multi-core CPU since it reduces the memory allocation during the search.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Cook, S.A.: The Complexity of Theorem Proving Procedures. In: 3rd ACM Symp. on Theory of Computing, Ohio, pp. 151–158 (1971)

    Google Scholar 

  2. Braunstein, A., Mézard, M., Zecchina, R.: Survey propagation: An algorithm for satisfiability. Random Struct. Algorithms 27(2), 201–226 (2005)

    Article  MATH  Google Scholar 

  3. Kautz, H., Selman, B.: Pushing the Envelope: Planning, Propositional Logic and Stochastic Search. In: Proc. of the 30th National Conf. on Artificial Intelligence and the 8th Innovative Applications of Artificial Intelligence Conf., Menlo Park, August 4–8, 1996, pp. 1194–1201. AAAI Press / MIT Press (1996)

    Google Scholar 

  4. Biere, A., Heljanko, K., Junttila, T., Latvala, T., Schuppan, V.: Linear encodings of bounded LTL model checking. Logical Methods in Computer Science 2 (2006)

    Google Scholar 

  5. Potlapally, N.R., Raghunathan, A., Ravi, S., Jha, N.K., Lee, R.B.: Aiding side-channel attacks on cryptographic software with satisfiability-based analysis. IEEE Trans. VLSI Syst. 15(4), 465–470 (2007)

    Article  Google Scholar 

  6. Davis, M., Logemann, G., Loveland, D.: A Machine Program for Theorem-Proving. Journal Association for Computing Machine (5), 394–397 (1962)

    Google Scholar 

  7. Bacchus, F., Winter, J.: Effective preprocessing with hyper-resolution and equality reduction (2003)

    Google Scholar 

  8. Zhang, L., Madigan, C., Moskewicz, M., Malik, S.: Efficient Conflict Driven Learning in a Boolean Satisfiability Solver. In: Proc. of ICCAD, San Jose (November 2001) (to appear)

    Google Scholar 

  9. Habbas, Z., Krajecki, M., Singer, D.: Decomposition techniques for parallel resolution of constraint satisfaction problems in shared memory: a comparative study. Intern. Journal of Computational Science and Engineering (IJCSE) 1(2/3/4), 192–206 (2005)

    Article  Google Scholar 

  10. Hoos, H.H., Stützle, T.: Stochastic Local Search: Foundations & Applications (The Morgan Kaufmann Series in Artificial Intelligence). Morgan Kaufmann, San Francisco (2004)

    Google Scholar 

  11. Dequen, G., Dubois, O.: An efficient approach to solving random -satproblems. J. Autom. Reasoning 37(4), 261–276 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  12. Zhang, H., Bonacina, M.P., Hsiang, J.: Psato: a distributed propositional prover and its application to quasigroup problems. J. Symb. Comput. 21(4-6), 543–560 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  13. Jurkowiak, B., Li, C.M., Utard, G.: Parallelizing Satz Using Dynamic Workload Balancing. In: Proc. of Workshop on Theory and Application of Satisfiability Testing (Sat 2001), Boston, June 2001, pp. 205–211 (2001)

    Google Scholar 

  14. Mitchell, D., Selman, B., Levesque, H.J.: Hard and easy distribution of SAT problems. In: Proc. 10th Nat. Conf. on Artificial Intelligence, pp. 459–465. AAAI, Menlo Park (1992)

    Google Scholar 

  15. Lewis, M., Schubert, T., Becker, B.: Multithreaded sat solving. In: ASP-DAC 2007: Proceedings of the 2007 conference on Asia South Pacific design automation, Washington, DC, USA, pp. 926–931. IEEE Computer Society Press, Los Alamitos (2007)

    Google Scholar 

  16. Feldman, Y., Dershowitz, N., Hanna, Z.: Parallel multithreaded satisfiability solver: Design and implementation (2004)

    Google Scholar 

  17. Silva, J.P.M., Sakallah, K.A.: Grasp a new search algorithm for satisfiability. In: ICCAD 1996: Proc. of the 1996 IEEE/ACM Intern. Conf. on Computer-aided design, Washington, DC, USA, pp. 220–227. IEEE Computer Society, Los Alamitos (1996)

    Google Scholar 

  18. Chrabakh, W., Wolski, R.: Gridsat: Design and implementation of a computational grid application. J. Grid Comput. 4(2), 177–193 (2006)

    Article  MATH  Google Scholar 

  19. Singer, D., Monnet, A.: JaCk-SAT: A New Parallel Scheme to Solve the Satisfiability Problem (SAT) based on Join-and-Check. In: Proc of Parallel Processing and Applied Mathematics, Gdansk (2007)

    Google Scholar 

  20. Jaillet, C., Krajecki, M.: Parallel programming with openmp: a new memory allocation model avoiding cache faults. In: Intern. Workshop on OpenMP 2007 (IWOMP2007). Tsinghua University, Beijing, China (June 2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rudolf Eigenmann Bronis R. de Supinski

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Vander-Swalmen, P., Dequen, G., Krajecki, M. (2008). On Multi-threaded Satisfiability Solving with OpenMP. In: Eigenmann, R., de Supinski, B.R. (eds) OpenMP in a New Era of Parallelism. IWOMP 2008. Lecture Notes in Computer Science, vol 5004. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-79561-2_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-79561-2_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-79560-5

  • Online ISBN: 978-3-540-79561-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics