Skip to main content

KLIC: A portable parallel implementation of a concurrent logic programming language

  • Systems
  • Conference paper
  • First Online:
Book cover Parallel Symbolic Languages and Systems (PSLS 1995)

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

Included in the following conference series:

  • 149 Accesses

Abstract

This paper gives an overview of KLIC, a portable parallel implementation of a concurrent logic programming language KL1. Its portability is realized by the compilation scheme using the language C as an intermediate language and its object-oriented system extension framework called “generic objects,” that allows realization of different communication schemes on exactly the same sequential kernel implementation.

Two completely different parallel implementations of KLIC have been actually built using this framework, one based on shared memory and the other on message passing. Both have exactly the same sequential kernel, which has competent sequential performance. Interprocessor communication is realized in an object-oriented manner through “generic objects” which encapsulates implementation details.

KLIC has been ported to many different systems, including several multiprocessor systems and systems consisting of network-connected workstations. Several experimental parallel application software systems run on these implementations.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Carlsson, J. Widén, J. Andersson, S. Andersson, K. Brootz, H. Nilsson, and T. Sjölaad. SICStus Prolog User's Manual, 1993.

    Google Scholar 

  2. T. Chikayama, H. Sato, and T. Miyazaki. Overview of the parallel inference machine operating system (PIMOS). In Proceedings of FGCS'88, pages 230–251, Tokyo, Japan, 1988.

    Google Scholar 

  3. T. Chikayama, T. Fujise and D. Sekita. A portable and efficient implementation of KL1. In Proceedings of PLILP'94, pages 25–39, Springer-Verlag, Berlin, 1994.

    Google Scholar 

  4. A. Goto, M. Sato, K. Nakajima, K. Taki, and A. Matsumoto. Overview of the parallel inference machine architecture (PIM). In Proceedings of FGCS'88, Tokyo, Japan, 1988.

    Google Scholar 

  5. D. Gudeman, K. De Bosschere, and S. K. Debray. jc: an efficient and portable sequential implementation of Janus. In Proceedings of the Joint International Conference and Symposium on Logic Programming, The MIT Press, 1992.

    Google Scholar 

  6. R. C. Haygood. Aquarius Prolog User Manual, 1993.

    Google Scholar 

  7. S. Janson, J. Montelius, K. Boortz, P. Brand, B. Carlson, R. C. Haygood, B. Danielsson, and S. Haridi. AGENTS user manual. SICS technical report, Swedish Institute of Computer Science, 1994.

    Google Scholar 

  8. N. Ichiyoshi, M. Morita, and Takashi Chikayama. A shared-memory parallel extension of KLIC and its garbage collection. in Proceedings of Workshop on Parllel Logic Programming attached to the International Symposium on Fifth Generation Computer Sytems 1994. ICOT, December 1994.

    Google Scholar 

  9. H. Murao and T. Fujise. Modular algorithm for sparce multivariate polynomial interpolation and its parallel implementation. In Proceedings of PASCO'94, pages 304–315, 1994.

    Google Scholar 

  10. K. Nakajima, Y. Inamura, N. Ichiyoshi, K. Rokusawa and T. Chikayama. Distributed implementation of KL1 on the Multi-PSI/V2. in Proceedings of the Sixth International Conference on Logic Programming, 1989.

    Google Scholar 

  11. K. Rokusawa, A. Nakase, and T. Chikayama. Distributed memory implementation of KLIC. New Generation Computing, 14(3), May 1996, to appear.

    Google Scholar 

  12. Y. Takeda, H. Nakashima, K. Masuda, T. Chikayama, and K. Taki. A load balancing mechanism for large scale multiprocessor systems and its implementation. In Proceedings of FGCS'88, Tokyo, Japan, 1988. Also in New Generation Computing 7–2, 3 (1990), pp. 179–195.

    Google Scholar 

  13. K. Ueda and T. Chikayama. Design of the kernel language for the parallel inference machine. The Computer Journal, 33(6):494–500, December 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Takayasu Ito Robert H. Halstead Jr. Christian Queinnec

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Chikayama, T. (1996). KLIC: A portable parallel implementation of a concurrent logic programming language. In: Ito, T., Halstead, R.H., Queinnec, C. (eds) Parallel Symbolic Languages and Systems. PSLS 1995. Lecture Notes in Computer Science, vol 1068. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0023068

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61143-1

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics