Sciweavers

CGO
2011
IEEE

A trace-based Java JIT compiler retrofitted from a method-based compiler

12 years 8 months ago
A trace-based Java JIT compiler retrofitted from a method-based compiler
—This paper describes our trace-based JIT compiler (trace-JIT) for Java developed from a production-quality method-based JIT compiler (method-JIT). We first describe the design and implementation of our trace-JIT with emphasis on how we retrofitted a method-JIT as a trace-based compiler. Then we show that the trace-JIT often produces better quality code than the method-JIT by extending the compilation scope. Forming longer traces that span multiple methods turns out to be more powerful than method inlining in extending the compilation scope. It reduces method-invocation overhead and also offers more compiler optimization opportunities. However, the traceJIT incurs additional runtime overhead compared to the methodJIT that may be offset by gains from the improved code quality. Overall, our trace-JIT achieved performance roughly comparable to the baseline method-JIT. We also discuss the issues in trace-based compilation from the viewpoint of compiler optimizations. Our results show the...
Hiroshi Inoue, Hiroshige Hayashizaki, Peng Wu, Tos
Added 25 Aug 2011
Updated 25 Aug 2011
Type Journal
Year 2011
Where CGO
Authors Hiroshi Inoue, Hiroshige Hayashizaki, Peng Wu, Toshio Nakatani
Comments (0)