The Community for Technology Leaders
Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO) (2011)
Chamonix, France
Apr. 2, 2011 to Apr. 6, 2011
ISBN: 978-1-61284-356-8
pp: 257-266
Ricardo Nabinger Sanchez , University of Alberta, Edmonton, AB, Canada
Jose Nelson Amaral , University of Alberta, Edmonton, AB, Canada
Duane Szafron , University of Alberta, Edmonton, AB, Canada
Marius Pirvu , IBM Toronto Software Laboratory, Markham, ON, Canada
Mark Stoodley , IBM Toronto Software Laboratory, Markham, ON, Canada
ABSTRACT
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® J9 Java™ 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 machine-learned 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.
INDEX TERMS
CITATION
Ricardo Nabinger Sanchez, Jose Nelson Amaral, Duane Szafron, Marius Pirvu, Mark Stoodley, "Using machines to learn method-specific compilation strategies", Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO), vol. 00, no. , pp. 257-266, 2011, doi:10.1109/CGO.2011.5764693
95 ms
(Ver 3.3 (11022016))