The design and construction of high performance garbage collectors

dc.contributor.authorGarner, Robin
dc.date.accessioned2012-05-31T01:58:01Z
dc.date.available2012-05-31T01:58:01Z
dc.date.issued2011
dc.description.abstractGarbage collection is a performance-critical component of modern language implementations. The performance of a garbage collector depends in part on major algorithmic decisions, but also significantly on implementation details and techniques which are often incidental in the literature. In this dissertation I look in detail at the performance characteristics of garbage collection on modern architectures. My thesis is that a thorough understanding of the characteristics of the heap to be collected, coupled with measured performance of various design alternatives on a range of modern architectures provides insights that can be used to improve the performance of any garbage collection algorithm. The key contributions of this work are: 1) A new analysis technique (replay collection) for measuring the performance of garbage collection algorithms; 2) a novel technique for applying software prefetch to non-moving garbage collectors that achieves significant performance gains; and 3) a comprehensive analysis of object scanning techniques, cataloguing and comparing the performance of the known methods, and leading to a new technique that optimizes performance without significant cost to the runtime environment. These contributions are applicable to a wide range of garbage collectors, and can provide significant measurable speedups to a design point where each implementer in the past has had to trust intuition or their own benchmarking. The methodologies and implementation techniques contributed in this dissertation have the potential to make a significant improvement to the performance of every garbage collector.en_AU
dc.identifier.otherb28800151
dc.identifier.urihttp://hdl.handle.net/1885/9053
dc.language.isoen_AUen_AU
dc.subjectGarbage collectionen_AU
dc.subjectPerformanceen_AU
dc.subjectJavaen_AU
dc.subjectMark-sweepen_AU
dc.subjectPrefetchen_AU
dc.subjectProgramming languagesen_AU
dc.subjectProgramming language implementationen_AU
dc.titleThe design and construction of high performance garbage collectorsen_AU
dc.typeThesis (PhD)en_AU
dcterms.valid2012en_AU
local.contributor.affiliationResearch School of Computer Science, ANU College of Engineering & Computer Scienceen_AU
local.contributor.supervisorBlackburn, Steve
local.description.notesPrincipal Supervisor: Dr Steve Blackburn, steve.blackburn@anu.edu.auen_AU
local.description.refereedYesen_AU
local.identifier.doi10.25911/5d78dc77733ab
local.mintdoimint
local.type.degreeDoctor of Philosophy (PhD)en_AU

Downloads

Original bundle

Now showing 1 - 2 of 2
Loading...
Thumbnail Image
Name:
02WholeThesis_Garner.pdf
Size:
661.21 KB
Format:
Adobe Portable Document Format
Description:
whole thesis
Loading...
Thumbnail Image
Name:
01Front_Garner.pdf
Size:
153.02 KB
Format:
Adobe Portable Document Format
Description:
front matter

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
70 B
Format:
Item-specific license agreed upon to submission
Description: