Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

A new external reference management and distributed unification for KL1

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

Abstract

This paper describes a new external reference management scheme for KL1, a committed choice logic programming language based on GHC. The significance of the new scheme is that it realizes incremental inter-processor garbage collection. Previous distributed implementations of committed choice languages had not seriously addressed inter-processor garbage collection.

Incremental inter-precessor garbage collection is realized by the Weighted Export Counting (WEC). It is a first attempt to use the weighted reference counting technique in logic programming language implementation, and is also new in that it has introduced export and import tables for making independent local garbage collection possible and reducing the number of inter-processor read requests.

The problems with exhaustion of reference counts and indirect exportation are discussed. Since the binding order rule adopted in our previous implementation for avoiding creation of reference loops is insufficient in the presence of indirect exportation, a new binding order rule is introduced. We prove that avoidance of reference loops is guaranteed and also prove that the unification procedure always terminates for non-circular structures.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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

Instant access to the full article PDF.

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

References

  1. Bevan, D. I., “Distributed garbage collection using reference counting,” inProceedings of Parallel Architectures and Languages Europe, pp. 176–187, June, 1987.

  2. Chikayama, T. and Kimura, Y., “Multiple reference management in Flat GHC”, inProceedings of the Fourth International Conference on Logic Programming, pp. 276–293, 1987.

  3. Clark, K. L. and Gregory, S., “PARLOG: parallel programming in logic”,ACM Transactions on Programming Languages and Systems, 8(1), pp. 1–49, 1986.

    Article  MATH  Google Scholar 

  4. Foster, I., “Parlog as a System Programming Language”,Ph.D Thesis, Imperial College of Science and Technology, March, 1988, to be published by Prentice Hall.

  5. Foster, I., “Parallel implementation of parlog”, inProceedings of the 1988 International Conference on Parallel Processing, Vol. II Software, pp. 9–16, 1988.

  6. Foster, I., “An asynchronous parallel garbage collector for a single-assignment language”, to appear asImperial College Technical Report, 1988.

  7. Goto, A., “Parallel inference machine research in FGCS project”, inProceedings of US-Japan AI Symposium 87, pp. 21–36, 1987.

  8. Goto, A., Kimura, Y., Nakagawa, T. and Chikayama, T., “Lazy reference counting—an incremental garbage collection method for parallel inference machines”, inProceedings of the Fifth International Conference and Symposium on Logic Programming, pp. 1241–1256, 1988.

  9. Ichiyoshi, N., Miyazaki, T. and Taki, K., “A distributed implementation of Flat GHC on the Multi-PSI”, inProceedings of the Fourth International Conference on Logic Programming, pp. 257–275, 1987.

  10. Nakajima, K., “Piling GC—Efficient Garbage Collection for AI Languages”,ICOT Technical Report, TR-354, 1988. Also to appear inProceeding of the IFIP WG 10. 3 Working Conference on Parallel Processing, 1988.

  11. Nakashima, H. and Nakajima, K., “Hardware architecture of the sequential inference machine: PSI-II”, inProceedings of 1987 Symposium on Logic Programming, pp. 104–113, September, 1987.

  12. Rokusawa, K., Ichiyoshi, N., Chikayama, T. and Nakashima, H., “An efficient termination detection and abortion algorithm for distributed processing systems”, inProceedings of the 1988 International Conference on Parallel Processing, Vol. I Architecture, pp. 18–22, 1988.

  13. Shapiro, E., “Systolic programming: A paradigm of parallel programming”, inProceeding of the International Conference on New Generation Computer Systems 1984, pp. 458–470, 1984.

  14. Shapiro, E., “A Subset of Concurrent Prolog and Its Interpreter”,ICOT Technical Report, TR-003, January, 1983.

  15. Taki, K., “The parallel software research and development tool: Multi-PSI system”, inProceedings of France-Japan Artificial Intelligence and Computer Science Symposium 1986, pp. 365–381, 1986.

  16. Taylor, S., Safra, S. and Shapiro, E., “A parallel implementation of Flat Concurrent Prolog”,International Journal of Parallel Programming, 15(3), pp. 245–275, 1987.

    Article  Google Scholar 

  17. Ueda, K., “Guarded Horn Clauses: A Parallel Logic Programming Language with the Concept of a Guard”,ICOT Technical Report, TR-208, 1986.

  18. Watson, P. and Watson, I., “An efficient garbage collection scheme for parallel computer architectures”, inProceedings of Parallel Architectures and Languages Europe, pp. 432–443, June, 1987.

Download references

Author information

Authors and Affiliations

Authors

About this article

Cite this article

Ichiyoshi, N., Rokusawa, K., Nakajima, K. et al. A new external reference management and distributed unification for KL1. NGCO 7, 159–177 (1990). https://doi.org/10.1007/BF03037204

Download citation

  • Received:

  • Issue Date:

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

Keywords