ISMM 2007 START Conference Manager    

Intelligent Selection of Application-Specific Garbage Collectors

Jeremy Singer, Gavin Brown, Ian Watson and John Cavazos

The 2007 International Symposium on Memory Management (ISMM 2007)
Montreal, Canada, 21-22 October, 2007


Java program execution times vary greatly with different garbage collection algorithms. Until now, it has not been possible to determine the best GC algorithm for a particular program without exhaustively profiling that program for all available GC algorithms. This paper presents a new approach. We use machine learning techniques to build a prediction model that, given a single profile run of a previously unseen Java program, can predict an optimal GC algorithm for that program. We implement this technique in Jikes RVM and test it on several standard benchmark suites. Our technique achieves 5\% speedup in overall execution time (averaged across all test programs and heapsizes) compared with selecting the default GC algorithm in every trial. We present further experiments to show that an oracle predictor could achieve an average 10\% speedup on the same benchmarks. In addition, we demonstrate that GC behaviour is typically independent of program inputs. These observations lead us to propose that intelligent selection of GC algorithms is suitably straightforward, efficient and effective to merit further exploration regarding its potential inclusion in the general Java software deployment process.

START Conference Manager (V2.54.5)