Detection and optimization of functional computations in Prolog
Proceedings on Third international conference on logic programming
Parallel logic programming in PARLOG: the language and its implementation
Parallel logic programming in PARLOG: the language and its implementation
Efficient dataflow analysis of logic programs
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Prolog and its performance: exploiting independent and-parallelism
Logic programming
Task granularity analysis in logic programs
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
A Chare kernel implementation of a parallel Prolog compiler
PPOPP '90 Proceedings of the second ACM SIGPLAN symposium on Principles & practice of parallel programming
PRISM: a testbed for parallel control
Parallel algorithms for machine intelligence and vision
The benefits of global dataflow analysis for an optimizing Prolog compiler
Proceedings of the 1990 North American conference on Logic programming
The Muse Or-parallel Prolog model and its performance
Proceedings of the 1990 North American conference on Logic programming
Machine independent “and” and “or” parallel execution of logic programs
Machine independent “and” and “or” parallel execution of logic programs
A join algorithm for combining AND parallel solutions in AND/OR parallel systems
International Journal of Parallel Programming
Machine Independent AND and OR Parallel Execution of Logic Programs: Part I-The Binding Environment
IEEE Transactions on Parallel and Distributed Systems
An abstract machine based execution model for computer architecture design and efficient implementation of logic programs in parallel
Controlling the execution of logic programs
Controlling the execution of logic programs
International Journal of High Performance Computing Applications
Hi-index | 0.00 |
In pt.I, we presented a binding environment for the ANDand OR parallel execution of logic programs. This environment was instrumental inrendering a compiler for the AND and OR parallel execution of logic programs machineindependent. In this paper, we describe a compiler based on the Reduce-OR processmodel (ROPM) for the parallel execution of Prolog programs, and provide performance of the compiler on five parallel machines: the Encore Multimax, the Sequent Symmetry, the NCUBE 2, the Intel i860 hypercube and a network of Sun workstations. The compiler is part of a machine independent parallel Prolog development system built on top of a runtime environment for parallel programming called the Chare kernel, and runs unchanged on these multiprocessors. In keeping with the objectives behind the ROPM, the compilersupports both on and independent AND parallelism in Prolog programs and is suitable forexecution on both shared and nonshared memory machines. We discuss the performanceof the Prolog compiler in some detail and describe how grain size can be used to deliverperformance that is within 10% of the underlying sequential Prolog compiler on oneprocessor, and scale linearly with increasing number of processors on problems exhibiting sufficient parallelism. The loose coupling between parallel and sequential components makes it possible to use the best available sequential compiler as the sequential component of our compiler.