Skip to main content

Parallelizing Constraint Programs Transparently

  • Conference paper
Principles and Practice of Constraint Programming – CP 2007 (CP 2007)

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

  • 1736 Accesses

Abstract

The availability of commodity multi-core and multi-processor machines and the inherent parallelism in constraint programming search offer significant opportunities for constraint programming. They also present a fundamental challenge: how to exploit parallelism transparently to speed up constraint programs. This paper shows how to parallelize constraint programs transparently without changes to the code. The main technical idea consists of automatically lifting a sequential exploration strategy into its parallel counterpart, allowing workers to share and steal subproblems. Experimental results show that the parallel implementation may produces significant speedups on multi-core machines.

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. Blumhofe, R.D., Leiserson, C.E.: Scheduling Multithreaded Computations by Work Stealing. In: FOCS 1994 (1994)

    Google Scholar 

  2. Choi, C.W., Henz, M., Ng, K.B.: Components for State Restoration in Tree Search. In: Walsh, T. (ed.) CP 2001. LNCS, vol. 2239, Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  3. Intel Corp.: Teraflops research chip (2007)

    Google Scholar 

  4. Michel, L., Van Hentenryck, P.: A Decomposition-Based Implementation of Search Strategies. ACM Transactions on Computational Logic 5(2) (2004)

    Google Scholar 

  5. Michel, L., Van Hentenryck, P.: Parallel Local Search in Comet. In: van Beek, P. (ed.) CP 2005. LNCS, vol. 3709. Springer, Heidelberg (2005)

    Google Scholar 

  6. Mudambi, S., Schimpf, J.: Parallel CLP on Heterogeneous Networks. In: ICLP 1994 (1994)

    Google Scholar 

  7. Perron, L.: Search Procedures and Parallelism in Constraint Programming. In: Jaffar, J. (ed.) Principles and Practice of Constraint Programming – CP 1999. LNCS, vol. 1713, Springer, Heidelberg (1999)

    Google Scholar 

  8. Perron, L.: Practical Parallelism in Constraint Programming. In: CP-AI-OR 2002 (2002)

    Google Scholar 

  9. Schulte, C.: Programming Constraint Inference Engines. In: Smolka, G. (ed.) Principles and Practice of Constraint Programming - CP 1997. LNCS, vol. 1330, Springer, Heidelberg (1997)

    Google Scholar 

  10. Schulte, C.: Parallel Search Made Simple. In: TRICS 2000 (2000)

    Google Scholar 

  11. Schulte, C., Carlsson, M.: Finite Domain Constraint Programming Systems. In: Handbook of Constraint Programming, Elsevier, Amsterdam (2006)

    Google Scholar 

  12. Van Hentenryck, P.: Parallel Constraint Satisfaction in Logic Programming: Preliminary Results of CHIP within PEPSys. In: ICLP 1989 (1989)

    Google Scholar 

  13. Van Hentenryck, P., Michel, L.: Nondeterministic Control for Hybrid Search. In: CP-AI-OR 2005 (2005)

    Google Scholar 

  14. Warren, D.H.D.: The SRI Model for Or-Parallel Execution of Prolog. Abstract Design and Implementation Issues. In: ISLP 1987 (1987)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Christian Bessière

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Michel, L., See, A., Van Hentenryck, P. (2007). Parallelizing Constraint Programs Transparently. In: Bessière, C. (eds) Principles and Practice of Constraint Programming – CP 2007. CP 2007. Lecture Notes in Computer Science, vol 4741. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74970-7_37

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74970-7_37

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-74969-1

  • Online ISBN: 978-3-540-74970-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics