MURAL - Maynooth University Research Archive Library



    Optimizations for a Java Interpreter Using Instruction Set Enhancement


    Casey, Kevin, 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.

    [thumbnail of KC-Optimizations-2005.pdf]
    Preview
    Text
    KC-Optimizations-2005.pdf

    Download (258kB) | Preview

    Abstract

    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.
    Item Type: Monograph (Technical Report)
    Keywords: interpreter; virtual machine; Java;
    Academic Unit: Faculty of Science and Engineering > Research Institutes > Hamilton Institute
    Item ID: 10189
    Depositing User: Hamilton Editor
    Date Deposited: 08 Nov 2018 14:59
    Publisher: Department of Computer Science, University of Dublin, Trinity College, Technical Report TCD-CS-2005-61
    Refereed: Yes
    URI: https://mu.eprints-hosting.org/id/eprint/10189
    Use Licence: This item is available under a Creative Commons Attribution Non Commercial Share Alike Licence (CC BY-NC-SA). Details of this licence are available here

    Repository Staff Only (login required)

    Item control page
    Item control page

    Downloads

    Downloads per month over past year

    Origin of downloads