Or-Parallel Prolog on a Distributed Memory Architecture

Abstract This paper discusses the design of Dorpp, an or-parallel Prolog system for distributed memory architectures. The problem of sharing the environment across a set of nodes that do not physically share memory is addressed in a novel manner by designing a Virtual Shared Memory (VSM) scheme to specifically meet the requirements of or-parallelism. The aim is to avoid the overheads of a general VSM scheme that would provide a stricter level of memory coherence than is actually required. The paper identifies the requirements for memory coherence in or-parallel Prolog, and describes how they can be met cheaply. Simulation results are presented and analyzed in order to highlight key aspects of the system's run-time behavior.

[1]  Kish Shen Studies of and/or parallelism in Prolog , 1992 .

[2]  Gopal Gupta,et al.  Analysis of Or-parallel execution models , 1993, TOPL.

[3]  Lourdes Araujo,et al.  A Parallel Prolog System for Distributed Memory , 1997, J. Log. Program..

[4]  José M. Troya,et al.  An OR Parallel Prolog Model for Distributed Memory Systems , 1993, PLILP.

[5]  Péter Szeredi,et al.  Scheduling Or-parallelism in Aurora: The Manchester Scheduler , 1989, International Conference on Logic Programming.

[6]  Manuel Eduardo Correia,et al.  DAOS - Scalable And-Or Parallelism , 1999, Euro-Par.

[7]  Mats Carlsson On the Efficiency of Optimising Shallow Backtracking in Compiled Prolog , 1989, ICLP.

[8]  Evan Tick,et al.  Parallel logic programming , 1991, Logic programming.

[9]  James B. Rothnie Kendall Square Research Introduction to the KSR1 , 1992, Supercomputer.

[10]  Roland Karlsson,et al.  A High Performance OR-parallel Prolog System , 1992 .

[11]  David H. D. Warren,et al.  The SRI Model for Or-Parallel Execution of Prolog: Abstract Design and Implementation Issues , 1987, SLP.

[12]  Rong Yang,et al.  Performance of the Compiler-Based Andorra-I System , 1993, ICLP.

[13]  Evan Tick,et al.  Memory performance of Prolog architectures , 1987, The Kluwer international series in engineering and computer science.

[14]  Paul Watson,et al.  The EDS Parallel Relational Database System , 1991, PRISMA Workshop.

[15]  Khayri A. M. Ali,et al.  The Muse Or-Parallel Prolog Model and its Performance , 1990, NACLP.

[16]  Ricardo Bianchini,et al.  Evaluating the impact of coherence protocols on parallel logic programming systems , 1997, PDP.

[17]  Fernando M. A. Silva Initial Performance of Dorpp: an Or-Parallel Prolog System for a Distributed Shared Memory Architecture , 1993, ICLP Workshop on Concurrent, Distributed & Parallel Implementations of Logic Programming Systems.

[18]  Shyam Mudambi Performances of Aurora on NUMA Machines , 1991, ICLP.

[19]  Paul Hudak,et al.  Memory coherence in shared virtual memory systems , 1989, TOCS.

[20]  Péter Szeredi Performance Analysis of the Aurora Or-Parallel Prolog System , 1989, NACLP.

[21]  Alan L. Cox,et al.  TreadMarks: Distributed Shared Memory on Standard Workstations and Operating Systems , 1994, USENIX Winter.

[22]  Khayri A. M. Ali,et al.  Performance of Muse on the BBN Butterfly TC2000 , 1991, PARLE.

[23]  Rong Yang,et al.  Andorra I: a parallel Prolog system that transparently exploits both And-and or-parallelism , 1991, PPOPP '91.

[24]  Paul Townsend,et al.  EDS Hardware Architecture , 1990, CONPAR.