Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Parallel logic programming for numeric applications

Technical Report ·
OSTI ID:5850969

This paper reports on a series of experiments involving the use of various dialects of parallel logic programming to express and control parallelism. The central goal of these experiments was to explore the possibility of writing numeric code for multiprocessors while expressing the synchronization requirements using logic programming. Three dialects of parallel logic programming are considered: Parlog, Delta-Prolog, and Flat Concurrent Prolog. The experiments involved the formulation of a well-known, highly-parallel algorithm in each of the three languages. In one case (Parlog, semi-manually compiled code for an implementation of an extended Warren Abstract Machine), a comparison is made of the performance of the resulting program with that of the same problem expressed in C, with monitors as the added parallelism construct. Speedups obtained for the C and Parlog versions are presented. The experiments illustrate the effect of granularity size on attainable degrees of parallelism. Based on the limited evidence from these experiments, conclusions are offered on the suitability of logic programming languages for programming multiprocessors. 16 refs., 2 tabs.

Research Organization:
Argonne National Lab., IL (USA)
DOE Contract Number:
W-31109-ENG-38
OSTI ID:
5850969
Report Number(s):
ANL/MCS-TM-72; ON: DE86011004
Country of Publication:
United States
Language:
English

Similar Records

Flat parlog: a basis for comparison
Journal Article · Tue Mar 31 23:00:00 EST 1987 · Int. J. Parallel Program.; (United States) · OSTI ID:7077531

Parallel logic programming in PARLOG: The language and its implementation
Book · Wed Dec 31 23:00:00 EST 1986 · OSTI ID:5768072

Logic simulation on a multiprocessor. Master's thesis
Technical Report · Fri Oct 31 23:00:00 EST 1986 · OSTI ID:6636234