Institutions | About Us | Help | Gaeilge
rian logo


Mark
Go Back
Optimizations for a Java Interpreter Using Instruction Set Enhancement
Casey, Kevin; Ertl, Anton; Gregg, David
Several methods for optimizing Java interpreters have been proposed that involve augmenting the existing instruction set. In this paper we describe the design and implementation of three such optimizations for an efficient Java interpreter. Specialized instructions are new versions of existing instructions with commonly occurring operands hardwired into them, which reduces operand fetching. Superinstructions are new Java instructions which perform the work of common sequences of instructions. Finally, instruction replication is the duplication of existing instructions with a view to improving branch prediction accuracy. We describe our basic interpreter, the interpreter generator we use to automatically create optimised source code for enhanced instructions, and discuss Java specific issues relating to these optimizations. Experimental results show significant speedups (up to a factor of 3.3, and realistic average speedups of 30%-35%) are attainable using these techniques.
Keyword(s): interpreter; virtual machine; Java
Publication Date:
2005
Type: Report
Peer-Reviewed: Yes
Institution: Maynooth University
Citation(s): Casey, Kevin and Ertl, Anton and Gregg, David (2005) Optimizations for a Java Interpreter Using Instruction Set Enhancement. Technical Report. Department of Computer Science, University of Dublin, Trinity College, Technical Report TCD-CS-2005-61.
Publisher(s): Department of Computer Science, University of Dublin, Trinity College, Technical Report TCD-CS-2005-61
File Format(s): other
Related Link(s): http://eprints.maynoothuniversity.ie/10189/1/KC-Optimizations-2005.pdf
First Indexed: 2018-11-09 06:00:36 Last Updated: 2018-11-09 06:00:36