Sewe, Andreas ; Yuan, Dingwen ; Sinschek, Jan ; Mezini, Mira (2010)
Headroom-based pretenuring: dynamically pretenuring objects that live “long enough”.
8th International Conference on the Principles and Practice of Programming in Java - PPPJ '10. Vienna, Austria (15.09.2010-17.09.2010)
doi: 10.1145/1852761.1852767
Konferenzveröffentlichung, Bibliographie
Kurzbeschreibung (Abstract)
Many modern garbage collectors are generational, operating under the assumption that “most objects die young.” Such collectors allocate all objects in a frequently collected nursery and tenure only surviving objects to a less-frequently collected, older generation. But these survivors induce copying costs upon tenuring. To avoid these costs, pretenuring schemes construct classifiers to predict whether an object will be long-lived or short-lived; accordingly, it is tenured or not immediately upon allocation. Up to now, however, these predictions did not account for one important fact: the proximity of the next collection. In contrast, headroom-based pretenuring does take this into account; thus, it can dynamically pretenure objects whenever they live “long enough.”
We devised two ways to estimate an object's lifetime from garbage collection traces. This led to two headroom-based pretenuring schemes, which we implemented on top of Jikes RVM and MMTk. Our experiments show that the dynamic, headroom-based pretenuring schemes outperform static schemes in terms of collector performance, albeit at the cost of increased mutator overhead.
Typ des Eintrags: | Konferenzveröffentlichung | ||||
---|---|---|---|---|---|
Erschienen: | 2010 | ||||
Autor(en): | Sewe, Andreas ; Yuan, Dingwen ; Sinschek, Jan ; Mezini, Mira | ||||
Art des Eintrags: | Bibliographie | ||||
Titel: | Headroom-based pretenuring: dynamically pretenuring objects that live “long enough” | ||||
Sprache: | Englisch | ||||
Publikationsjahr: | 2010 | ||||
Buchtitel: | Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java - PPPJ '10 | ||||
Veranstaltungstitel: | 8th International Conference on the Principles and Practice of Programming in Java - PPPJ '10 | ||||
Veranstaltungsort: | Vienna, Austria | ||||
Veranstaltungsdatum: | 15.09.2010-17.09.2010 | ||||
DOI: | 10.1145/1852761.1852767 | ||||
Zugehörige Links: | |||||
Kurzbeschreibung (Abstract): | Many modern garbage collectors are generational, operating under the assumption that “most objects die young.” Such collectors allocate all objects in a frequently collected nursery and tenure only surviving objects to a less-frequently collected, older generation. But these survivors induce copying costs upon tenuring. To avoid these costs, pretenuring schemes construct classifiers to predict whether an object will be long-lived or short-lived; accordingly, it is tenured or not immediately upon allocation. Up to now, however, these predictions did not account for one important fact: the proximity of the next collection. In contrast, headroom-based pretenuring does take this into account; thus, it can dynamically pretenure objects whenever they live “long enough.” We devised two ways to estimate an object's lifetime from garbage collection traces. This led to two headroom-based pretenuring schemes, which we implemented on top of Jikes RVM and MMTk. Our experiments show that the dynamic, headroom-based pretenuring schemes outperform static schemes in terms of collector performance, albeit at the cost of increased mutator overhead. |
||||
Freie Schlagworte: | Generational garbage collection, dynamic pretenuring, lifetime estimation, headroom | ||||
Schlagworte: |
|
||||
Fachbereich(e)/-gebiet(e): | 20 Fachbereich Informatik 20 Fachbereich Informatik > Softwaretechnik LOEWE > LOEWE-Zentren > CASED – Center for Advanced Security Research Darmstadt Zentrale Einrichtungen LOEWE LOEWE > LOEWE-Zentren |
||||
Hinterlegungsdatum: | 28 Sep 2010 16:54 | ||||
Letzte Änderung: | 05 Mär 2013 09:38 | ||||
PPN: | |||||
Schlagworte: |
|
||||
Export: | |||||
Suche nach Titel in: | TUfind oder in Google |
Frage zum Eintrag |
Optionen (nur für Redakteure)
Redaktionelle Details anzeigen |