HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our...

36
Getting Things Done on Computational RFIDs with Energy-Aware Checkpointing and Voltage-Aware Scheduling Benjamin Ransford, Shane Clark, Mastooreh Salajegheh, Kevin Fu Department of Computer Science University of Massachusetts Amherst HotPower ’08

Transcript of HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our...

Page 1: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

Getting Things Done ☑ on Computational RFIDs

with Energy-Aware Checkpointing and

Voltage-Aware Scheduling

Benjamin Ransford, Shane Clark,Mastooreh Salajegheh, Kevin Fu

Department of Computer ScienceUniversity of Massachusetts Amherst

HotPower ’08

Page 2: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Scenario:RFID Sensor Network

2Photos: Impinj, M. W. Moss Ltd., reinforcedearth.com

• Maintenance-free

• Batteryless nodes

• RF power harvesting

• Try to do public-key crypto.

[HotNets ’08]

Page 3: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Scenario:RFID Sensor Network

2Photos: Impinj, M. W. Moss Ltd., reinforcedearth.com

• Maintenance-free

• Batteryless nodes

• RF power harvesting

• Try to do public-key crypto.

[HotNets ’08]

Page 4: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Scenario:RFID Sensor Network

2Photos: Impinj, M. W. Moss Ltd., reinforcedearth.com

• Maintenance-free

• Batteryless nodes

• RF power harvesting

• Try to do public-key crypto.

[HotNets ’08]

Page 5: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

The next 15 minutes1. Batteryless computing with

computational RFID (CRFID)

2. Obstacles to computing on harvested energy

• Fluctuating supply, power loss

3. Mementos: s/w for getting things done

• Checkpointing, program reordering

3

Page 6: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Batteries constrain design.

Big & heavy relative to circuits.

Must be replaced or recharged.

Energy density slooooowly increasing. (1991: 204 Wh/l ... 2005: 514 Wh/l)

photos: Duracell, Micro-Tools.com,Crossbow 4

Page 7: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

How can we douseful computation without a battery?

5

Page 8: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

How can we douseful computation without a battery?

Focus on energy harvesting.

5

Page 9: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Perils of RF harvesting• Devices become dependent on energy supply

• Unpredictable supply

• Fluctuating voltage

• Frequent loss of power/state

6Photo: Lois Elling

Page 10: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Today’s batteryless computers

Photos: thisismoney.co.uk, TI

must finish in oneenergy lifecycle

non-programmablecircuitry

7

smart cardRFID tag

Page 11: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Computational RFID

• Modern ultra-low-power (1.5µA sleep, 600µA active) programmable microcontroller

• von Neumann architecture

• RAM, flash memory e.g.

(new term)

WISPNo battery...

RF harvesting.

8

[IEEE TIM ’08]

Page 12: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Computational RFID

• Modern ultra-low-power (1.5µA sleep, 600µA active) programmable microcontroller

• von Neumann architecture

• RAM, flash memory e.g.

(new term)

WISPNo battery...

RF harvesting.

8

[IEEE TIM ’08]

Page 13: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Reader

Power + Query

Static ID0x3C6B23A4

RFID:

Computational RFID:

Page 14: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Reader

Power + Query

Static ID0x3C6B23A4

Reader

Power + Query

Results ofcomputation or sensing

0x1234CAFE

RFID:

Computational RFID:

Page 15: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Perils of RF harvesting• Devices become dependent on energy supply

• Unpredictable supply

• Fluctuating voltage

• Frequent loss of power/state

10Photo: Lois Elling

Page 16: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Perils of RF harvesting• Devices become dependent on energy supply

• Unpredictable supply

• Fluctuating voltage

• Frequent loss of power/state

10Photo: Lois Elling

We can address these.

Page 17: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Getting things done

Major goal: help programs on CRFIDsmake forward progress despite

fluctuating voltage and constant interruption.

11

Page 18: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Our system: Mementos

• Designed to aid forward progress.

• Execution checkpointing (suspend, resume)

• Program reordering

12

Page 19: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Our system: Mementos

• Designed to aid forward progress.

• Execution checkpointing (suspend, resume)

• Program reordering

12

• Frequent loss of power/state

Page 20: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Our system: Mementos

• Designed to aid forward progress.

• Execution checkpointing (suspend, resume)

• Program reordering

12

• Frequent loss of power/state

•Fluctuating voltage

Page 21: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Checkpointing

• Idea: save state to flash before dying

• Problem: flash writes consume significant energy when it’s least available.

• Flash vs. register: 400x more energy

• Flash vs. memory: 40x more energy

13

• Frequent loss of power/state

Page 22: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Checkpointing

• Compile time static analysis:

• Compute per-block energy estimates

• Run time:

• CRFID checks own voltage

• Dynamic checkpointing decision

14

Page 23: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Energy estimation

15

Platform-specificenergy profile

Annotatedinstruction stream

at compile time

label1:MOV R11, R12 1 nJADD R12, R8 1 nJ(Flash write) 461 nJJMP label2 --... ...

Page 24: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

e.g.: modexp

• Halve 32-bit exponent, square 32-bit base

• No checkpointing: dies before finishing

16

Page 25: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

e.g.: modexp

• Halve 32-bit exponent, square 32-bit base

• No checkpointing: dies before finishing

16

Page 26: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

e.g.: modexp

• Halve 32-bit exponent, square 32-bit base

• No checkpointing: dies before finishing

16

• Checkpoint halfway through:

• Save base, exp., accumulated result after 15 iterations; die before finishing

• Restore from checkpoint; 17 more iterations; complete.

Page 27: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Program reordering

17

• Observations:

• Some operations require higher voltage

• Voltage tends to decline during each device lifecycle

• Microcontrollers don’t like continuously varying voltage (PLL logic limitations)

•Fluctuating voltage

Page 28: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Program reordering• Static analysis at compile time

• Estimate energy requirements

• Derive dependency graph

• Must not violate program semantics!

18

Page 29: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Program reordering• Voltage declines: reorder independent code

chunks at compile time to execute high-V ops when voltage is high

19

Min

. Req

uire

d Vo

ltage

Min

. Req

uire

d Vo

ltage

Before After

Flashwriteblock

I1I2 I3

I4

I5

I4

I1I2 I3 I5

Page 30: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Program reordering• Smaller timescale: adaptively reschedule

program chunks at run time to avoid logjams

20

Voltage

Run queue

{These neverget to run!

Page 31: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Challenges

• Predicting program behavior is hard.

• Balance checkpointing behavior:

• How much state to save

• How often to checkpoint

• Program reordering:

• Finding dependencies can be hard

21

Page 32: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Physical barriers

• Can’t harvest RF energy at arbitrary distances (current prototypes: ≤ 10 m)

• Diode drop limits energy harvesting

22

Page 33: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

CRFID applications

• Medical implants [Oakland ’08]

• RFID Sensor Networks [HotNets ’08]

• Computation in inaccessible locations.fragilehazardous

23

Page 34: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Future developments

• Our work:

• Fully implement checkpointing, reordering

• Device profiling

• CRFIDs:

• Intel Research competition(Google intel wisp challenge)

24

Page 35: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Summary

• Computational RFIDs: general-purpose batteryless computers

• Mementos for forward progress

• Checkpointing to cope with constant power interruptions

• Program reordering to cope with fluctuating voltage

25

Page 36: HotPower ’08 Getting Things Done on ... - Ben RansfordHotPower ’08 — Ben Ransford — Our system: Mementos •Designed to aid forward progress. •Execution checkpointing (suspend,

HotPower ’08 — Ben Ransford —

Applications?Challenges?Alternatives?

[email protected]

26