Report Number: CS-TR-87-1166
Institution: Stanford University, Department of Computer Science
Title: Parallel Execlltion of OPSS in QLISP
Author: Okuna, H. G.
Author: Gupta, A.
Date: June 1987
Abstract: Production systems (or rule-based systems) are widely used
for the development of expert systems. To speed-up the
execution of production systems, a number of different
approaches are being taken, a majority of them being based on
the use of parallelism. In this paper, we explore the issues
involved in the parallel implementation of OPS5 (a widely
used production-system language) in QLISP (a parallel dialect
of Lisp proposed by John McCarthy and Richard Gabriel). This
paper shows that QLISP can easily encode most sources of
parallelism in OPS5 that have been previously discussed in
literature. This is significant because the OPS5 interpreter
is the first large program to be encoded in QLISP, and as a
result, this is the first practical demonstration of the
expressive power of QLISP. The paper also lists the most
commonly used QLISP constructs in the parallel implementation
(and the contexts in which they are used), which serve as a
hint to the QLISP implementor about what to optimize. Also
discussed is the exploitation of speculative parallelism in
RHS-evaluation for OPSS. This has not been previously
discussed in the literature.
http://i.stanford.edu/pub/cstr/reports/cs/tr/87/1166/CS-TR-87-1166.pdf