Skip to main content
Log in

The Aurora or-parallel Prolog system

  • Special Issue
  • Parallel Machine Architecture
  • Published:
New Generation Computing Aims and scope Submit manuscript

Abstract

Aurora is a prototype or-parallel implementation of the full Prolog language for shared-memory multiprocessors, developed as part of an informal research collaboration known as the “Gigalips Project”. It currently runs on Sequent and Encore machines. It has been constructed by adapting Sicstus Prolog, a fast, portable, sequential Prolog system. The techniques for constructing a portable multiprocessor version follow those pioneered in a predecessor system, ANL-WAM. The SRI model was adopted as the means to extend the Sicstus Prolog engine for or-parallel operation. We describe the design and main implementation features of the current Aurora system, and present some experimental results. For a range of benchmarks, Aurora on a 20-processor Sequent Symmetry is 4 to 7 times faster than Quintus Prolog on a Sun 3/75. Good performance is also reported on some large-scale Prolog applications.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Ali, K. “Or-Parallel Execution of Prolog on BC-Machine,”SICS Research Report, Swedish Institute of Computer Science, 1987.

  2. Butler, R., Disz, T., Lusk, E., Olson, R., Overbeek, R., and Stevens, R., “Scheduling Or-parallelism: an Argonne perspective,” inProceedings of the Fifth International Conference on Logic Programming, MIT Press, pp. 1590–1605, August, 1988.

  3. Calderwood, A., “Aurora—description of scheduler interfaces,”Internal Report, Gigalips Project, January, 1988.

  4. Calderwood, A. and Szeredi, P., “Scheduling or-parallelism in Aurora—the Manchester scheduler,” inProceedings of the Sixth International Conference on Logic Programming, MIT Press, pp. 419–435, June, 1989.

  5. Carlsson, M., “Internals of Sicstus Prolog version 0.6,”Internal Report, Gigalips Project, November, 1987.

  6. Carlsson, M. and Widén. J., “SICStus Prolog User’s Manual,”SICS Research Report, R88007B, October, 1988.

  7. Ciepielewski, A. and Haridi, S., “A formal model for or-parallel execution of logic programs,” inIFIP 83 Conference, North Holland, pp. 299–305, 1983.

  8. Ciepielewski, A., Haridi, S. and Hausman, B., “Initial evaluation of a virtual machine for or-parallel execution of logic programs,” inIFIP-TC10 Working Conference on Fifth Generation Computer Architecture, Manchester, U. K., 1985.

  9. Clocksin, W., “Principles of the DelPhi parallel inference machine,”Computer Journal, Vol. 30, No. 5, pp. 386–392, 1987.

    Google Scholar 

  10. DeGroot, D., “Restricted and-parallelism,” inInternational Conference on Fifth Generation Computer Systems 1984, Hideo Aiso ed., Institute for New Generation Computing, Tokyo, pp. 471–478, 1984.

    Google Scholar 

  11. Disz, T. and Lusk, E., “A graphical tool for observing the behavior of parallel logic programs,” inProceedings of the 1987 Symposium on Logic Programming, pp. 46–53, 1987.

  12. Disz, T., lusk, E. and Overbeek, R., “Experiments with OR-parallel logic programs,” inProceedings of the Fourth International Conference on Logic Programming, MIT Press, pp. 576–600, 1987.

  13. Gregory, S.,Parallel Logic Programming in Parlog, Addison-Wesley, 1987.

  14. Haridi, S. and Brand, P., “Andorra Prolog—an integration of Prolog and committed choice languages,” inInternational Conference on Fifth Generation Computer Systems 1988, ICOT, 1988.

  15. Hausman, B., “Pruning and scheduling speculative work in or-parallel Prolog,” inPARLE 89, Conference on Prallel Architectures and Languages Europe, Springer-Verlag, 1989.

  16. Hausman, B., Ciepielewski, A. and Calderwood, A., “Cut and side-effects in or-parallel Prolog,” inInternational Conference on Fifth Generation Computer Systems 1988, ICOT, 1988.

  17. Hausman, B., Ciepielewski, A. and Haridi, S., “Or-parallel Prolog made efficient on shared memory multiprocessors,” inProceedings of the 1987 Symposium on Logic Programming, pp. 69–79, 1987.

  18. Hermenegildo, M., “An abstract machine for restricted and-parallel execution of logic programs,” inThird International Conference on Logic Programming, London, Springer-Verlag, pp. 25–39, 1986.

  19. Hirschman, L., Hopkins, W. and Smith, R., “Or-parallel speed-up in natural language processing: a case study,” inProceedings of the Fifth International Conference on Logic Programming, MIT Press, pp. 263–279, August, 1988.

  20. Lusk, E. and McFadden, R., “Using automated reasoning tools: a study of the semigroup F2B2,”Semigroup Forum, Vol. 36, No. 1, pp. 75–88, 1987.

    Article  MATH  MathSciNet  Google Scholar 

  21. Ratcliffe, M. “A progress report on PEPSys,”Presentation at the Gigalips Workshop, Manchester, July, 1988.

  22. Shapiro, E. ed.,Concurrent Prolog—Collected Papers, MIT Press, 1987.

  23. Szeredi, P., “Performance analysis of the Aurora or-parallel Prolog system,” inProceedings of the 1989 North American Conference on Logic Programming, pp. 713–734, MIT Press 1989.

  24. Warren, D. H. D., “An Abstract Prolog Instruction Set,”Technical Note, 309, SRI International, 1983.

  25. Warren, D. H. D., “Applied Logic—Its Use and Implementation as a Programming Tool,”Ph. D thesis, Edinburgh University, 1977. Available asTechnical Note, 290, SRI International.

  26. Warren, D. H. D., “Or-parallel execution models of Prolog,” inTAPSOFT’87, The 1987 International Joint Conference on Theory and Practice of Software. Development, Pisa, Italy, Springer-Verlag, pp. 243–259, March, 1987.

  27. Warren, D. H. D., “The SRI model for or-parallel execution of Prolog—abstract design and implementation issues,” inProceedings of the 1987 Symposium on Logic Programming, pp. 92–102, 1987.

  28. Warren, D. H. D. and Haridi, S., “Data Diffusion Machine—a scalable shared virtual memory multiprocessor,” inInternational Conference on Fifth Generation Computer Systems 1988 ICOT, 1988.

  29. Westphal, H., Robert, P., Chassin, J. and Syre, J. C., “The PEPSys model: combining backtracking, and- and or-parallelism,” inThe 1987 Symposium on Logic Programming, San Francisco, California, IEEE, 1987.

    Google Scholar 

  30. Yang, R., “Solving simple substitution ciphers in Andorra- I,” inProceedings of the Sixth International Conference on Logic Programming, MIT Press, pp. 113–128, June, 1989.

Download references

Author information

Authors and Affiliations

Authors

Additional information

The group was previously at: Department of Computer Science, University of Manchester, Manchester M13 9PL, U. K.

On leave from SZKI, Donati u. 35-45, Budapest, Hungary.

About this article

Cite this article

Lusk, E., Butler, R., Disz, T. et al. The Aurora or-parallel Prolog system. NGCO 7, 243–271 (1990). https://doi.org/10.1007/BF03037208

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF03037208

Keywords

Navigation