2010 SBAC R. Sanchez, J. N. Amaral, D. Szafron, M. Pirvu and M. Stoodley, Using Support Vector Machines to Learn How to Compile a Method, Proceedings of the 22nd International Symposium on Computer Architecture and High Performance Computing (SBAC), Rio de Janeiro, Brazil, October 2010, 223-230, abstract or pdf.

The question addressed in this paper is what subset of code transformations should be attempted for a given method in a Just-in-Time compilation environment. The solution proposed is to use a Support Vector Machine (SVM) to learn a model based on method features and on the measured compilation and execution times of the methods. An extensive exploration phase collects a set of example compilations to be used by the SVM to train the model. This paper reports on a work in progress. So far, linear-SVM models, applied to benchmarks from the SPECjvm98 suite, have not outperformed the compilation plans engineered by the development team over many years. However the models almost match that performance for the javac benchmark.