Java Bytecode Optimization with Advanced Instruction Folding Mechanism

  • Authors:
  • Austin Kim;J. Morris Chang

  • Affiliations:
  • -;-

  • Venue:
  • ISHPC '00 Proceedings of the Third International Symposium on High Performance Computing
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

The execution performance of Java has been a problem since it was introduced world wide. As one of the solutions, a bytecode instruction folding process for Java processors was developed in a PicoJava model and a Producer, Operator and Consumer (POC) model. Although the instruction folding process in these models saved extra stack operations, it could not handle certain types of instruction sequences. In this paper, a new instruction folding scheme based on a new, advanced POC model is proposed and demonstrates improvement in byte-code execution. The proposed POC model is able to detect and fold all possible instruction sequence types, including a sequence that is separated by other bytecode instructions. SPEC JMV98 benchmark results show that the proposed POC model-based folder can save more than 90% of folding operations. In addition, a design of the proposed POC model-based folding process in hardware is much smaller and more efficient than traditional folding mechanisms. In this research, the proposed instruction folding technique can eliminate most of the stack operations and the use of a physical operand stack, and can thereby achieve the performance of high-end RISC processors.