|
| This Article | ||
| ||
| Share | ||
| Bibliographic References | ||
| Add to: | ||
| | ||
| Search | ||
| ||
Eighth International Conference on Parallel Architectures and Compilation Techniques (PACT'99)
LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation
Newport Beach, California
October 12-October 16
ISBN: 0-7695-0425-6
| ASCII Text | x | ||
| Byung-Sun Yang, Soo-Mook Moon, Seongbae Park, Junpyo Lee, SeungIl Lee, Jinpyo Park, Yoo C. Chung, Suhyun Kim, Kemal Ebcioglu, Erik Altman, "LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation," Parallel Architectures and Compilation Techniques, International Conference on, pp. 128, Eighth International Conference on Parallel Architectures and Compilation Techniques (PACT'99), 1999. | |||
| BibTex | x | ||
| @article{ 10.1109/PACT.1999.807503, author = {Byung-Sun Yang and Soo-Mook Moon and Seongbae Park and Junpyo Lee and SeungIl Lee and Jinpyo Park and Yoo C. Chung and Suhyun Kim and Kemal Ebcioglu and Erik Altman}, title = {LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation}, journal ={Parallel Architectures and Compilation Techniques, International Conference on}, volume = {0}, year = {1999}, issn = {1089-795X}, pages = {128}, doi = {http://doi.ieeecomputersociety.org/10.1109/PACT.1999.807503}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } | |||
| RefWorks Procite/RefMan/Endnote | x | ||
| TY - CONF JO - Parallel Architectures and Compilation Techniques, International Conference on TI - LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation SN - 1089-795X SP EP A1 - Byung-Sun Yang, A1 - Soo-Mook Moon, A1 - Seongbae Park, A1 - Junpyo Lee, A1 - SeungIl Lee, A1 - Jinpyo Park, A1 - Yoo C. Chung, A1 - Suhyun Kim, A1 - Kemal Ebcioglu, A1 - Erik Altman, PY - 1999 KW - Java JIT compilation KW - register allocation VL - 0 JA - Parallel Architectures and Compilation Techniques, International Conference on ER - | |||
For network computing on desktop machines, fast execution of Java bytecode programs is essential because these machines are expected to run substantial application programs written in Java. Higher Java performance can be achieved by Just-in-Time (JIT) compilers which translate the stack-based bytecode into register-based machine code on demand. One crucial problem in Java JIT compilation is how to map and allocate stack entries and local variables into registers efficiently and quickly, so as to improve the Java performance.This paper introduces LaTTe, a Java JIT compiler that performs fast and efficient register mapping and allocation for RISC machines. LaTTe first translates the bytecode into pseudo RISC code with symbolic registers, which is then register allocated while coalescing those copies corresponding to pushes and pops between local variables and the stack. The LaTTe JVM also includes an enhanced object model, a lightweight monitor, a fast mark-and-sweep garbage collector, and an on-demand exception handling mechanism, all of which are closely coordinated with LaTTe's JIT compilation.Our experimental results on the SPARC platform with SPECJVM98 benchmarks and 15 non-trivial Java programs indicate that the current LaTTe JVMs achieve performance better than or comparable to the latest SUN JIT compilers (JDK 1.1.6 and HotSpot). It is also shown that LaTTe makes a reasonable trade-off between quality and speed of register allocation (i.e., the translation overhead consistently takes 1-2 seconds for SPECJVM98 which runs 40-80 seconds on LaTTe).
Index Terms:
Java JIT compilation, register allocation
Citation:
Byung-Sun Yang, Soo-Mook Moon, Seongbae Park, Junpyo Lee, SeungIl Lee, Jinpyo Park, Yoo C. Chung, Suhyun Kim, Kemal Ebcioglu, Erik Altman, "LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation," pact, pp.128, Eighth International Conference on Parallel Architectures and Compilation Techniques (PACT'99), 1999
Usage of this product signifies your acceptance of the Terms of Use.
