We are currently working on a new architecture for Java JIT compilers to allow coexistence of multiple, customized JIT compilers in a single Java VM simultaneously without prohibitive space or programming costs, called OpenJIT2. The project builds on the success of OpenJIT1, the rst openended JIT compiler for Java written in Java. Not only that our new architecture subsumes the socalled `bilevel' or `trilevel' JIT compilers of today, but allows application, environment, or userspecic JIT compilers to coexist and invoked at appropriate moments as decided by the runtime. The compiler fragment modules can either be builtin or even dynamically downloaded from the network on demand to tailor the compiler for specic needs. We believe such cus tomization allows the best performance to be squeezed out of applications in a way not possible with generic optimization strategies. OpenJIT2 will also be publically distributed for free and supported just as was with OpenJIT1 to serve as ap plication framework for general compiler research by others, having a very clean and customizable objectoriented frame work structure as opposed to OpenJIT1. We also hope that it will serve as commercial quality replacement JIT compiler
【 预 览 】
附件列表
Files
Size
Format
View
OpenJIT 2: The Design and Implementation of Application Framework for JIT Compilers