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.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Blumhofe, R.D., Leiserson, C.E.: Scheduling Multithreaded Computations by Work Stealing. In: FOCS 1994 (1994)
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)
Intel Corp.: Teraflops research chip (2007)
Michel, L., Van Hentenryck, P.: A Decomposition-Based Implementation of Search Strategies. ACM Transactions on Computational Logic 5(2) (2004)
Michel, L., Van Hentenryck, P.: Parallel Local Search in Comet. In: van Beek, P. (ed.) CP 2005. LNCS, vol. 3709. Springer, Heidelberg (2005)
Mudambi, S., Schimpf, J.: Parallel CLP on Heterogeneous Networks. In: ICLP 1994 (1994)
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)
Perron, L.: Practical Parallelism in Constraint Programming. In: CP-AI-OR 2002 (2002)
Schulte, C.: Programming Constraint Inference Engines. In: Smolka, G. (ed.) Principles and Practice of Constraint Programming - CP 1997. LNCS, vol. 1330, Springer, Heidelberg (1997)
Schulte, C.: Parallel Search Made Simple. In: TRICS 2000 (2000)
Schulte, C., Carlsson, M.: Finite Domain Constraint Programming Systems. In: Handbook of Constraint Programming, Elsevier, Amsterdam (2006)
Van Hentenryck, P.: Parallel Constraint Satisfaction in Logic Programming: Preliminary Results of CHIP within PEPSys. In: ICLP 1989 (1989)
Van Hentenryck, P., Michel, L.: Nondeterministic Control for Hybrid Search. In: CP-AI-OR 2005 (2005)
Warren, D.H.D.: The SRI Model for Or-Parallel Execution of Prolog. Abstract Design and Implementation Issues. In: ISLP 1987 (1987)
Author information
Authors and Affiliations
Editor information
Rights 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)