Parallel implementation of OPS5 on the encore multiprocessor: Results and analysis

  • Anoop Gupta
  • Milind Tambe
  • Dirk Kalp
  • Charles Forgy
  • Allen Newell


Until now, most results reported for parallelism in production systems (rulebased systems) have been simulation results-very few real parallel implementations exist. In this paper, we present results from our parallel implementation of OPS5 on the Encore multiprocessor. The implementation exploits very finegrained parallelism to achieve significant speed-ups. For one of the applications, we achieve 12.4 fold speed-up using 13 processes. Our implementation is also distinct from other parallel implementations in that we parallelize a highly optimized C-based implementation of OPS5. Running on a uniprocessor, our C-based implementation is 10–20 times faster than the standard lisp implementation distributed by Carnegie Mellon University. In addition to presenting the performance numbers, the paper discusses the details of the parallel implementation-the data structures used, the amount of contention observed for shared data structures, and the techniques used to reduce such contention.

Key Words

Production Systems Rule-based Systems OPS5 Parallel Processing Fine-Grained Parallelism AI Architectures 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Charles L. Forgy,The OPS83 Report, Technical Report CMU-CS-84-133, Carnegie-Mellon University. Pittsburgh, (May, 1984).Google Scholar
  2. 2.
    Theodore, F. Lehr, The Implementation of a Production System Machine, InHawaii International Conference on System Sciences (January 1986).Google Scholar
  3. 3.
    P. L. Butler, J. D. Allen, and D. W. Bouldin, Parallel Architecture for OPS5, InProceedings of the Fifteenth International Symposium on Computer Architecture, pp. 452–457 (1988).Google Scholar
  4. 4.
    Anoop Gupta, Charles Forgy, Allen Newell, and Robert Wedig, Parallel Algorithms and Architectures for Production Systems, In13th International Symposium on Computer Architecture. (June 1986)Google Scholar
  5. 5.
    Bruce K. Hillyer and David E. Shaw, Execution of OPS5 Production Systems on a Massively Parallel Machine,Journal of Parallel and Distributed Computing 3:236–268 (1986).Google Scholar
  6. 6.
    Daniel P. Miranker,TREAT: A New and Efficient Algorithm for AI Production Systems, PhD thesis, Columbia University (1987).Google Scholar
  7. 7.
    Edward J. Krall and Patrick F. McGehearty, A Case Study of Parallel Execution of a Rule-Based Expert System,International Journal of Parallel Programming 15(1):5–32 (1986).Google Scholar
  8. 8.
    Kemal Oflazer, Parallel Execution of Production Systems, InInternational Conference on Parallel Processing. IEEE (August 1984).Google Scholar
  9. 9.
    Raja Ramnarayan, Gerhard Zimmerman, and Stanley Krolikoski, PESA-1: A Parallel Architecture for OPS5 Production Systems, InHawaii International Conference on System Sciences (January 1986).Google Scholar
  10. 10.
    M. F. M. Tenorio and D. I. Moldovan, Mapping Production Systems into Multi-processors, InInternational Conference on Parallel Processing IEEE (1985).Google Scholar
  11. 11.
    Lee Brownston, Robert Farell, Elaine Kant, and Nancy Martin,Programming Expert Systems in OPS5: An Introduction to Rule-Based Programming, Addison-Wesley (1985).Google Scholar
  12. 12.
    Pandurang Nayak, Anoop Gupta, and Paul Rosenbloom, Comparison of the Rete and Treat Production Matchers for SOAR, InNational Conference on Artificial Intelligence, AAAI-88.Google Scholar
  13. 13.
    Anoop Gupta,Parallelism in Production Systems, PhD thesis, Carnegie-Mellon University, (March 1986); also available from Morgan Kaufmann Publishers Inc.Google Scholar
  14. 14.
    Peter M. Kogge, An Architectural Trail to Threaded-Code Systems,Computer (March 1982).Google Scholar
  15. 15.
    Rostam Joobbani and Daniel P. Siewiorek, Weaver: A Knowledge-Based Routing Expert, InDesign Automation Conference (1985).Google Scholar
  16. 16.
    Milind Tambe, Dirk Kalp, Anoop Gupta, Charles Forgy, Brian Milnes, and Allen Newell, Soar/PSM-E: Investigating Match Parallelism in a Learning Production System, InSymposium on Parallel Programming: Experience with Applications, Languages, and Systems, pp. 146–161 (July 1988).Google Scholar
  17. 17.
    Anoop Gupta and Milind Tambe, Suitability of Message Passing Computers for Implementing Production Systems, InNational Conference on Artificial Intelligence, AAAI-88.Google Scholar
  18. 18.
    John E. Laird, Allen Newell, and Paul S. Rosenbloom. Soar: An Architecture for General Intelligence,Artificial Intelligence 33:1–64 (1987).Google Scholar

Copyright information

© Plenum Publishing Corporation 1988

Authors and Affiliations

  • Anoop Gupta
    • 1
  • Milind Tambe
    • 2
  • Dirk Kalp
    • 2
  • Charles Forgy
    • 2
  • Allen Newell
    • 2
  1. 1.Department of Computer ScienceStanford UniversityStanford
  2. 2.Department of Computer ScienceCarnegie Mellon UniversityPittsburgh

Personalised recommendations