Post on 01-Jan-2016
description
Reducing the Energy Usage of Office Applications
Jason Flinn
M. Satyanarayanan
Carnegie Mellon University
Eyal de Lara
Dan S. Wallach
Willy Zwaenepoel
Rice University
2
Motivation
Energy is a vital resource in mobile computing
Previous work shows value of energy-aware adaptation Reduce fidelity Requires modification to application source code
Can this work without source code?Middleware-based proxy can help!
3
Validation
Common office applications can be made energy-aware Puppeteer uses well-defined data format and API Modified PowerPoint to reduce energy usage
Preview of results: Energy reductions up to 49% for some activities Proxy approach modifies PowerPoint behavior Other opportunities for increased energy-efficiency
4
Outline
Motivation
Background: Puppeteer
Energy benefits of adaptation
Other opportunities for extending battery lifetime
Future work and conclusions
5
Component-Based Adaptation
Documents often stored on a central file serverMust download and edit on a mobile clientCan save time and energy by editing a low-fidelity version
Server Client
skeleton
high-fidelity componentreintegrated
on save
reintegrated on save
missing component
6
Server
Puppeteer
DataServer
Client
PowerPointDocuments Client
ProxyServerProxy
TranscodedDocuments
Server proxy parses and transcodes documentsClient proxy uses external API to interact with PowerPoint
How much energy can component-based adaptation save?
Uses well-defined data formats, exported APIs
7
Measuring Application Energy Usage
0
2
4
6
8
10
12
14
16
0 50 100 150 200 250
Time (seconds)
Po
wer
(W
atts
)
Digital multimeter samples laptop power useApplications mark start and end of eventsEnergy usage is integral of power over time
EventStart
EventEnd
8
Benchmark Presentations
0
2
4
6
8
10
12
14
16
A B C D E F G H I J
Siz
e (M
B)
Full-Quality
Distilled
Benchmark consists of 10 PowerPoint presentationsSize and effect of distillation vary
9
Experiment: Loading Documents
Client: IBM 560X laptop with 2 Mb/s wireless networkServer: Wall-powered desktop
Client runs NT, PowerPoint, Puppeteer client proxyServer runs NT, Apache, Puppeteer server proxy
Measure energy used to load documents: From Apache (native mode) Using Puppeteer (distilling out multimedia data)
10
Energy Benefit for Loading Documents
0
500
1000
1500
2000
2500
3000
3500
4000
A B C D E F G H I J
En
erg
y (J
ou
les)
Native
Puppeteer (Distilled)
Average energy usage reduced 40%!
Oops!
With simple filter, energy usage reduced 49%!
11
Experiment: Editing Documents
Load documents on the client
Measure energy needed to page through document for: Full-quality version Distilled version
12
Energy Benefit for Editing Documents
0
100
200
300
400
500
600
700
800
A B C E F G H I J
En
erg
y (J
ou
les)
Full Quality
Distilled
Distillation reduces paging energy 13%Benefit less on subsequent traversals of document
13
Reducing Computational Fidelity
Activity No pause 100 ms. pauseSpelling + Auto-Correct 1.9% 2.2%Grammar-Checking 3.1% 1.1%Office Assistant 9.5% 4.8%
Overhead
How much energy is used by background activities?
Not a lot to be gained by disabling most activities . . .
But, the Office Assistant is quite expensive!
14
Experiment: Autosave Frequency
Documents are saved on the client Autosaves over network prohibitively expensive! Reducing frequency saves energy But, greater possibility of losing data!
Measure additonal power savings for autosave frequency: One minute (very expensive) Five minutes (less expensive) No autosave (optimal savings)
15
Effect of Autosave Frequency
0
1
2
3
4
5
6
7
8
9
A B C D E F G H I J
Po
wer
(W
atts
)
1 Minute Autosave
5 Minute Autosave
No Autosave
Average energy reduction of 11%
16
Outline
Motivation
Puppeteer: component-based adaptation
Energy benefits of adaptation
Other opportunities for extending battery lifetime
Future work and conclusions
17
Comparing Puppeteer and Native Mode
0
0.5
1
1.5
2
2.5
3
A B C D E F G H I J
No
rmal
ized
En
erg
y
Native (Baseline)
Puppeteer
Mystery: Why does Puppeteer take less time and energy to load a presentation than native mode?
18
Effect of Network Power Management
Hypothesis: power management slows down transfer Network receiver disabled for 100 ms. periods Wireless bandwidth 2 Mb/s In effect, a high bandwidth*delay product (25 KB) Socket buffer and receive window only 8 KB Native mode uses only 1 connection Puppeteer uses up to 4 connections
Verified this hypothesis by measuring: With 64KB buffer sizes Without network power management
19
Network Power Management Results
0
0.5
1
1.5
2
2.5
3
A B C D E F G H I J
No
rmal
ized
En
erg
y
Native (Baseline)
Puppeteer
Native (64KB Buffers)
Native (No PM)
With 64 KB buffers, native mode uses 26% less energyDisabling power management saves additional 18%
20
Disk Power Management
0
2
4
6
8
10
12
14
700 750 800 850 900
Time (seconds)
Po
wer
(W
atts
)
Autosave
Disk spinning = Wasted Energy
Disk power management predicts periods of inactivityAfter autosave, waits for additional activityDisk in high-power state for 30 seconds
21
Transparent Power Management
Applications and power mgmt. layer don’t communicate Power management balances performance & energy Tries to minimize impact on applications Difficult without knowledge of application activity
Transparent power management can help! Applications provide hints about their activities OS combines hints from all applications OS chooses the optimal power mgmt. settings
Applications
TransparentPower
ManagementLayer
CPU
Disk
Network
Power Mgmt.Settings
Hints
22
PowerPoint and Power Management
Puppeteer could provide PM hints for PowerPoint
1. Signals start and end of large transfers Power management disabled during transfers Uses 18% less energy, 22% less time
2. Signals when regular autosave is occurring Can spin-down disk immediately after autosave Uses 4% less energy
23
Outline
Motivation
Puppeteer: component-based adaptation
Energy benefits of adaptation
Other opportunities for extending battery lifetime
Future work and conclusions
24
Future Work
System support for energy-aware applications Currently open-source implementation (Linux) Monitors supply and demand, adjusts fidelity Port to closed-source environment (Windows)
Transparent power management Create API for expressing application hints Develop algorithms that combine hints Investigate other hardware devices (CPU)
25
Conclusions
No one magic bullet for reducing PowerPoint energy useBut, many opportunities for significant energy reduction
Reducing data fidelity Reducing computational fidelity Transparent power management
Puppeteer provides a mechanism for achieving reductions Proxy approach requires no source-code modification Takes advantage of exported APIs
Other potential domains for this work: Other Microsoft Office applications Web browsers