Abstract:
Many concurrent garbage collection (GC) algorithms have been devised, but few have been implemented and evaluated, particularly for the Java programming language. Sapphire is an algorithm we have devised for concurrent copying GC. Sapphire stresses minimizing the amount of time any given application thread may need to block to support the collector. In particular, Sapphire is intended to work well in the presence of a large number of application threads, on small- to medium-scale shared memory multiprocessors. A specific problem that Sapphire addresses is not stopping all threads while thread stacks are adjusted to account for copied objects (in GC parlance, the "flip" to the new copies). Sapphire extends
Citations
|
911
|
The Java Virtual Machine Specification
– Lindholm, Yellin
- 1997
|
|
324
|
Garbage Collection: Algorithms for Automatic Dynamic Memory Management
– Jones, Lins
- 1996
|
|
196
|
List processing in real time on a serial computer
– Baker
- 1978
|
|
143
|
Fixing the Java memory model
– Pugh
- 1999
|
|
98
|
A concurrent, generational garbage collector for a multithreaded implementation of ML
– Doligez, Leroy
- 1993
|
|
96
|
Thin locks: Featherweight synchronization for Java
– Bacon, Konuru, et al.
- 1998
|
|
77
|
Real-time concurrent collection on stock mul-tiprocessors
– APPEL, ELLIS, et al.
- 1988
|
|
76
|
Trading data space for reduced time and code space in real-time garbage collection on stock hardware
– BROOKS
- 1984
|
|
51
|
Generational stack collection and profile-driven pretenuring
– Cheng, Harper, et al.
- 1998
|
|
33
|
Incremental collection of ma-ture objects
– HUDSON, MOSS
- 1992
|
|
31
|
A concurrent copying garbage collector for languages that distinguish (im)mutable data
– Huelsbergen, Larus
- 1993
|
|
28
|
Replication-based incremental copying collection
– Nettles, O'Toole, et al.
- 1992
|
|
26
|
Portable, Unobtrusive Garbage Collection for Multiprocessor Systems
– Doligez, Gonthier
- 1994
|
|
1
|
Semantics of multithreaded java. Available as www.cs.umd.edu/˜pugh/java/memoryModel/semantics.pdf Oct
– Pugh
|