Conference Paper

Pipelined OR-Parallelism Architecture for Parallel Execution of Prolog.

To read the full-text of this research, you can request a copy directly from the authors.


This paper describes a parallel architecture to implement PROLOG. The architecture considered here takes advantage of the OR-parallelism inherent in the language. In usual OR-parallelism architecture, multiprocessors are used to work on a relation of the database at the same time. In the pipeline OR-parallelism, a relation of the database is processed by only one of the multiprocessors at one time. As soon as a solution is found, the resolution goes forward and works on the goal down the goal tree. A hardware model is derived based on the concept and simulation studies were carried out for different numbers of processor configurations. It has been found that from the results of the simulation optimum processor configurations can be derived to meet the cost performance requirements.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

ResearchGate has not been able to resolve any citations for this publication.
Full-text available
DADO is a parallel, tree-structured machine designed to provide significant performance improvements in the execution of large expert systems implemented in production system form. A full-scale version of the DADO machine would comprise a large (on the order of a hundred thousand) set of processing elements (PEs), each containing its own processor, a small amount (16K bytes, in the current prototype design) of local random access memory, and a specified I/O switch. The PEs are interconnected to form a complete binary tree. The authors describe the application domain of the DADO machine and the rationale for its design. They then focus on the machine architecture and detail the hardware design of a moderately large prototype, comprising 1023 microprocessors, currently under development. They conclude with encouraging performance statistics.
Logic programming is expected to make knowledge information processing feasible. However, conventional Prolog systems lack both processing power and flexibility for solving large problems. To overcome these limitations, an approach is developed in which natural execution features of logic programs can be represented using Proof Diagrams. AND/ OR parallel processing based on a goal-rewriting model is examined. Then the abstract architecture of a highly parallel inference engine (PIE) is described. PIE makes it possible to achieve logic/control separation in machine architecture. The architecture proposed here is discussed from the viewpoint of its high degree of parallelism and flexibility in problem solving in comparison with other approaches.
Logic programming provides new ways of solving problems by computer, and offers opportunities for concurrent processing. The declarative style of logic programming is contrasted with the imperative style of conventional programming languages. A simple example of a logic network is used to draw out the distinction, and is followed by a review of the corresponding execution sequence. The operations of variable binding and unification are discussed in detail. The Syracuse unification machine, a coprocessor for a logic programming system, has been designed to carry out these operations efficiently with the aid of concurrent processing units and content-addressable memory.
Implementing Parallel Prolog on a Multiprocessor machine
  • N Tamura
  • Y Daneda
A Pipelined-Parallel execution Study of Prolog Programs
  • Wu
  • Chih-Pin