Skip to main content

A survey of distributed garbage collection techniques

  • 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

We present the spectrum of distributed garbage collection techniques. We first describe those reference counting-based techniques and compare them, in particular with respect to resilience to message failures. Reference counting-based techniques are acyclic since they are unable to collect cyclic data structures. We then describe a number of hybrid schemes improving over distributed reference counting algorithms in order to collect cyclic garbage. We then describe tracing-based techniques derived from uniprocessor tracing-based techniques. Finally, we discuss the pros and cons of each technique.

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. K. A. Mohammed Ali. Object-Oriented Storage Management and Garbage Collection in Distributed Processing Systems. PhD thesis, Royal Institute of Technology, Dept. of Computer Systems, Stockholm, Sweden, 1984.

    Google Scholar 

  2. W. Jacobus Bakker, L. Nijman, and Philip C. Treleaven, editors. Parallel Architectures and Languages Europe, number 258, 259 in Lecture Notes in Computer Science, Eindhoven, The Netherlands, June 1987. Springer-Verlag.

    Google Scholar 

  3. David I. Bevan. Distributed Garbage Collection Using Reference Counting. In Bakker et al. [1987], pages 117–187.

    Google Scholar 

  4. A. Birrell, D. Evers, G. Nelson, S. Owicki, and T. Wobber. Distributed garbage collection for network objects. Technical Report 116, Digital Equipment Corporation Systems Research Center, December 1993.

    Google Scholar 

  5. A. Birrell, G. Nelson, S. Owicki, and T. Wobber. Network objects. Technical Report 115, Digital Equipment Corporation Systems Research Center, February 1994.

    Google Scholar 

  6. Peter B. Bishop. Computer Systems with a Very Large Address Space and Garbage Collection. PhD thesis, Massachusetts Institute of Technology Laboratory for Computer Science, May 1977. Technical report MIT/LCS/TR-178.

    Google Scholar 

  7. L. Cardelli, J. Donahue, L. Glassman, M. Jordan, B. Kalsow, and G. Nelson. Modula-3 report. Technical report, Digital Systems Research Center and Olivetti Research Center, Palo Alto, CA, 1988.

    Google Scholar 

  8. H. Corporaal, T. Veldman, and A. J. van de Goor. An Efficient, Reference Weightbased Garbage Collection Method for Distributed Systems. In Proceedings of the PARBASE-90 Conference, pages 463–465. IEEE, 1990.

    Google Scholar 

  9. Peter Dickman. Distributed Object Management in a Non-Small Graph of Autonomous Networks With Few Failures. PhD thesis, University of Cambridge, United Kingdom, September 1991.

    Google Scholar 

  10. Peter Dickman. Optimising Weighted Reference Counts for Scalable Fault-Tolerant Distributed Object-Support Systems. Submitted for HICSS 26, June 1992.

    Google Scholar 

  11. Paulo Ferreira and Marc Shapiro. Garbage collection and DSM consistency. In Proc. of the First Symposium on Operating Systems Design and Implementation (OSDI), pages 229–241. ACM, November 1994.

    Google Scholar 

  12. Robert Joseph Fowler. The complexity of using forwarding addresses for decentralized object finding. In Proc. 5th Annual ACM Symp. on Principles of Distributed Computing, pages 108–120, Alberta, Canada, August 1986.

    Google Scholar 

  13. Benjamin Goldberg. Generational reference counting: A reduced-communication distributed storage reclamation scheme. In Proceedings of the 1989 SIGPLAN Conference on Programming Language Design and Implementation, pages 313–320, Portland, Oregon, June 1989. ACM Press. Published as SIGPLAN Notices 24(7), July 1989.

    Google Scholar 

  14. John Hughes. A distributed garbage collection algorithm. In Jean-Pierre Jouannaud, editor, ACM Conference on Functional Programming Languages and Computer Architecture, number 201 in Lecture Notes in Computer Science, pages 256–272, Nancy, France, Software Practice and Experience 1985. Springer-Verlag.

    Google Scholar 

  15. Niels Christian Juul and Eric Jul. Comprehensive and robust garbage collection in a distributed system. In Yves Bekkers and Jacques Cohen, editors, International Workshop on Memory Management, number 637 in Lecture Notes in Computer Science, St. Malo, France, September 1992. Springer-Verlag.

    Google Scholar 

  16. Brian Kernighan and Dennis Ritchie. The C Programming Language. Prentice-Hall, Englewood-Cliffs, N.J., 1978.

    Google Scholar 

  17. Rivka Ladin and Barbara Liskov. Garbage collection of a distributed heap. In Principles of Distributed Computing, pages 708–715, 1992.

    Google Scholar 

  18. Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 21(7):558–565, July 1978.

    Article  Google Scholar 

  19. Bernard Lang, Christian Queinnec, and José Piquer. Garbage collecting the world. In Conference Record of the Nineteenth Annual A CM Symposium on Principles of Programming Languages, pages 39–50, Albuquerque, New Mexico (USA), January 1992. ACM Press.

    Google Scholar 

  20. Rafael D. Lins and Richard E. Jones. Cyclic weighted reference counting. Technical Report 95, University of Kent, Canterbury, United Kingdom, December 1991.

    Google Scholar 

  21. Rafael D. Lins. Cyclic reference counting with lazy mark-scan. Technical Report 75, University of Kent, Canterbury, United Kingdom, June 1990. To appear in Information Processing Letters.

    Google Scholar 

  22. Barbara Liskov and Rivka Ladin. Highly-available distributed services and fault-tolerant distributed garbage collection. In Fifth ACM Symposium on the Principles of Distributed Computing, pages 29–39, 1986.

    Google Scholar 

  23. José M. Piquer. Indirect reference-counting, a distributed garbage collection algorithm. In Eddy Odijik, M. Rem, and Jean-Claude Sayr, editors, Parallel Architectures and Languages Europe, number 365, 366 in Lecture Notes in Computer Science, pages 150–165, Eindhoven, the Netherlands, June 1991. Springer-Verlag.

    Google Scholar 

  24. David Plainfossé. Distributed Garbage Collection and Reference Management in the Soul Object Support System. PhD thesis, Université Paris-6, Pierre-et-Marie-Curie, Paris (France), June 1994. Available from INRIA as TU-281, ISBN-2-7261-0849-0.

    Google Scholar 

  25. Martin Rudalics. Correctness of distributed garbage collection algorithms. Technical Report 90-40.0, Johannes Kepler Universitat, Linz Austria, 1990.

    Google Scholar 

  26. Marc Shapiro, Olivier Gruber, and David Plainfossé. A garbage detection protocol for a realistic distributed object-support system. Rapport de Recherche 1320, inria, rocquencourt, November 1990.

    Google Scholar 

  27. Marc Shapiro, Peter Dickman, and David Plainfossé. Robust, distributed references and acyclic garbage collection. In Symp. on Principles of Distributed Computing, Vancouver (Canada), August 1992. ACM.

    Google Scholar 

  28. Bjarne Stroustrup. The C++ Programming Language. Addison-Wesley, second edition, 1991.

    Google Scholar 

  29. S. C. Vestal. Garbage Collection: An Exercise in Distributed, Fault-Tolerant Programming. PhD thesis, University of Washington, Seattle, Washington, January 1987.

    Google Scholar 

  30. P. Watson and I. Watson. An Efficient Garbage Collection Scheme for Parallel Computer Architecture. In Bakker et al. [1987], pages 432–443.

    Google Scholar 

  31. P. Weis. The CAML Reference manual, Version 2.6.1. Technical Report 121, INRIA-Rocquencourt, 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

Plainfossé, D., Shapiro, M. (1995). A survey of distributed garbage collection techniques. 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_26

Download citation

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

  • 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