MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  A Systematic Approach to Exploiting Implicit Parallelism in Prolog Using Shared Paged Binding Arrays (1994) [1 citations — 1 self]

Download:
pdf | ps
by Gopal Gupta, V'itor Santos Costa
ftp://ftp.cs.nmsu.edu/pub/.all_papers/hics.ps.Z
Add To MetaCart

Abstract:

Prolog is a practical declarative programming language based on Horn Logic. In this paper we argue that implicit parallelism can be extracted from full Prolog. By full Prolog we mean pure Prolog with extra-logical features such as side-effects, database predicates and cuts. Prolog programs have three main forms of implicit parallelism present in them: or-parallelism, independent andparallelism and dependent and-parallelism. Starting from an or-parallel version of full Prolog, we show how independent and-parallel and dependent and-parallel versions can be systematically derived. We present details of how the environment is represented using Paged Binding Arrays to handle multiple bindings of variables in presence of or-, independent and-, and dependent andparallelism. We also show how extra-logical predicates can be supported in this combined parallel implementation of Prolog. Our approach can be summarized as follows: We begin with an or-parallel implementation of Prolog that uses Binding Arrays for environment representation; we next show how independent and-parallelism can be added to such an implementation by annotating Prolog programs at compile time with conditional graph expressions, and generalizing the binding arrays used for environment

Citations

108 The Muse Or-Parallel Prolog Model and its Performance – Ali, Karlsson - 1990
86 Andorra-I: a parallel Prolog system that transparently exploits both AND- and OR-parallelism – Costa, Yang - 1991
83 Kernel Andorra Prolog and its computation model – Haridi, Janson - 1990
81 Prolog and its Performance: Exploiting Independent And-Parallelism – Hermenegildo, Greene - 1990
66 ACE: And/Or-parallel Copying-based Execution of Logic Programs – Gupta, Hermenegildo, et al. - 1994
63 The SRI Model for Or-Parallel Execution of Prolog---Abstract Design and Implementation Issues – Warren - 1987
51 The Andorra-I engine: A parallel implementation of the basic andorra model – Costa, Warren, et al. - 1991
45 The Andorra-I Preprocessor: Supporting Full Prolog on the Basic Andorra Model – Santos-Costa, Warren, et al. - 1991
44 Extended Andorra Model with implicit control. Talk given at Logic Programming Symposium, Eilat – Warren - 1990
30 Compiled execution of the reduce-or process model on multiprocessors – Ramkumar, Kale - 1989
25 Concurrent Prolog: Collected papers – Shapiro - 1987
20 Efficient prolog memory management for flexible control strategies – Warren - 1984
17 Determination of Variable Dependence Information through Abstract Interpretation – Muthukumar, Hermenegildo - 1989
13 On Criteria for Or-Parallel Execution Models of Logic Programs – Gupta, Jayaraman - 1990
13 The pepsys model: combining backtracking, and- and or-parallelism – Westphal, Robert, et al. - 1987
12 An Abstract Machine for Restricted And Parallel Execution of Logic Programs – Hermenegildo - 1986
10 Compiled And-Or Parallel Execution of Logic Programs – Gupta, Jayaraman - 1989
10 An Abstract Instruction Set for Prolog – Warren - 1983
9 Recomputation based Implementation of And-Or Parallel Prolog – Gupta, Hermenegildo - 1992
9 Optimizing And-Or Parallel Implementations – Gupta, Jayaraman - 1990
7 Cuts and Side-Effects in And-Or Parallel Prolog – Gupta, Costa - 1996
7 The Aurora OR-Prolog System – al - 1990
5 IDIOM: A Model for Integrating Dependent-and, Independent-and and Or-parallelism – Gupta, Costa, et al. - 1991
3 Restricted AND-parallelism", Int'l – DeGroot - 1984
2 An Interpreter for the Extended Andorra Model (Preliminary Report – Gupta, Warren - 1991
1 And-Or Parallel Execution of Prolog based on the Paged Binding Array – Gupta, Costa - 1992