skip to main content
article
Free Access

Reducing the latency of a real-time garbage collector

Published:01 March 1992Publication History
Skip Abstract Section

Abstract

This paper shows how to make the latency of scanning a page in the Appel-Ellis-Li real-time garbage collector be proportional only to the number of object references on a page (the page size), instead of to the sum of the sizes of the objects referenced by the page. This makes the garbage collection algorithm much more suitable for real-time systems.

References

  1. 1 APPEL, A. W., ELLIS, J. R., AND LI, K. Real-time concurrent collection on stock multiprocessors. In Proceedings of the SIGPLAN'88 Conference on Programming Language Design and Implementation (Atlanta, GA, June 22-24, 1988), pp. 11-20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 APPEL, A. W., AND LI, K. Virtual memory primitives for use programs. In Proceedings of the Fourth International Conference on Architectural Support for Programming Languages and Operating Systems (Santa Clara, CA, Apr. 8-11, 1991), pp. 86-107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 APPEL, A.W. A runtime system. L~sp Symbolic Comput. 3, 4 (Nov. 1990), 343-380. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4 BAKER, H.G. List processing in real time on a serial computer. Commun. ACM21, 4 (Apr. 1978), 280-294. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 CHENEY, C. J. A nonrecursive list compacting algorithm. Commun. ACM 13, 11 (Nov. 1970), 677-678. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 CAUDILL, P. J., AND WIRFS-BROCK, A. A third generation Smalltalk-80 implementation. In Proceedings of OOPSLA '86 (Portland, OR, Sept. 26-Oct. 2, 1986), pp. 119-130. Printed as SIGPLAN Notices 21, 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 DEUTSCH, L. P., AND BOBROW, D.G. An efficient, incremental, automatic garbage collector. Commun. ACM 19, 9 (Sept. 1976), 522-526. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8 IBM CORPORATION. POWER Processor Architecture, version 1.52. 1990.Google ScholarGoogle Scholar
  9. 9 LIEBERMAN, H., AND HEWITT, C. A real-time garbage collector based on the lifetimes of objects. Commun. ACM 26, 6 (June 1983), 419-429. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10 NILSEN, K. Garbage collection of strings and linked data structures in real time. Softw. Pract. Exper. 18, 7 (July 1988), 613-640. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11 UNGAR, D., AND JACKSON, F. Tenuring policies for generation-based storage reclamation. In Proceedings of OOPSLA '88 (San Diego, CA, Sept. 25-30, 1988), pp. 1-17. Printed as SIGPLAN Notices, 23, 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12 UNGAR, D. Generation scavenging: A non-disruptive high performance storage reclamation algorithm. In Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments (Pittsburgh, PA, Apr. 23-25, 1984), pp. 157-167. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13 WILSON, P.R. Some issues and strategies in heap management and memory hierarchies. SIGPLAN Notices 26, 3 (Mar. 1991), 45-52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14 YUASA, T. Real-time garbage collection on general purpose machines. J. Syst. Softw. 11, 3 (Mar. 1990), 181-198. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Reducing the latency of a real-time garbage collector

          Recommendations

          Reviews

          Kathleen H. V. Booth

          Garbage collection can be important to a long-running program in which “junk” areas of memory gradually accumulate and may eventually lead to failure due to lack of memory. Most current garbage collection routines take times on the order of hundreds of milliseconds and run at unpredictable times. This makes them unsuitable for real-time applications. This paper discusses techniques that have been proposed to deal with this problem and suggests an alternative to the Appel-Ellis real-time garbage collector by making it more “lazy.” This change has the effect of making the bound on the time taken to scan a page independent of the objects being scanned, although the author suggests that it is not a final solution to the problem. The author provides a number of schemes in pseudocode form and gives some numerical estimates to show the relative merits of garbage collection methods. A good list of current papers is provided.

          Access critical reviews of Computing literature here

          Become a reviewer for Computing Reviews.

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM Letters on Programming Languages and Systems
            ACM Letters on Programming Languages and Systems  Volume 1, Issue 1
            March 1992
            103 pages
            ISSN:1057-4514
            EISSN:1557-7384
            DOI:10.1145/130616
            Issue’s Table of Contents

            Copyright © 1992 ACM

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 March 1992
            Published in loplas Volume 1, Issue 1

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • article

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!