|
ABSTRACT
In previous heap storage systems, the cost of creating objects and garbage collection is independent of the lifetime of the object. Since objects with short lifetimes account for a large portion of storage use, it is worth optimizing a garbage collector to reclaim storage for these objects more quickly. The garbage collector should spend proportionately less effort reclaiming objects with longer lifetimes. We present a garbage collection algorithm that (1) makes storage for short-lived objects cheaper than storage for long-lived objects, (2) that operates in real time—object creation and access times are bounded, (3) increases locality of reference, for better virtual memory performance, (4) works well with multiple processors and a large address space.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Attardi, G., and Hewitt, C. Knowledge embedding in the description system OMEGA. Presented at the American Association for Artificial Intelligence Conf., Stanford Univ., Stanford, Calif., 1980.
|
| |
3
|
|
 |
4
|
|
| |
5
|
Baker, H. The paging behavior of the Cheney list copying algorithm. Tech. Note 1, Symbolics, Inc., Cambridge, Mass., 1980.
|
| |
6
|
Bishop, P. Computer systems with a very large address space and garbage collection. Tech. Rept. TR-178, MIT Lab. for Computer Science, Cambridge, Mass., May 1977.
|
| |
7
|
Bobrow, D., and Winograd, T. An overview of KRL: A language for knowledge representation. Cognitive Science 1, (1977).
|
 |
8
|
|
| |
9
|
deKleer, J., Doyle, J., Rich, C., Steele, G., and Sussman, G. AMORD--A deductive procedure system. Memo 435, MIT Artificial Intelligence Lab., Cambridge, Mass., Jan. 1978.
|
 |
10
|
|
 |
11
|
|
| |
12
|
Friedman, D., and Wise, D. Garbage collecting a heap which includes a scatter table. Inf. Process. Lett. 5, 6 {Dec. 1976).
|
 |
13
|
Richard D. Greenblatt , Thomas F. Knight , John T. Holloway , David A. Moon, A LISP machine, Proceedings of the fifth workshop on Computer architecture for non-numeric processing, p.137-138, March 11-14, 1980, Pacific Grove, California, United States
|
 |
14
|
|
| |
15
|
Hewitt, C. Viewing control structures as patterns of passing messages. In P. Winston and R. Brown (F, ds.), Artificial Intelligence: An MIT Perspective, MIT Press, Cambridge, Mass., 1979.
|
 |
16
|
|
 |
17
|
|
| |
18
|
Kornfeld, W. Ether--A parallel problem solving system. Presented at the 6th Joint Conf. Artificial Intelligence, Tokyo, Japan, Aug. 1979.
|
| |
19
|
Knnth, D. Garbage collection in real time. Class handout for course CS144C, Stanford Univ., Stanford, Calif., Spring 1981.
|
| |
20
|
Liebemmn, H. A preview of act 1. Al Memo 625, M1T Artificial Intelligence Lab., Cambridge, Mass., 1980.
|
| |
21
|
Lucassen, J.M. Improvements to the Liebarman-Hewitt garbage collector. Term Paper for MIT course 6.845, May 1981.
|
| |
22
|
Moon, D. MacLisp Reference Manual. MIT Lab. for Computer Science, Cambridge, Mass., 1980.
|
 |
23
|
|
| |
24
|
Snyder, A. An object-oriented machine architecture. Tech. Rept. TR-209, MIT Lab for Computer Science, Cambridge, Mass., 1979.
|
| |
25
|
|
 |
26
|
|
CITED BY 145
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Amer Diwan , David Tarditi , Eliot Moss, Memory subsystem performance of programs using copying garbage collection, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.1-14, January 16-19, 1994, Portland, Oregon, United States
|
|
|
|
|
|
Bernard Lang , Christian Queinnec , José Piquer, Garbage collecting the world, Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.39-50, January 19-22, 1992, Albuquerque, New Mexico, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Alan Demmers , Mark Weiser , Barry Hayes , Hans Boehm , Daniel Bobrow , Scott Shenker, Combining generational and conservative garbage collection: framework and implementations, Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.261-269, December 1989, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
K. F. Wong , G. G. Coghill , J. M. Hannah, THESIS: the hardware environment for small intelligent systems, for engineering applications, Proceedings of the 1986 ACM SIGSMALL/PC symposium on Small systems, p.173-176, December 1986, San Francisco, California, United States
|
|
|
|
|
|
Steve Engelstad , Keith Falck , Warren Montgomery , Joe Neumann , Ralph Straubs , Jim Vandendorpe , Mike Wilde, A Dynamic C-Based Object-Oriented System for Unix, IEEE Software, v.8 n.3, p.73-85, May 1991
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A. Albano , G. Ghelli , M. E. Occhiuto , R. Orsini, A strongly typed, interactive object-oriented database programming language, Proceedings on the 1986 international workshop on Object-oriented database systems, p.94-103, September 23-26, 1986, Pacific Grove, California, United States
|
|
|
|
|
|
Stuart Norcross , Ron Morrison , Dave Munro , Henry Detmold, Implementing a family of distributed garbage collectors, Proceedings of the twenty-sixth Australasian conference on Computer science: research and practice in information technology, p.161-170, February 01, 2003, Adelaide, Australia
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
David Detlefs , Christine Flood , Steve Heller , Tony Printezis, Garbage-first garbage collection, Proceedings of the 4th international symposium on Memory management, October 24-25, 2004, Vancouver, BC, Canada
|
|
|
|
|
|
Yoav Ossia , Ori Ben-Yitzhak , Irit Goft , Elliot K. Kolodner , Victor Leikehman , Avi Owshanko, A parallel, incremental and concurrent GC for servers, ACM SIGPLAN Notices, v.37 n.5, May 2002
|
|
|
|
|
|
Katherine Barabash , Ori Ben-Yitzhak , Irit Goft , Elliot K. Kolodner , Victor Leikehman , Yoav Ossia , Avi Owshanko , Erez Petrank, A parallel, incremental, mostly concurrent garbage collector for servers, ACM Transactions on Programming Languages and Systems (TOPLAS), v.27 n.6, p.1097-1146, November 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Margo Seltzer , Keith A. Smith , Hari Balakrishnan , Jacqueline Chang , Sara McMains , Venkata Padmanabhan, File system logging versus clustering: a performance comparison, Proceedings of the USENIX 1995 Technical Conference Proceedings on USENIX 1995 Technical Conference Proceedings, p.21-21, January 16-20, 1995, New Orleans, Louisiana
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INDEX TERMS
Primary Classification:
C.
Computer Systems Organization
C.1
PROCESSOR ARCHITECTURES
Additional Classification:
D.
Software
D.4
OPERATING SYSTEMS
E.
Data
I.
Computing Methodologies
I.2
ARTIFICIAL INTELLIGENCE
General Terms:
Algorithms,
Languages,
Performance
Keywords:
LISP,
algorithms,
languages,
lisp,
object-oriented programming,
parallel processing,
performance,
real-time garbage collection,
reference counting,
virtual memory
|