Beruflich Dokumente
Kultur Dokumente
milliwatt to megawatt
Joint work with Aman Kansal, Jie Liu, Suman Nath, Bodhi Priyantha
Scalable
Radio “brick” (WiFi)
interconnect
Low Power Processor “brick” (MSP430)
Lymberopoulos, Priyantha, Zhao, "mPlatform: A Reconfigurable Architecture and Efficient Data Sharing Mechanism for Modular Sensor Nodes." IPSN’07.
Lymberopoulos, Priyantha, Goraczko, Zhao, "Towards Energy Efficient Design of Multi-Radio Platforms for Wireless Sensor Networks.“ IPSN’08.
Map tasks to components
• Multiple processors
– Radio MAC processor, app processor, DSP
– Each has multiple P-states/C-states
Map application to
components and power states
Static Dynamic
(design time) (run time)
Task Allocation
• Task processing requirements may only
become known at run time
– Varying sensed event rate, varying application mix
supported by platform
• Solution: Adapt power state usage
dynamically
– E.g. Trade-off responsiveness for power savings
through increased sleep state usage
Data centers
6
Data Center Genome
Saving energy and improving operation efficiency by networked sensing, data mining, and control.
MSR Genomotes
Power Systems
Operation monitoring,
Capacity planning,
Device provisioning,
Resource control
Networking Server load
Messenger Connection Services
Login Requests Clients
Pick a CS
Dispatch Server
Connection
Load reporting
Backend Servers:
Authentication, address book, etc.
Workload and power
Weekly Windows Live Messenger traffic on 60 servers
80
2
600 60
40
400 1
20
200 0
0 20 40 60 80 100 120 140 160 0 Sleep Idle 20% 40%
40$ 60% 80% 100%
CPU Utilization
Time in hours
Load Load
Dispatcher Dispatcher
Li (t ) Li (t )
N i (t ) N tgt
N i (t )
Di (t ) Di (t )
Load Dispatching Strategies
Load Balancing Load Skewing
pi
1 1 N
( i ) round robin over
K K N tot busiest server as long as Ni Ntgt
e.g. Ntgt 0.9 N max
controls convergence rate at steady states
Starve a server before shutting down Declare Ni Ntail as shut down candidates
Load Load
Dispatcher Dispatcher
Li (t ) Li (t )
N tgt
N i (t ) N i (t )
Di (t ) Di (t )
Energy Saving and Performance
Tradeoffs
kWh With vs. Without Forecasting
440
420
400
Forecasting Balancing Starving
Reactive skewing
380 Nt:10K
Reactive Balancing Starving
360
Nt:40K
S: 2hr
340
S: 4hr
320 SIDs
0 200000 400000 600000 800000 1000000
JouleMeter
Auto-optimize
Workload (Eg. Compiler warning:
Change line 136 in
Program.c to save …)
Designer Insights
(Eg. Network is holding up the
CPU in method X …)
Optimizations
Aman Kansal and Feng Zhao, "Fine-Grained Energy Profiling for Power-Aware Application Design,“ HotMetrics08, June 6, 2008,
Annapolis, MD.
How it works
Test Workload
Execution
Error
Analysis
<
14
Watts
40
12 CPU
Disk
Watts
Watts
30 10
8
20
6 Memory
4
10
2
0 0
0 50 100 150 200 250 300 0 50 100 150 200 250 300
TimeTime(s) Time(s)
20
Controlled Load App 2
2000
Disk
15 Joules 1500
Watts
10
System 1000
5 500
0 0
0 50 100 150 200 250 300 Total App 1 App 2
Time(s)
Making energy a first class citizen in design
Think holistically
• Optimize across workload, performance, energy
• Relating energy saving to end user experiences