The Community for Technology Leaders
Green Image
<p>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.</p>
Index Termsparallel programming; logic programming; multiprocessing systems; program compilers;parallel execution; logic programs; compiler; Reduce-OR process model; performance;Encore Multimax; Sequent Symmetry; NCUBE 2; Intel i860 hypercube; Sun workstations; parallel programming; Chare kernel; scale linearly
L.V. Kalé, B. Ramkumar, "Machine Independent AND and OR Parallel Execution of Logic Programs: Part II-Compiled Execution", IEEE Transactions on Parallel & Distributed Systems, vol. 5, no. , pp. 181-192, February 1994, doi:10.1109/71.265945
108 ms
(Ver )