Skip to main content

LEMMA: A distributed shared memory with global and local garbage collection

  • Conference paper
  • First Online:
Memory Management (IWMM 1995)

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

Included in the following conference series:

Abstract

Standard ML is an established programming language with a well-understood semantics. Several projects have enriched the language with primitives or constructions for concurrency, among them Poly/ML and LCS. We describe first the previous run-time systems for Poly/ML and LCS and then the development of a new memory management system, LEMMA, which allows parallel programs to be run on networks of workstations. LEMMA provides a distributed shared virtual memory with global garbage collection, and in addition allows each machine to run independent local collections. LEMMA is written as a separate layer from the run-time systems of Poly/ML and LCS and is independent of the object representations and process management schemes used in the languages. We give a description of LEMMA and the results of the execution of some preliminary test programs.

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.

Similar content being viewed by others

References

  1. Andrew W. Appel, John R. Ellis, and Kai Li. Real-time concurrent collection on stock multiprocessors. In ACM SIGPLAN'88 Conference on Programming Language Design and Implementation, pages 11–20, June 1988.

    Google Scholar 

  2. Bernard Berthomieu and Thierry Le Sergent. Programming with behaviors in an ML framework: the syntax and semantics of LCS In Programming Languages and Systems — ESOP'94, LNCS 788, pages 89–104, April 1994

    Google Scholar 

  3. John B. Carter, John K. Bennet, and Willy Zwaenepoel. Implementation and performance of Munin. In Proceedings of the Thirteenth ACM Symposium on Operating Systems Principles, pages 152–164, October 1991.

    Google Scholar 

  4. Damien Doligez and Xavier Leroy. A concurrent, generational garbage collector for a multithreaded implementation of ML. In Proc. of the 20th Annual ACM SIGPLAN-SIGACT Symp. on Principles of Programming Languages, pages 113–123, Charleston SC (USA), January 1993.

    Google Scholar 

  5. Paulo Ferreira and Marc Shapiro. Garbage Collection and DSM Consistency. Proceedings of the First Symposium on Operating Systems Design and Implementation (OSDI), Monterey, California, USA, November 1994.

    Google Scholar 

  6. Alessandro Giacalone, Prateek Mishra, and Sanjiva Prasad. Facile: A symmetric integration of concurrent and functional programming. International Journal of Parallel Programming, pages 121–160, 1989.

    Google Scholar 

  7. Robert H. Halstead Jr. Implementation of multilisp: Lisp on a multiprocessor. In 1984 ACM Symposium on LISP and Functional Programming, pages 9–17, August 1984.

    Google Scholar 

  8. Thierry Le Sergent and Bernard Berthomieu. Incremental Multi-threaded Garbage Collection on Virtually Shared Memory Architectures In Memory Management — IWMM'92, LNCS 637, pages 179–199, September 1992.

    Google Scholar 

  9. Thierry Le Sergent. Méthodes d'exécution, et machines virtuelles parallèles pour l'implantation distribuée du langage de programmation parallèle LCS. Thèse de doctorat de l'Université Paul Sabatier, Toulouse, Février 1993.

    Google Scholar 

  10. Kai Li and Paul Hudak. Memory coherence in shared virtual memory systems. ACM Transactions on Computer Systems, 7(4):321–359, November 1989.

    Google Scholar 

  11. Thierry Le Sergent and David C. J. Matthews. Actaptive selection of protocols for strict coherency in distributed shared memory. Report ECS-LFCS-94-306, LFCS, September 1994.

    Google Scholar 

  12. David C. J. Matthews. Papers on Poly/ML. Technical Report 161, Computer Laboratory, University of Cambridge, 1989

    Google Scholar 

  13. David C. J Matthews. A distributed concurrent implementation of Standard ML. In Proceedings of EurOpen Autumn 1991 Conference, Budapest, Hungary, September 1991. Also in LFCS Report Series ECS-LFCS-91-174.

    Google Scholar 

  14. David C. J. Matthews and Thierry Le Sergent. LEMMA Interface Definition. Report ECS-LFCS-95-316, LFCS, January 1995.

    Google Scholar 

  15. Robin Milner, Mads Tofte, and Robert Harper. The Definition of Standard ML. The MIT Press, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Henry G. Baler

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag

About this paper

Cite this paper

Matthews, D.C.J., Le Sergent, T. (1995). LEMMA: A distributed shared memory with global and local garbage collection. In: Baler, H.G. (eds) Memory Management. IWMM 1995. Lecture Notes in Computer Science, vol 986. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60368-9_30

Download citation

  • DOI: https://doi.org/10.1007/3-540-60368-9_30

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-45511-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics