Garbage collection in an uncooperative environment
Software—Practice & Experience
Simple generational garbage collection and fast allocation
Software—Practice & Experience
Design of the opportunistic garbage collector
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Controlling garbage collection and heap growth to reduce the execution time of Java applications
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Error-free garbage collection traces: how to cheat and not get caught
SIGMETRICS '02 Proceedings of the 2002 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Java Virtual Machine Specification
Java Virtual Machine Specification
Older-first garbage collection in practice: evaluation in a Java Virtual Machine
Proceedings of the 2002 workshop on Memory system performance
Oil and Water? High Performance Garbage Collection in Java with MMTk
Proceedings of the 26th International Conference on Software Engineering
Myths and realities: the performance impact of garbage collection
Proceedings of the joint international conference on Measurement and modeling of computer systems
IBM Systems Journal
Garbage-first garbage collection
Proceedings of the 4th international symposium on Memory management
Dynamic selection of application-specific garbage collectors
Proceedings of the 4th international symposium on Memory management
A Portable Programming Interface for Performance Evaluation on Modern Processors
International Journal of High Performance Computing Applications
Gated memory control for memory monitoring, leak detection and garbage collection
Proceedings of the 2005 workshop on Memory system performance
Hot-swapping between a mark&sweep and a mark&compact garbage collector in a generational environment
JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
HiPEAC'05 Proceedings of the First international conference on High Performance Embedded Architectures and Compilers
Dynamic analysis of Java program concepts for visualization and profiling
Science of Computer Programming
Waste not, want not: resource-based garbage collection in a shared environment
Proceedings of the international symposium on Memory management
Hi-index | 0.00 |
This paper shows that Appel-style garbage collectors often make suboptimal decisions both in terms of whenand howto collect. We argue that garbage collection should be done when the amount of live bytes is low (in order to minimize the collection cost) and when the amount of dead objects is high (in order to maximize the available heap size after collection). In addition, we observe that Appel-style collectors sometimes trigger a nursery collection in cases where a full-heap collection would have been better.Based on these observations, we propose garbage collection hints (GCH)which is a profile-directed method for guiding garbage collection. Off-line profiling is used to identify favorable collection points in the program code. In those favorable collection points, the garbage collector dynamically chooses between nursery and full-heap collections based on an analytical garbage collector cost-benefit model. By doing so, GCH guides the collector in terms of whenand howto collect. Experimental results using the SPECjvm98 benchmarks and two generational garbage collectors show that substantial reductions can be obtained in garbage collection time (up to 29X) and that the overall execution time can be reduced by more than 10%. In addition, we also show that GCH reduces the maximum pause times and outperforms user-inserted forced garbage collections.