A JAVA ILP Machine Based on Fast Dynamic Compilation

For desktop machines for network computing (called Webtops), one needs high performance execution of JAVA programs, since these machines will be expected to run substantial applications that will be written in JAVA. On a Webtop, a chip designed to run only JAVA programs along with a lean operating system to support it, can theoretically provide a cheaper and faster solution compared to a general purpose PC. We believe that, compared to a stack machine, higher JAVA performance can be achieved by state of the art ILP (Instruction Level Parallelism) compiler and hardware technology. To this end, we propose a simple ILP architecture (a small VLIW machine), together with a JAVA Just-In-Time (JIT) compiler hidden within the chip architecture. This approach extends the DAISY system described in IBM CyberDigest Entry RC20538. <P>The first time a fragment of JAVA code is executed, the JIT compiler transparently converts the JAVA byte codes to highly optimized RISC primitives, then parallelizes them, so multiple RISC primitives can be executed in one machine cycle. The VLIW code is saved in a portion of main memory not visible to the JAVA architecture. Subsequent executions of the same fragment do not require translation (unless cast out). We describe fast compiler algorithms for dynamic translation of JAVA byte codes to VLIW code. These algorithms parallelize across multiple paths and loop iteration boundaries. In addition, they map the JAVA stack and local variables to real registers, thereby eliminating the pushes and pops between local variables and the stack by appropriate register allocation.

By: Kemal Ebcioglu, Erik R. Altman, and Erdem Hokenek

Published in: IEEE Mascots International Workshop on Security and Efficiency Aspects of Java, Workshop Proceedings. , IEEE Computer Society Press in 1997

Please obtain a copy of this paper from your local library. IBM cannot distribute this paper externally.

Questions about this service can be mailed to reports@us.ibm.com .