On the Effectiveness of Energy Metering on Every Node

On the Effectiveness of Energy
Metering on Every Node
Qiang Li
Omprakash Gnawali
Marcelo Martins
Rodrigo Fonseca
University of Houston
Brown University
May 22, 2013
IEEE DCOSS
1
Energy Accounting in Sensor Networks
Many projects optimize energy
Power information necessary
Ways to understand power draw of a system
Direct measurement: accurate but costly
Estimate: use a model, maybe not as accurate
2
If you can measure power,
just measure it.
If you can’t measure,
need to model and estimate.
3
If you can’t measure, need to model and estimate
Some platforms and large networks hard to measure
4
Energy Accounting in Practice
Individual mote
Direct measurement (iCount, Nemo)
Counter-based models: Event counts, IO
FSM models: 2-State FSM, System Call Driven FSM
Network-wide estimation
Direct measurement (Quanto Testbed)
Network-wide models
Proxies: Activity Accounting (e.g., num TX)
5
Questions
Do we need to measure power on
all the nodes?
Power models
Simple workloads
Real-world complex workloads
Do we need to adapt power
models over time?
6
Questions
Do we need to measure power on
all the nodes?
Power models
Simple workloads
Real-world complex workloads
Do we need to adapt power
models over time?
7
Power Model
A relationship between activity and power draw
Measurement
Model
Example: radio on (30mA), radio off (5mA)
8
Creating Power Model
Measured Power P (mW)
Power = A * DUTY_CYCLE + BASE_POWER
Linear regression to calibrate A and BASE_POWER
60
50
P = 56.46r + 2.266
R² = 0.99852
40
30
20
10
0
0
0.2
0.4
0.6
Radio Duty Cycle r
0.8
1
9
Global Model
Measurement
Model
Build a power model
Make one mote do a task
Measure power
Use the power model to
estimate power for rest of the
nodes for that task
10
Individual Model
Measurement
Build a per-node
power model
Make a mote do a task
Measure power
Model
Node1
Measurement
Model
Node2
User the model to
estimate power rest of
the time for that node
11
Do We Need Individual Model?
Measurement
Model
Node1
Measurement
Model
Node3
Measurement
Node2
Model
Measurement
Model
Node4
12
Questions
Do we need to measure power on
all the nodes?
Power models
Simple workloads
Real-world complex workloads
Do we need to adapt power
models over time?
13
Testbed
240 Quanto Testbed Motes
Epic motes [IPSN 08]
iCount onboard measurement [IPSN 08]
14
Simple Workload Experiment
Program
Program
Idle
Program
CPU
Program
Radio
Calibration
Time-Synchronized execution of identical
workloads on all the nodes in a loop
15
Current Draw Variation Across Motes
Measurements with Identical Workloads
Current Draw of 96 motes
across Temperature
Current Draw across
240 motes
Current Draw
Distribution
Variation up to 15% and resembles Normal Distribution
16
Error (percent)
15
10
5
0
Global Model
Measure Each Node
1 measurement
N measurements
What if we build model from
measurement of subset of nodes?
17
Building Model From Subset of Nodes
Estimating Avg energy use
Estimating Max energy use
90%
For Max energy estimation, worst-case error 10% with
model based on measurements on 90% nodes.
18
Questions
Do we need to measure power on
all the nodes?
Power models
Simple workloads
Real-world complex workloads
Do we need to adapt power
models over time?
19
Creating Different Workload Across Motes
CTP workload Experiment
100 motes
Channel 26
1-s LPL sleep interval
20
Creating Power Model
Measured Power P (mW)
Power = A * DUTY_CYCLE + BASE_POWER
Use linear regression to calibrate A and BASE_POWER
60
50
P = 56.46r + 2.266
R² = 0.99852
40
30
20
10
0
0
0.2
0.4
0.6
Radio Duty Cycle r
0.8
1
21
CTP: Building Model with a Subset
Calibrated by one mote
Calibrated by a subset
Accuracy > 97% by measuring 10% motes
22
Questions
Do we need to measure power on
all the nodes?
Power models
Simple workloads
Real-world complex workloads
Do we need to adapt power
models over time?
23
Models That Change Over Time
• Factors that may change power draw
– Temperature
– Humidity
• Adapting models Temperature
– Global temperature-power model
– Individual temperature-power model
24
Quanto: Temperature And Current
Change due to temperature < 1.6%
25
TelosB: Temperature and Current
Change in Current
Measure current at -14℃ to 45℃ on 6 motes
15%
13.33%
10%
5%
1.99%
2.04%
2.02%
1.17%
CPU
Mem
FlashMem
Radio-on
0%
Idle
Workloads
Small change in current even with large
change in temperature
26
Questions
Do we need to measure power on
all the nodes?
Power models
Simple workloads
Real-world complex workloads
Do we need to adapt power
models over time?
27
Relative Error (percent)
Adapting Models to Temperature
4
3
2
1
0
3.2
Worst-case
error
1.09
0.72 Avg error
0.042
Global
Individual
1.07
0.044
1.12
0.033
Individual Individual
+ Global + Individual
Temp
Temp
Limited gain from incorporating
temperature in the model
28
Conclusion
Variation in energy across nodes significant
(careful when using energy proxies)
Power model based on subset reduces errors
Impact of Temperature on power limited
Omprakash Gnawali
[email protected]
29