The economics of garbage collection
-
Upload
vaidas-brundza -
Category
Technology
-
view
208 -
download
3
description
Transcript of The economics of garbage collection
The Economics of Garbage CollectionJeremy Singer, Richard Jones, Gavin Brown, Mikel Luján
Motivation
The main goals
• Determine allocation curve
• Introduce allocation elasticity
• Make use of introduced elasticity
Microeconomics demand curve
Garbage collection analogy
Empirical Allocation Curves
• Empirical data from real-world Java application
• Different algorithms from MMTk toolkit run on JikesRVM
• Java benchmarks from DaCapo suite
• Fixed size heap 35-500 MB
Full-Heap Collection
• Mark-Sweep GC• Allocation curves obey the law of allocation
Generational Collection
• Generational Mark-Sweep GC• Nursery space – frequently collected• Mature space – long-lived objects• Added weight of 0.1 to Nursery GC
Shifting the Allocation Curve
• Added “tax” – additional words to object header• Allocation curve shifted upwards
Elasticity
Controlling Heap Growth using Elasticity
• Elasticity to improve GC performance
• Controlling the expansion rate heap
• Default heuristics for controlling heap size
• Sensitivity in default heuristics
• Alternative heuristics
Alternative Heuristic for Heap Growth Management
• Based on allocation elasticity
• target elasticity, Eo small E, slow heap growth rateo large E, rapid heap growth rate
Execution Time Benchmarks
Final Heap Sizes
Related Work• Stefanovic et al. used statistical techniques
• Baker offered radioactive decay model
• Garbage collection and transactional memory
Conclusion• Microeconomics and memory management
• Allocation curve
• Allocation elasticity