Generational Stack Collection and Profile-Driven Pretenuring (1998)
| Citations: | 60 - 3 self |
BibTeX
@INPROCEEDINGS{Cheng98generationalstack,
author = {Perry Cheng and Robert Harper and Peter Lee},
title = {Generational Stack Collection and Profile-Driven Pretenuring},
booktitle = {},
year = {1998},
pages = {162--173},
publisher = {ACM Press}
}
Years of Citing Articles
OpenURL
Abstract
This paper presents two techniques for improving garbage collection performance: generational stack collection and profile-driven pretenuring. The first is applicable to stackbased implementations of functional languages while the second is useful for any generational collector. We have implemented both techniques in a generational collector used by the TIL compiler (Tarditi, Morrisett, Cheng, Stone, Harper, and Lee 1996), and have observed decreases in garbage collection times of as much as 70% and 30%, respectively. Functional languages encourage the use of recursion which can lead to a long chain of activation records. When a collection occurs, these activation records must be scanned for roots. We show that scanning many activation records can take so long as to become the dominant cost of garbage collection. However, most deep stacks unwind very infrequently, so most of the root information obtained from the stack remains unchanged across successive garbage collections. Generatio...







