JAVA PERFORMANCE
Java programs are often considered to be too slow for scientific or high-performance computing. This impression is partly based on out-dated results which show poor performance of Java applications on early JVMs. Current JVMs have greatly improved, but better performance can still be achieved. This project looks at improving the performance of Java applications by developing new optimizations, enhancing existing Java JIT compilers and run-time systems, and better tuning compiler heuristics to the targetted hardware.
Selected Publications:
[1] Intelligent Selection of Application-Specific Garbage Collectors.
Jeremy Singer, Gavin Brown, Ian Watson, and John Cavazos. Acceptance: 14/34 (41%)
ISMM 2007 [gzip'd PS] [PDF]
[2] Method-Specific Dynamic Compilation using Logistic Regression.
John Cavazos and Michael F. P. O'Boyle. Acceptance: 26/157 (16%)
OOPSLA 2006 [gzip'd PS] [PDF]
[3] Hybrid Optimizations: Which Optimization Algorithm to Use?
John Cavazos, J. Eliot B. Moss, and Michael F. P. O'Boyle. Acceptance 17/72 (24%)
Compiler Construction 2006 [gzip'd PS] [PDF] [Slides]
[4] Automatic Tuning of Inlining Heuristics.
John Cavazos and Michael F. P. O'Boyle. Acceptance: 63/260 (24%)
Supercomputing 2005 [gzip'd PS] [PDF] [Slides]
[5] Inducing Heuristics to Decide Whether to Schedule.
John Cavazos and J. Eliot B. Moss. Acceptance: 25/128 (20%)
PLDI 2004 [gzip'd PS] [PDF] [Slides]