Title
Exploiting Java-ILP on a Simultaneous Multi-Trace Instruction Issue (SMTI) Processor
Abstract
The available Instruction Level Parallelism in Java bytecode (Java-ILP) is not readily exploitable due to dependencies involving stack operands. The sequentialization due to stack dependency can be overcome by identifying bytecode-traces, which are sequences of bytecode instructions that when executed leave the operand-stack in the same state as it was at the beginning of the sequence. Instructions from different bytecode-traces have no stack-operand dependency and hence can be executed in parallel on multiple operand-stacks. We propose a simultaneous multi-trace instruction-issue (SMTI) architecture for a processor that can issue instructions from multiple bytecode-traces to exploit Java-ILP. Extraction of bytecode-traces and nested bytecode folding are done in software during the method verification stage. SMTI combined with nested folding resulted in an average ILP speedup of 54% over the base in-order single-issue Java processor, when experimented withSPECjvm98, Scimark and Linpack benchmarks.
Year
DOI
Venue
2003
10.1109/IPDPS.2003.1213176
IPDPS
Keywords
Field
DocType
bytecode instruction,different bytecode-traces,exploiting java-ilp,multiple operand-stacks,multiple bytecode-traces,linpack benchmarks,stack-operand dependency,simultaneous multi-trace instruction issue,nested folding,java bytecode,single-issue java processor,nested bytecode folding,out of order,informatics,hardware,sun,parallel programming,pipelines,speedup,instruction level parallelism,computer architecture,java
Instruction-level parallelism,Programming language,Computer science,Operand,Parallel computing,Java processor,Java bytecode,Out-of-order execution,Java,Bytecode,Distributed computing,Speedup
Conference
ISBN
Citations 
PageRank 
0-7695-1926-1
5
0.47
References 
Authors
9
4
Name
Order
Citations
PageRank
R. Achutharaman150.47
R. Govindarajan250.81
G. Hariprakash370.84
Amos R. Omondi4173.88