Sciweavers

ECOOP
2008
Springer

Online Phase-Adaptive Data Layout Selection

13 years 6 months ago
Online Phase-Adaptive Data Layout Selection
Good data layouts improve cache and TLB performance of object-oriented software, but unfortunately, selecting an optimal data layout a priori is NP-hard. This paper introduces layout auditing, a technique that selects the best among a set of layouts online (while the program is running). Layout auditing randomly applies different layouts over time and observes their performance. As it becomes confident about which layout performs best, it selects that layout with higher probability. But if a phase shift causes a different layout to perform better, layout auditing learns the new best layout. We implemented our technique in a product Java virtual machine, using copying generational garbage collection to produce different layouts, and tested it on 20 long-running benchmarks and 4 hardware platforms. Given any combination of benchmark and platform, layout auditing consistently performs close to the best layout for that combination, without requiring offline training.
Chengliang Zhang, Martin Hirzel
Added 19 Oct 2010
Updated 19 Oct 2010
Type Conference
Year 2008
Where ECOOP
Authors Chengliang Zhang, Martin Hirzel
Comments (0)