Dynamic Compilation for Reducing
Energy Consumption of I/O-IntensiveApplications
Seung Woo Son, Guangyu Chen,
Alok Choudhary
Mahmut KandemirDept. of ECE
Dept. of CSE
Northwestern University
Pennsylvania State University
choudhar@ece.northwestern.edu{sson,gchen,kandemir}@cse.psu.edu
The 18th International Workshop on Languages andCompilers for Parallel Computing (LCPC 05)
October 20~22, 2005

Outline
Motivation
Dynamic Compilation
Our Dynamic Compilation Framework– Dynamic compiler/linker– Metadata manager– Layout manager– High-level I/O libraryExperimental ResultsConclusion
10/22/2005

LCPC 20052Motivation

Tera-scale high-performance computing
has enabled scientists to tackle verylarge and computationally challenging
problems– Data-intensive, I/O-intensive, and energy
consuming

To cope with larger problems and datasizes, models and applications need tobe dynamic in nature
10/22/2005

LCPC 2005

3

I/O is bottleneck*Source: Terascale Data Management, LLNL.
10/22/2005

LCPC 2005

4

Energy Consumption?
Processor
17%

Memory7%

Others
10%

Cooling
40%

I/O

26%
*Source: Mike Rosenfield, ACEED, February 2003.

10/22/2005

LCPC 2005

5

Related Work
Academic/industry-based dynamic compilers– Dynamo, DAISY, PIN, DyC, …

All efforts focused on enhancing theperformance, i.e., their goal is to reduce theexecution cycles
Recently, dynamic voltage/frequency scaling
technique proposed using dynamic compilation-> focused on reducing processor’s energy
consumption [MICRO-38]
10/22/2005

LCPC 2005

6

Our Goal

To capture high-level dynamic behaviors
in the I/O-intensive applications using
dynamic compilers
Propose a dynamic compilation
framework for I/O-intensive
applications– Dynamic compiler/linker, metadata manager,
high-level I/O library, and layout manager

10/22/2005

LCPC 2005

7

Why Dynamic Compilation?

Dynamic compilation exploits run-timestate to generate code that is specificto run-time behavior
Large-scale scientific applications
exhibit the changes in data accesspatterns– Simulation runs, post-processing, andanalysis– Large quantities of data are generated andfrequent data layout changes occur

10/22/2005

LCPC 20058

Application Codes
Application
NameDescription

Data
Size

Energyconsumed(J)

AST Astrophysics

153.3GBFFT Fast Fourier
Transform

96.6GB

1939,451

Cholesky Sparse
Cholesky
Factorization87.4GB

2736,076

95.5GB

3142,905

SCF 3.0 Quantum
Chemistry

106.1GB

1149,518

104.0GB4651,114

Visuo 3D Visualization

RSense 2.0 Remote Sensing
Database
10/22/2005

Number ofPhase
Changes

LCPC 2005

3857,322

9

Framework overview
Application
Dynamic
Compiler/Linker
Mini Database(Metadata Manager)

Layout Manager
HLL

Parallel, Hierarchical
Storage System
10/22/2005

LCPC 200510

Dynamic Compiler/linker
Steering
Unit

Performance
TracerCompilation
RequestLinking
RequestPerformance
Statistics
Data Access
Pattern
10/22/2005

DynamicCompiler
DynamicLinker

Suggestions toLayout Manager
LCPC 2005

11Optimization Rules
Opt rule
CIO

Collective I/OSP

Sequential Prefetching

MCIOSTDPOLSSUDMDPPRE

SUB

10/22/2005

Optimization

Multi-collective I/O

Strided Prefetching

Replacement Policy Selection
Setting Striping Unit
Data Migration
Data Purging
Prestaging
Subfiling

LCPC 2005

12

Optimization Rules

Collective I/O (CIO)– Invoked if access pattern of the data isdifferent from its storage pattern, andmultiple processors are used to access thedata

Subfiling (SUB)– Invoked if a small subregion of a file isaccessed with high temporal locality

10/22/2005

LCPC 200513

column-wiseaccess patterncolumn-wiseaccess pattern
10/22/2005

Example: CIO
column-major
storage layout

andParallel
Independent
I/O

andCollective
I/O
row-major
storage layout
LCPC 200514

Experiment – application codes
Application
Name

Description

Data
Size

Energyconsumed(J)

AST Astrophysics

153.3GBFFT Fast Fourier
Transform

96.6GB

1939,451

Cholesky Sparse
Cholesky
Factorization

87.4GB

2736,076

Visuo 3D Visualization

95.5GB

3142,905

SCF 3.0 Quantum
Chemistry

106.1GB

1149,518

104.0GB4651,114

RSense 2.0 Remote Sensing
Database
10/22/2005

Number ofPhase
ChangesLCPC 2005

3857,322

15

Simulation parameters

Parallel processors: total 16– 1.8 GHz with 2MB 4-way set-associative cache, 1GB
main memory– Energy consumption measured using Wattch[ISCA’00]

Parallel disks– 8*18GB disks with low-power mode (spin-down)– TPM disk power model [ISCA’03]

Interconnect– 2D mesh– Infiniband switch/link power model [ISLPED’03]

10/22/2005

LCPC 2005

16

Architecture Considered

P/M
P/M

Tape
Subsystem
I/O
Network

Interprocessor
Communication
Network

P/M

P/M

Disk Subsystem
10/22/2005

LCPC 2005

17

Normalized Energy Consumption10/22/2005

LCPC 2005

PRE
M MC SUCIO IO B+P +PO OL
L+ST
DB
ESTDP

<AVERAGE>
Hand-Optimized: 19.8%
Our Approach: 16.1%
SPST
DPOL
SSS
DM

1101009080706050403020
100CIOM
CIO

Normalized Energy (%)

AST18

Breakdown of Dynamic
Compilation Energy

Dynamic Compiler
Performance Tracer

10/22/2005

Dynamic Linker
Steering UnitLCPC 2005

19

Normalized Energy (%)

Sensitivity Analysis –# of processors
100908070
60000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00000000000000000000000000000000000000000000000000000000000
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000000000000000000000000000

AST
FFT
Cholesky
Visuo
SCF3.000000000000
Rsense 2.0210/22/2005

48163264
Number of Processors
LCPC 2005

12820

Conclusion

Proposed a dynamic compilation
framework for I/O-intensiveapplications– Composed of four components– Employ a set of I/O optimizations

Reduce energy consumption of I/Ointensive applications
10/22/2005

LCPC 2005

21

Thank you!
sson@cse.psu.edu