Skip to main content

Exploiting recursion-parallelism in Prolog

  • Paper Sessions
  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 694))

Abstract

We exploit parallelism across recursion levels in a deterministic subset of Prolog. The implementation extends a convential Prolog machine with support for data sharing and process managment. Extensive global dataflow analysis is employed to facilitate parallelization. Promising performance figures, showing high parallel efficiency and low overhead for parallelization, have been obtained on a 24 processor shared-memory multiprocessor.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. G. Bell, Ultracomputers: a Teraflop before its time, Comm. ACM, Vol. 35, No. 8, 1992.

    Google Scholar 

  2. J. Bevemyr, A Recursion-Parallel Prolog Engine, PhL Thesis, Computing Science Department, Uppsala University, 1993.

    Google Scholar 

  3. J. Bevemyr, T. Lindgren & H. Millroth, Reform Prolog: The Language and its Implementation, to appear in: Proc. 10th Int. Conf. Logic Programming, MIT Press, 1993.

    Google Scholar 

  4. T. Lindgren, The Compilation and Execution of Recursion-Parallel Prolog on Shared Memory Multiprocessors, PhL Thesis, Computing Science Department, Uppsala University, May, 1993 (expected).

    Google Scholar 

  5. S.K. Debray & D.S. Warren, Automatic Mode Inference for Logic programs, J. Logic Programming, Vol. 5, No. 3, 1988.

    Google Scholar 

  6. H. Millroth, Reforming Compilation of Logic Programs, Proc. Int. Symp. Logic Programming, San Diego, Calif., MIT Press, 1991.

    Google Scholar 

  7. L. Naish, Parallelizing NU-Prolog, Proc. 5th Int. Conf. Symp. Logic Programming, MIT Press, 1988.

    Google Scholar 

  8. D. Palmer and L. Naish, NUA-Prolog: An Extension to the WAM for Parallel Andorra, Proc. 8th Int. Conf. Logic Programming, Paris, MIT Press, 1991.

    Google Scholar 

  9. V. Santos Costa, D.H.D. Warren and R. Yang, The Andorra-I Engine: A Parallel Implementation of the Basic Andorra Model, Proc. 8th Int. Conf. Logic Programming, Paris, MIT Press, 1991.

    Google Scholar 

  10. P. Tang and P.-C. Yew, Processor Self-Scheduling for Multiple Nested Parallel Loops, Proc. 1986 Int. Conf. Parallel Processing, 1986.

    Google Scholar 

  11. S.-Å. Tärnlund, Reform, report, Computing Science Dept., Uppsala University, 1991.

    Google Scholar 

  12. D.H.D. Warren, An Abstract Prolog Instruction Set, SRI Tech. Note 309, SRI International, Menlo Park, Calif., 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Arndt Bode Mike Reeve Gottfried Wolf

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bevemyr, J., Lindgren, T., Millroth, H. (1993). Exploiting recursion-parallelism in Prolog. In: Bode, A., Reeve, M., Wolf, G. (eds) PARLE '93 Parallel Architectures and Languages Europe. PARLE 1993. Lecture Notes in Computer Science, vol 694. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56891-3_22

Download citation

  • DOI: https://doi.org/10.1007/3-540-56891-3_22

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56891-9

  • Online ISBN: 978-3-540-47779-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics