Energy Metering, Tracing, and Management in Networked Embedded Systems
Prabal Dutta, Rodrigo Fonseca, Xiaofan Fred Jiang, Mark Feldmeier1, David E. Culler, Philip Levis2, Joseph Paradiso3, Scott Shenker and Ion Stoica
National Science Foundation, Microsoft, Hewlett-Packard, Intel and Sharp
Micropower Energy Metering: Our work on ultra-low-power energy metering has led to SPOT (2006) and iCount (2007). iCount is a new energy meter design for testbed and in-field usage. This design has been integrated into several new sensornet platforms: The HydroWatch Environmental Sensor, The ACME AC Meter, and the Benchmark Testbed Mote. This research was originally inspired by the need to evaluate the energy footprint of networking protocols in situ and at scale; something previously impossible across four decades of power draw and microseconds to seconds of dynamic range.
We find that for many systems that have a built-in switching regulator, adding a single wire between the regulator and the microcontroller enables real-time energy metering. iCount measures energy usage by counting the switching cycles of the regulator. We show that the relationship between load current and switching frequency is quite linear and demonstrate that this simple design can be applied to a variety of regulators. Our particular implementation exhibits a maximum error of less than ±20% over five decades of current draw, a resolution exceeding 1 μJ, a read latency of 15 μs, and a power overhead that ranges from 1% when the node is in standby to 0.01% when the node is active, for a typical workload. The basic iCount design requires only a pulse frequency modulated switching regulator and a microcontroller with an externally-clocked counter.
Network-wide Energy Profiling: We extended our micro-power energy metering work to track energy in embedded network devices. We have built Quanto, a network-wide time and energy profiler for embedded network devices. By combining well-defined interfaces for hardware power states, fast high-resolution energy metering, and causal tracking of programmer-defined activities, Quanto can map how energy and time are spent on nodes (by logical activities and by hardware peripherals) and across a network. This visibility allows one to precisely quantify the network-wide energy footprint of distributed phenomena, like a network flood or a routing update costs.
We find that by combining well-defined interfaces for hardware power states, fast high-resolution energy metering, and causal tracking of programmer-defined activities, Quanto can map how energy and time are spent on nodes and across a network. We show that being able to measure energy consumption at a 30 μs, 1 μJ resolution allows developers to precisely quantify the tradeoffs of low-level system implementation decisions, such as using DMA versus direct bus operations, and the effect of continuous crystal oscillator calibration. Finally, Quanto is lightweight enough that it has a minimal effect on system behavior: each sample takes 100 CPU cycles and 12 bytes of RAM. Implementing Quanto on the TinyOS operating system required modifying under 350 lines of code in the core of the OS and adding 1275 new lines.
Figure 1: Energy tracing with Quanto and iCount
Figure 2: Joule counting with iCount
Figure 3: Benchmark mote (top) with Epic Core iCount
Figure 4: Benchmark mote (bottom) with USB and 128 K FIFO
Figure 5: SPOT energy meter
- R. Fonseca, P. Dutta, P. Levis, and I. Stoica, "Quanto: Tracking Energy in Networked Embedded Systems," Proceedings of the Eighth USENIX Symposium on Operating System Design and Implementation (OSDI'08), December 2008.
- P. Dutta, M. Feldmeier, J. Paradiso, and D. Culler, "Energy Metering for Free: Augmenting Switching Regulators for Real-Time Monitoring," Proceedings of the Seventh International Conference on Information Processing in Sensor Networks (IPSN'08) Track on Sensor Platforms, Tools, and Design Methods (SPOTS '08), April 2008. Best Paper Award.
- X. Jiang, P. Dutta, D. Culler, and I. Stoica, "Micro Power Meter for Energy Monitoring of Wireless Sensor Networks at Scale," Proceedings of the Sixth International Conference on Information Processing in Sensor Networks (IPSN'07) Track on Sensor Platforms, Tools, and Design Methods (SPOTS '07), April 2007.
- X. Jiang, J. Taneja, J. Ortiz, A. Tavakoli, P. Dutta, J. Jeong, D. Culler, P. Levis, and S. Shenker, "An Architecture for Energy Management in Wireless Sensor Networks," International Workshop on Wireless Sensor Network Architecture (WSNA'07), April 2007.
- P. K. Dutta and D. E. Culler, "System Software Techniques for Low-Power Operation in Wireless Sensor Networks," Proceedings of the 2005 International Conference on Computer-Aided Design (ICCAD'05), 2005, pp. 925-932.