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.

78<br />

presented in Chapter 4 were the branch despecializations involving a swap bytecode<br />

(if icmplt and if icmple), and the widening despecializations for bipush, sipush,<br />

ldc, goto and jsr.<br />

5.1.1 Benchmarks<br />

A total of 20 benchmarks were considered in this study. These include the 7 benchmarks<br />

from the SPEC JVM98 suite described in Section 4.2.2. In addition, the Java<br />

Grande Forum Benchmark Suite [3, 29, 28] (which contains 12 benchmarks) and the<br />

SciMark 2.0 benchmark [92] were also considered. Each benchmark is briefly described<br />

in the following paragraphs.<br />

JGF Crypt: This benchmarks performs International Data Encryption<br />

Algorithm (IDEA) encryption on an array of three million bytes. The<br />

algorithm makes heavy use of bit and byte manipulation operations.<br />

JGF Euler: A set of time-dependent Euler equations describing the flow<br />

through an obstructed channel are solved by this benchmark. The problem<br />

is modeled using a mesh of 64 by 256 elements. The solution is achieved<br />

using a fourth order Runge-Kutta method with both second and fourth<br />

order damping.<br />

JGF FFT: This benchmark performs a one-dimensional forward transform<br />

on 2097152 complex numbers. It makes extensive use of complex arithmetic,<br />

non-constant memory references and trigonometric functions.<br />

JGF HeapSort: An array of 1000000 integers is sorted using a heap sort<br />

algorithm.<br />

JGF LUFact: This benchmark solves 500 by 500 linear system using LU<br />

factorization and a triangular solve. This benchmark is considered to be<br />

memory and floating point arithmetic intensive.<br />

JGF MolDyn: A set of 2048 particles are modeled by this benchmark. They<br />

are interacting under a Lennard-Jones potential in a cubic spatial volume<br />

with periodic boundary conditions.<br />

JGF MonteCarlo: This financial simulation uses the value of underlying<br />

assets to price products using Monte Carlo techniques. A 2000 sample<br />

time series is generated with the same mean and fluctuation as a series of<br />

historical data.

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

Saved successfully!

Ooh no, something went wrong!