JVM 2001 Abstract
Energy Behavior of Java Applications from the Memory Perspective
N. Vijaykrishnan, M. Kandemir, S. Kim, S. Tomar, A. Sivasubramaniam, and M. J. Irwin, Pennsylvania State University
Abstract
With the anticipated dramatic growth of computing devices for mobile and
embedded environments, energy conscious hardware and software design
has taken center-stage together with performance. At the same time,
there is an increasing need to provide a portable and seamless software
environment for application development and interoperability. This paper
takes an important step in the confluence of these two emerging trends, by
examining the energy behavior of the memory system in the execution of
Java applications.
It is crucial to understand and optimize the energy behavior of
the memory system since instructions referencing memory can
contribute to a large fraction of the energy consumption when executing
Java applications.
Using an off-the-shelf JVM, a validated memory energy model, and a detailed
simulator, this paper presents a characterization of the energy
consumption by the cache and main memory when executing the SPEC JVM98
benchmarks in the JIT and interpreter modes. The energy consumption
is profiled for the different hardware components (instruction cache,
data cache, memory) and software components (class loading, garbage collection,
dynamic compilation). The results from such a characterization are useful
to the hardware designer for cache organizations and architectural
enhancements for reducing energy consumption. They are also useful to
the application and runtime system designer to identify energy bottlenecks,
and for code restructuring or algorithm redesign to alleviate these
bottlenecks.
|