13.10.2014 Views

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

44<br />

of method parameters, local variables and items on the operand stack. An extended<br />

version of this study was published in Concurrency and Computation: Practice and<br />

Experience in 2003 [54]. The second study also considered the benchmarks in the Java<br />

Grande Forum Benchmark Suite. It extended the first study by presenting techniques<br />

for analyzing the data collected from dynamic profiling of Java applications. Finally,<br />

the third study presented similar information for the benchmarks in the SPEC JVM98<br />

Benchmark Suite.<br />

Additional studies have been performed by other researchers examining the bytecodes<br />

executed as Java applications execute. A study characterizing the bytecodes<br />

and Ultra-SPARC machine code executed for the SPEC JVM98 Benchmark suite was<br />

published by Radhakrishnan, Rubio and John in 1999 [95]. In 2001, Radhakrishnan<br />

et. al. published an additional study which extended their previous work [96]. Herder<br />

and Dujmovic also presented dynamic bytecode profile results in 2001 through the<br />

release of a technical report [57].<br />

3.4 Summary<br />

This section has presented work relating to many different aspects of Java profiling<br />

and optimization. Section 3.1 outlined other studies that consider modifying the<br />

Java virtual machine instruction set in order to improve the performance of Java<br />

applications. Many other optimization strategies have been developed which address<br />

different types of inefficiencies present in the Java Virtual Machine. A collection<br />

of these optimization techniques were presented in Section 3.2. Finally, Section 3.3<br />

presented the efforts of other researchers to understand the behaviour of Java applications<br />

through profiling. Tools that can be used to profile Java applications were<br />

examined in addition to the results of previous profiling studies.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!