Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute...

19
Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results • Why and when it works? • How? The mechanisms required.

Transcript of Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute...

Page 1: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Remote Execution toSave Local Energy

Compute locally on battery power

vs

Transmit to wired compute server + Idle in low power mode + Receive results

• Why and when it works?

• How? The mechanisms required.

Page 2: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Effectiveness?(Rudenko et al)

• Identical, dedicated laptops

• Wireless WaveLANsend 3W, receive 1.48 W, sleep .18W, 2MB/s

• Li ion battery power,measured by APM metric

• No interference• Display and disk timeouts of

1 min

Page 3: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Compilation

• Both have replicas of source code to be compiled

• Sends back stripped executables

• Send modifications only

Page 4: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Compilation Results

0

2

4

6

8

10

12

14

0 125 250 375 500

KB of changed code

% Battery consumed

localremote

Page 5: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Gaussian Solution of System of Equations

• Little I/O, little VM paging

• Solution vector returned

• Entire matrix shipped

Page 6: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Gaussian Results

0123456789

500x

500

700x

700

800x

800

900x

900

1000

x100

0size of matrix

% Battery

consumed

localremote

Page 7: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Latex

• Both have replicas of source to be formatted

• Sends back formatted document

• Send altered text only• Application with heavy

I/O

Page 8: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Latex Results

00.10.20.30.40.50.60.70.80.9

35 112 439 843

KB of altered text

% Battery consumed

localremote

Page 9: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

With Noise

A second pair of machines with saturated socket noise resulting in significant backoff and retransmit

00.5

11.5

22.5

33.5

44.5

0 125 250 375 500

KB changed

% Battery

Changed

no noise noise

Page 10: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

CRA-W Summer Project ‘99

• D’Agents server• Fast server machine (but

interpretation of Tcl)

• Tcl agents “parked” on the Palm; PalmOS C program of similar functionality

• PilotLauncher - to ship code and data

Transmission:150mW (Palm) +387 mW (modem)14.4Kbps

Computation:ave. 130mW

Page 11: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Results (constant message size)

0

5

10

15

20

25

30

100 125 150 175 200

Iterations (millions)

KJouleslocalremote

Page 12: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Results (data shipped)

0

10

20

30

40

50

60

1 16 32 48 64

KB shipped

KJo

ules

localremote

Page 13: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Energy Aware Adaptation(Flinn and Satya - SOSP99)

• Odyssey - system for adaptation

• Fidelity - the degree to which delivered data matches the reference copy at the server– type-specific notion

• Question: Can lowering fidelity be used as a mechanism for energy-aware adaptation? Enough savings possible?

Page 14: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Odyssey ArchitectureMonitorsresourceavailability

Typespecific

Page 15: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Odyssey Speech Recognizer

• Local, remote, & hybrid(compressed source)

• fidelity: reduced vocabulary database– tradeoff: fewer words but

fewer mistakes

Page 16: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Energy of Speech Recognition

• Baseline - local, full fidelity, no HW power mgt.

• HW-only - display off, disk spun-down, network off

• Remote - most of the energy spent in idle mode on portable

Reducedfidelity

Page 17: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Conclusions

• Significant variation in effectiveness of fidelity reduction across data objects

• Significant variation in effectiveness of fidelity reduction across applications

• Reducing fidelity can enhance effectiveness of HW power management (by lowering utilization of HW)

Page 18: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

How?• Mixed results as to the effectiveness of remote

execution for energy savings.How can “right” choices be made?

• What aspects could benefit from more energy efficient implementation of the support systems themselves?– D’agents system used interpretation on the server vs.

direction execution on portable.– Implementation of “Idle”

• What are the basic building blocks?

Page 19: Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.

Infrastructure Requirements (Rudenko et al)

• Ability to do remote execution, shipping arguments and results– Energy efficient listening on portable

• Replication mechanisms and synchronization for data and code.

• Providing consistent execution environment• Decision strategy for choosing between local and

remote (UI or automagically?)

Workload prediction