Simple generational garbage collection and fast allocation
Software—Practice & Experience
Combining generational and conservative garbage collection: framework and implementations
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Mostly parallel garbage collection
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
A concurrent, generational garbage collector for a multithreaded implementation of ML
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Portable, unobtrusive garbage collection for multiprocessor systems
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A generational on-the-fly garbage collector for Java
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
A real-time garbage collector based on the lifetimes of objects
Communications of the ACM
List processing in real time on a serial computer
Communications of the ACM
On-the-fly garbage collection: an exercise in cooperation
Communications of the ACM
Multiprocessing compactifying garbage collection
Communications of the ACM
A generational mostly-concurrent garbage collector
Proceedings of the 2nd international symposium on Memory management
Sapphire: copying GC without stopping the world
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande
Java without the coffee breaks: a nonintrusive multiprocessor garbage collector
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
An on-the-fly reference counting garbage collector for Java
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A scalable mark-sweep garbage collector on large-scale shared-memory machines
SC '97 Proceedings of the 1997 ACM/IEEE conference on Supercomputing
Beltway: getting around garbage collection gridlock
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Generation Scavenging: A non-disruptive high performance storage reclamation algorithm
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
An on-the-fly mark and sweep garbage collector based on sliding views
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Ulterior reference counting: fast garbage collection without a long wait
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Parallel garbage collection for shared memory multiprocessors
JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
Integrating generations with advanced reference counting garbage collectors
CC'03 Proceedings of the 12th international conference on Compiler construction
An efficient on-the-fly cycle collection
CC'05 Proceedings of the 14th international conference on Compiler Construction
Down for the count? Getting reference counting back in the ring
Proceedings of the 2012 international symposium on Memory Management
Taking off the gloves with reference counting Immix
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Hi-index | 0.00 |
Generational collectors are well known as a tool for shortening pause times incurred by garbage collection and for improving garbage collection efficiency. In this paper, we investigate how to best use generations with on-the-fly collectors. On-the-fly collectors run concurrently with the program threads and induce very short program pauses. Thus, the motivation for incorporating generations is focused at improving the throughput; pauses do not matter, since they are already very short. We propose a new collection approach, denoted age-oriented collection, for exploiting the generational hypothesis to obtain better efficiency. This approach is particularly useful when reference counting is used to collect the old generation, yielding a highly efficient and non-obtrusive on-the-fly collector. Finally, an implementation is provided demonstrating how the age-oriented collector outperforms both the non-generational and the generational collectors' efficiency.