Using Machines to Learn Method-Specific Compilation Strategies
Ricardo Nabinger Sanchez, José Nelson, Amaral Duane Szafron, Marius Pirvu, Mark Stoodley · 2012
Support Vector Machines (SVMs) are used to discover method-specific compilation strategies in Testarossa, a commercial Just-in-Time (JiT) compiler employed in the IBM R ○ J9 Java TM Virtual Machine. The learning process explores a large number of different compilation strategies to generate the data needed for training models. The trained machine-learned model is integrated with the compiler to predict a compilation plan that balances code quality and compilation effort on a per-method basis. The machinelearned plans outperform the original Testarossa for start-up performance, but not for throughput performance, for which Testarossa has been highly hand-tuned for many years. 1.