skip to main content
article
Free Access

Improving locality of reference in a garbage-collecting memory management system

Published:01 September 1988Publication History
Skip Abstract Section

Abstract

Modern Lisp systems make heavy use of a garbage-collecting style of memory management. Generally, the locality of reference in garbage-collected systems has been very poor. In virtual memory systems, this poor locality of reference generally causes a large amount of wasted time waiting on page faults or uses excessively large amounts of main memory. An adaptive memory management algorithm, described in this article, allows substantial improvement in locality of reference. Performance measurements indicate that page-wait time typically is reduced by a factor of four with constant memory size and disk technology. Alternately, the size of memory typically can be reduced by a factor of two with constant performance.

References

  1. 1. Baker, H. G. List processing in real time on a serial computer. Commun. ACM 21, 4 (April 1978), 280-294. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2. Cohen, J. Garbage collection of linked data structures. Comp. Surv., 13, 3 (Sept. 1981), 341-367. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3. 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
  4. 4. Moon, D. A. Garbage collection in a large lisp system. In Proceedings of the 1984 ACM Symposium on Lisp and Functional Programming (August 1984). ACM, New York, 235-246. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Improving locality of reference in a garbage-collecting memory management system

                  Recommendations

                  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 Communications of the ACM
                    Communications of the ACM  Volume 31, Issue 9
                    Sept. 1988
                    109 pages
                    ISSN:0001-0782
                    EISSN:1557-7317
                    DOI:10.1145/48529
                    Issue’s Table of Contents

                    Copyright © 1988 ACM

                    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                    Publisher

                    Association for Computing Machinery

                    New York, NY, United States

                    Publication History

                    • Published: 1 September 1988

                    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