Abstract
The implicit parallelism of logic programs can be exploited by using parallel computers to support their execution. This paper describes the design and the implementation of a logic programming system on a distributed memory parallel architecture in an efficient and scalable way. This implementation is based on the AND/OR Process Model. The AND/OR processes are implemented as Occam processes, and the execution of a logic program is implemented by a tree of parallel processes located on the computing nodes of the parallel computer. A completely decentralized scheduling mechanism is used. The preliminary results show interesting scalability properties of the system.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
P. Borgwardt, “Parallel Prolog Using Stack Segments on Shared-memory Multiprocessors”, Proc. 1984 Int. Symp. on Logic Programming, pp. 2–11,1984.
M. Cannataro, G. Spezzano, and D. Talia, “A Highly Decentralized Architecture for the Parallel Execution of Logic Programs”, in C. Girault and M. Cosnard, eds., Decentralized Systems, pp. 235–246, North-Holland, Amsterdam 1990.
M. Cannataro, E. Gallizzi, G. Spezzano, and D. Talia, “Design, Implementation and Evaluation of a Deadlock-Free Routing Algorithm for Concurrent Computers”, to appear in Concurrency: Practice and Experience, John Wiley & Sons 1991.
J. Chassin, J.C. Syre, and H. Westphal, “Implementation of a Parallel Prolog System on a Commercial Multiprocessor”, Proc. ECAI 88, pp. 278–283, West Germany, 1988.
A. Ciepielewski and S. Haridi, “A Formal Model for OR-parallel Execution of Logic Programs”, Proc. Information Processing 83, pp. 299–305,1983.
K.L. Clark, “PARLOG: The Language and its Applications”, Proc. of TAPSOFT, pp. 30–53, Pisa, Italy, 1987.
J.S. Conery and D.F. Kibler, “Parallel Interpretation of Logic Programs”, Proc. Conf. on Functional Programming Languages and Computer Architectures, pp. 163–170, ACM Press, 1981.
J.S. Conery and D.F. Kibler, “And Parallelism in Logic Programs”, Proc. Int. Joint Conf. on Artificial Intelligence, pp. 539–543, Germany, 1983.
J.S. Conery, Parallel Execution of Logic Programs, Kluwer Academic Publisher 1987.
J.S. Conery, “Bindings Environments for Parallel Logic Programs in Non-Shared Memory Multiprocessors”, Proc. of 1987 Int. Conf. on Parallel Processing, pp. 457–467, IEEE, 1987.
J.A. Crammond, “A Comparative Study of Unification Algorithms for OR-parallel Execution of Logic Languages”, IEEE Transactions on Computers, c-34, 10, 911–917 (1985).
D. DeGroot, “Restricted AND-Parallelism”, Proc. Int. Conf. on Fifth Generation Computer Systems 1984, pp. 471–478, ICOT, Tokyo, Nov. 1984.
B.S. Fagin, and A.M. Despain, “The Performance of Parallel Prolog Programs”, IEEE Trans, on Computers, c-39, 12, 1434–1445 (1990).
E. Gallizzi, M. Cannataro, G. Spezzano, and D. Talia, “A Deadlock-Free Communication System for a Transputer Network”, Proceedings of 12th OUG, pp. 11–21, IOS Press, Amsterdam, 1990.
Inmos, Occam 2 Reference Manual, Prentice Hall, England, 1988.
Inmos, Transputer Databook, Inmos Ltd., England, 1989.
L.V. Kale’, “The REDUCE-OR Process Model for Parallel Evaluation of Logic Programs”, Proc. 4th Int. Conf. on Logic Programming, pp. 616–632, Melbourne, Australia, May 1987.
G. Lindstrom, “OR-parallelism on Applicative Architectures”, Proc. Second Int. Logic Programming Conference, pp. 159–170, 1984.
C. Scitz, “Concurrent VLSI Architectures”, IEEE Trans, on Computers, c-33, 12, 1247–1265 (1984).
E. Shapiro, “Concurrent Prolog: A Progress Report”, IEEE Computer, 19, 8, 44–58 (1986).
P. Treleaven, et al., “Computer Architectures for Artificial Intelligence”, Lecture Notes in Computer Science, Vol. 272, pp. 416–492, Springer-Verlag 1987.
K. Ueda, “Guarded Horn Clauses”, Technical Report, TR-103 ICOT, Tokyo, Sept. 1985.
D.S. Warren, “Efficient Memory Management for Flexible Control Strategies”, Proc. 1984 Int. Symp. on Logic Programming, pp. 198–202,1984.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cannataro, M., Spezzano, G., Talia, D. (1993). Logic Program Execution on Distributed Memory Parallel Computers. In: Özgüner, F., Erçal, F. (eds) Parallel Computing on Distributed Memory Multiprocessors. NATO ASI Series, vol 103. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-58066-6_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-58066-6_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-63460-4
Online ISBN: 978-3-642-58066-6
eBook Packages: Springer Book Archive