• No results found

Techniques for Real-System Characterization of Java Virtual Machine Energy and Power Behavior

N/A
N/A
Protected

Academic year: 2021

Share "Techniques for Real-System Characterization of Java Virtual Machine Energy and Power Behavior"

Copied!
19
0
0

Loading.... (view fulltext now)

Full text

(1)

Techniques for Real-System

Characterization of Java Virtual

Machine Energy and Power

Behavior

Gilberto Contreras

Margaret Martonosi

Department of Electrical Engineering Princeton University

(2)

Why Study Power in Java Systems?

„

The Java platform has been adopted in a

wide variety of devices

„

Java servers demand performance,

embedded devices require low-power

„

Performance is important,

power/energy/thermal issues are equally

important

„

How do we study and characterize these

(3)

Hardware

Power/Performance Design Issues

Operating System Java Virtual Machine

(4)

Hardware

Power/Performance Design Issues

Operating System Garbage Collection Class Loader Runtime Compiler Execution Engine

Java Virtual Machine Java Application

‰ How do the various software layers affect power/performance

characteristics of hardware?

‰ Where should time be invested when designing power and/or thermally

(5)

Outline

„

Approaches for Energy/Performance

Characterization of Java virtual machines

„

Methodology

‰

Breaking the JVM into sub-components

‰

Hardware-based power/performance

characterization of JVM sub-components

„

Results

‰

Jikes & Kaffe on Pentium M

‰

Kaffe on Intel XScale

(6)

Power & Performance Analysis of Java

„

Simulation Approach

Flexible: easy to model non-existent hardware

Simulators may lack comprehensiveness and accuracy

Thermal studies require tens of seconds granularity

„

Accurate simulators are too slow

x

„

Hardware Approach

Able to capture full-system characteristics and effects

Data gathering is comparable to hardware speeds

Only applicable to existent hardware

x

(7)

CPU Memory

Hardware-based Characterization

Hardware DAQ CH0 CH1 CH2 CH3 CH-CH+ scheduler Virtual Machine Class Loader ID: 0001 Compiler ID: 0100 Execution Engine ID: 1000 Garbage Collector ID: 0010 0010 Power measurements Track code region

(8)

Two Virtual Machines

Jikes RVM

Kaffe JVM

Design goal Architecture support Garbage collection Runtime optimizations

High performance Flexibility and portability

High-end processors High-end to embedded

Multiple collectors Mark-and-sweep

Runtime compiler with different optimization

levels

(9)

Two Platforms

Pentium M (P6)

Intel XScale

High-performance mobile computers High-end handheld devices 1.6Ghz, 512MB RAM 400Mhz, 32MB RAM 31W 1.4W Jikes RVM Kaffe Kaffe Platform Type Configuration Theoretical Max Power JVM Used

(10)

Outline

„

Approaches for Energy/Performance

Characterization of Java virtual machines

„

Methodology

‰

Breaking the JVM into sub-components

‰

Power/performance hardware-based

characterization of JVM sub-components

„

Results

‰

Jikes & Kaffe on Pentium M

‰

Kaffe on Intel XScale

(11)

Jikes Energy Distribution on P6

0% 20% 40% 60% 80% 100% 32 128 32 128 32 128 32 128 32 128 48 128

app gc cl base opt_comp

SemiSpace Garbage Collector

Heap size (MB)

Energy Usage

compress

(12)

0% 20% 40% 60% 80% 100% 32 128 32 128 32 128 32 128 32 128 48 128

app gc cl base opt_comp

Jikes Energy Distribution on P6

• JVM: Up to 60% of the total energy

• GC: Average 37% of the total energy of SpecJVM98

SemiSpace Garbage Collector

Heap size (MB)

Energy Usage

compress

(13)

0 500 1000 1500 2000 2500 3000 3500 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128

SemiSpace MarkSweep GenMS GenCopy

Jikes Energy-Delay Product on P6

„ Jikes: heap size has a significant impact on energy efficiency

„ EDP decrease across heap sizes due to a decrease in application execution

comp

ress jess db javac jack

EDP (J*sec)

(14)

Jikes Power Consumption on P6

„ Average power for JVM varies little across heap-sizes

„ Garbage collector is high energy consumer, but low power

comp

ress jess db javac jack fop

Watts

GenCopy Garbage Collector

0 2 4 6 8 10 12 14 16 18 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 48 80 112 app gc cl Heap size (MB)

(15)

Jikes Peak Power on P6

Watts

„

Execution engine has the highest peak-power

comp ress jess db javac jack fop 0 2 4 6 8 10 12 14 16 18 20 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 48 80 112 app gc cl Heap size (MB)

(16)

Jikes versus Kaffe: Energy Distribution on P6

„ Kaffe: high application energy caused by long execution times „ Kaffe: 8% of total average energy goes to virtual machine

0% 20% 40% 60% 80% 100% 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 48 80 112 app gc cl jit com pre ss jes s db jav ac jack fop 0% 20% 40% 60% 80% 100% 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 48 80 112

app gc cl base_comp opt_comp

com pre ss jes s db jav ac jack fop

Jikes

Kaffe

(17)

Kaffe Across Platforms

„ XScale: no classes are included in the binary

„ XScale: GC only represents 6% of the total energy consumed

0% 20% 40% 60% 80% 100% 12 16 20 24 28 32 12 16 20 24 28 32 12 16 20 24 28 32 12 16 20 24 28 32 12 16 20 24 28 32 app gc cl jit com pre ss jess db java c jack com pre ss jess d b java c jack 0% 20% 40% 60% 80% 100% 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 32 64 96 128 48 80 112 app gc cl jit

(18)

Conclusions

„

Methodology

‰

The complexity of the Java virtual machine calls for a more

in-depth power/energy analysis

‰

Hardware-based characterization of the virtual machine’s

sub-components allow long execution times and trustworthy

measurements

„

Lessons learned

‰

In both platforms, JVM energy overhead is considerable

‰

Jikes: the GC is low power but high energy consumer (up to

37% on average)

‰

For Kaffe on XScale, the class loaded becomes high-energy

(19)

References

Related documents

Analyzing Java Virtual Machine (JVM) Memory Management and Work Processes .... Analyzing Garbage

Most data recovery documents come with a standard warning: do not try to make your image in the same filesystem you are recovering from.. While this may seem self-evident,

Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z] Langevin, Melinda tranquil, tropical room Lasso selection tool

The list of Machine ID.Group IDs.Organization IDs displayed is based on the Machine ID / Group ID / Organization ID filter and the machine groups the user is authorized to see

Evaluation of BER test results, frequency, and signal level helps identify potential sources of problems such as faulty or loose cable crimps, improper line build out, or miss-

Links: - Aerospace Medical Association (AsMA) Pilot Mental Health: Expert Working Group Recommendations , p... Appendix 1: Joint EAAP-ECA-ESAM paper on Pilot-AME Relationship

The signal will just input from Ch1 or CH3 respectively in 1 OOV mode, so conne·ct Ch 1 or C:h3 but just keep Ch2 or CH4 disconnected and turn Ch 1 and Ch3 volume control to

 A Virtual System Server is the Hardware (a real physical computer) and the Software (a Virtual Machine Monitor, or hypervisor) that can run one or more virtual machines.... The