Abstract
Multi-SLD resolution is a variant of SLD resolution based on a simple idea: Let the allowed constraints be closed under disjunction, and provide a mechanism for collecting the solutions to a goal and turning these solutions into a disjunctive constraint. This idea leads to a novel operational model of logic programming, called data or-parallelism, in which multiple constraint environments partially replace backtracking as the operational embodiment of disjunction. The model has a natural implementation on data-parallel computers since each disjunct of a disjunctive constraint can be handled by a single (virtual) processor. In this paper we give linear performance models that explain why Multi-SLD resolution is faster than SLD resolution for many combinatorial search problems, even on a uniprocessor. The models give insight into the nature of data or-parallelism and provide a basis for predicting the effects of various optimizations. We present data from actual uniprocessor and SIMD executions to support the validity of the models. Lastly, we relate the models' predictions to the supposed limits on parallel speedup suggested by Amdahl's Law.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
K. Ali and R. Karlsson. The Muse Or-Parallel Prolog model and its performance. In NACLP, pages 757–776, 1990.
J. Barklund. Parallel Unification. PhD thesis, Uppsala University, 1990.
Jonas Barklund and Haakan Millroth. Providing iteration and concurrency in logic programs through bounded quantifications. In Proceedings of the International Conference on Fifth Generation Computer Systems, pages 817–824, ICOT, Japan, 1992. Association for Computing Machinery.
Angel L. DeCegamma. The Technology of Parallel Processing: Parallel Processing Architectures and VLSI Hardware, volume 1. Prentice Hall, 1989.
M. Dincbas, P. Van Hentenryck, H. Simonis, and A. Aggoun. The constraint logic programming language CHIP. In 2nd FGCS, 1988.
E. Lusk et. al. The Aurora or-parallel prolog system. New Generation Computing, 7:243–271, 1990.
J.L. Gustafson. Reevaluating amdahl's law. CACM, pages 532–533, 1988.
H. Milroth. Reforming Compilation of Logic Programs. PhD thesis, Uppsala University, 1990.
Vijay A. Saraswat. Concurrent Constraint Programming. MIT, 1990.
D. A. Smith. Multilog: Data Or-Parallel Logic Programming. In JICSLP '92 Workshop on Parallel Implementations of Logic Programming Systems, 1992.
D. A. Smith. MultiLog: Data Or-Parallel Logic Programming. In David S. Warren, editor, Proceedings of the Tenth International Conference on Logic Programming, Budapest, Hungary, 1993. MIT Press.
D. A. Smith. Analysis of Environment Representation Schemes for MultiLog. Technical report, University of Waikato, 1994.
D. A. Smith and Timothy Hickey. Multi-SLD Resolution. In Logic Programming and Automated Reasoning. Springer-Verlag, 1994.
D.A. Smith. MultiLog: Data Or-Parallel Logic Programming. PhD thesis, Brandeis University, 1993.
Bo-Ming Tong and Ho-Fung Leung. Concurrent constraint logic programming on massively parallel simd computers. In International Logic Programming Symposium, 1993.
P. VanHentenryck. Constraint Satisfaction in Logic Programming. MIT Press, 1989.
D.H.D. Warren. The SRI model for or-parallel execution of Prolog: Abstract design and implementation. In Proceedings of the 1987 Symposium on Logic Programming, pages 92–102, IEEE, Washington, D.C., August–September 1987. IEEE.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Smith, D.A. (1994). Why Multi-SLD beats SLD (even on a uniprocessor). In: Hermenegildo, M., Penjam, J. (eds) Programming Language Implementation and Logic Programming. PLILP 1994. Lecture Notes in Computer Science, vol 844. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58402-1_5
Download citation
DOI: https://doi.org/10.1007/3-540-58402-1_5
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58402-5
Online ISBN: 978-3-540-48695-4
eBook Packages: Springer Book Archive