Skip to main content

Garbage collection in multischeme

  • Part I Parallel Lisp Languages and Programming Models
  • Conference paper
  • First Online:
Parallel Lisp: Languages and Systems (PSC 1989)

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

Included in the following conference series:

Abstract

On stock hardware, our garbage collector commonly takes under 4% of a system's time and less than 0.2 seconds at each occurrence. It provides an unsurpassed mechanism for reclaiming memory and processing resources in a parallel system. Furthermore, the elementary algorithm is easily extended to a parallel implementation that achieves significant performance improvement without slowing down the operation of user programs.

The garbage collector is also an important component of the system when investigating speculative computation. The requirement that the garbage collector recycle tasks that are no longer performing useful work impacts not only the design of internal data structures, but also affects the semantics of continuations in a parallel system.

(preliminary version)

This research was supported in part by the Defense Advanced Research Projects Agency and was monitored by the Office of Naval Research under contract numbers N00014-83-K-0125, N00014-84-K-0099, N00014-86-K-0180, and MDA903-84-C-0033. Additional funds and resources were provided by BBN Advanced Computers Inc., and the Hewlett-Packard Corporation.

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. Hal Abelson and G. J. Sussman. Procedural abstractions in lisp programming. Tentative title, submitted to Byte Magazine, August 1987.

    Google Scholar 

  2. Harold Abelson, Gerald Jay Sussman, and Julie Sussman. Structure and Interpretation of Computer Programs. MIT Press, 1985.

    Google Scholar 

  3. Laura Bagnall et al. The butterfly lisp user interface. Submitted to Workshop on Parallel and Distributed Debugging, 1987.

    Google Scholar 

  4. H. Baker and C. Hewitt. The incremental garbage collection of processes. Technical Report AI Memo 454, Mass. Inst. of Technology, Artificial Intelligence Laboratory, December 1977.

    Google Scholar 

  5. BBN Advanced Computers Inc., Cambridge, MA. Butterfly Common Lisp and Butterfly Scheme Release Notes, February 1989. Release 1.0.

    Google Scholar 

  6. Stewart Michael Clamen. Debugging in a parallel lisp environment. Bachelor's thesis, Mass. Inst. of Technology, 1986.

    Google Scholar 

  7. Anthony James Courtemanche. Multitrash, a parallel garbage collector for multi-Scheme. Bachelor's thesis, Mass. Inst. of Technology, 1986.

    Google Scholar 

  8. Barbara S. Epstein. Support for speculative computation in multiScheme. Bachelor's thesis, Brandeis, 1989.

    Google Scholar 

  9. R. Fenichel and J. Yochelson. A Lisp garbage collector for virtual memory computer systems. Comm. of the ACM, 12(11):611–612, 1969.

    Google Scholar 

  10. R. Halstead. Multilisp: A language for concurrent symbolic computation. In ACM Trans. on Prog. Languages and Systems, pages 501–538, October 1985.

    Google Scholar 

  11. C. Hewitt. Viewing control structures as patterns of passing messages. Journal of Artificial Intelligence, 8(3):323–364, 1977.

    Google Scholar 

  12. Mass. Inst. of Technology, Cambridge, MA. MIT Scheme Reference, Scheme Release 7, 1988.

    Google Scholar 

  13. James Miller. MultiScheme: A Parallel Processing System Based on MIT Scheme. PhD thesis, Mass. Inst. of Technology, August 1987. Available as MIT LCS/TR/402.

    Google Scholar 

  14. James Miller. Implementing a Scheme-based parallel processing system. International Journal of Parallel Processing, 17(5), October 1988.

    Google Scholar 

  15. James Miller and Christopher Hanson. IEEE Draft Standard for the Programming Language Scheme. IEEE. forthcoming.

    Google Scholar 

  16. James Miller and Guillermo Rozas. Free variables and first-class environments. Journal of Lisp and Symbolic Computation, to appear.

    Google Scholar 

  17. Jonathan Rees, Norman Adams, and James Meehan. The t manual. Technical report, Yale University, January 1984. Fourth edition.

    Google Scholar 

  18. Jonathan Rees and William Clinger (editors). Revised3 report on the algorithmic language Scheme. ACM Sigplan Notices, 21(12), December 1986. Also available as MIT AI Memo 818a.

    Google Scholar 

  19. David Ungar. Generation scavenging: A non-distruptive high performance storage reclamation algorithm. ACM SIGPLAN Notices, 19(5):157–167, May 1984.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Takayasu Ito Robert H. Halstead Jr.

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Miller, J.S., Epstein, B.S. (1990). Garbage collection in multischeme. In: Ito, T., Halstead, R.H. (eds) Parallel Lisp: Languages and Systems. PSC 1989. Lecture Notes in Computer Science, vol 441. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0024153

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-52782-4

  • Online ISBN: 978-3-540-47143-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics