Abstract
This paper derives energy-optimal batching periods for asynchronous multistage data processing on sensor nodes in the sense of minimizing energy consumption while meeting end-to-end deadlines. Batching the processing of (sensor) data maximizes processor sleep periods, hence minimizing the wakeup frequency and the corresponding overhead. The algorithm is evaluated on mPlatform, a next-generation heterogeneous sensor node platform equipped with both a low-end microcontroller (MSP430) and a higher-end embedded systems processor (ARM). Experimental results show that the total energy consumption of mPlatform, when processing data flows at their optimal batching periods, is up to 35% lower than that for uniform period assignment. Moreover, processing data at the appropriate processor can use as much as 80% less energy than running the same task set on the ARM alone and 25% less energy than running the task set on the MSP430 alone.
Similar content being viewed by others
References
Acquaviva A, Benini L, Riccò B (2001) Processor frequency setting for energy minimization of streaming multimedia application. In: CODES, pp 249–253
Agarwal Y, Hodges S, Scott J, Chandra R, Bahl P, Gupta R (2009) Augmenting network interfaces to reduce pc energy usage. In: USENIX symposium on networked systems design and implementation (NSDI ’09)
Baruah S (2004) Cost efficient synthesis of real-time systems upon heterogeneous multiprocessor platforms. In: Proc of 18th international parallel and distributed processing symposium (IPDPS’04), pp 120–128
Benini L, Bogliolo A, De Micheli G (2002) A survey of design techniques for system-level dynamic power management, pp 231–248
Benveniste A, Caspi P, Edwards S, Halbwachs N, Le Guernic P, de Simone R (2003) The synchronous languages 12 years later. Proc IEEE 91(1):64–83
Bhattacharyya SS, Murthy PK, Lee EA (1999) Synthesis of embedded software from synchronous dataflow specifications. J VLSI Signal Process Syst 21(2):151–166
Buck JT (1993) Scheduling dynamic dataflow graphs with bounded memory using the token flow model. PhD thesis
Cai L, Lu Y-H (2004) Dynamic power management using data buffers. In: DATE ’04: Proceedings of the conference on design, automation and test in Europe, Washington, DC, USA. IEEE Computer Society, New York, pp 526–531
Cao Q, Wang D, Abdelzaher T, Priyantha B, Liu J, Zhao F (2010) Energy-optimal batching periods for asynchronous multistage data processing on sensor nodes: foundations and an mPlatform case study. In: IEEE RTAS, Stockholm, Sweden. IEEE Computer Society, New York
Chao L-F, Sha EH-M (1997) Scheduling data-flow graphs via retiming and unfolding. IEEE Trans Parallel Distrib Syst 8(12):1259–1267
Chu D, Popa L, Tavakoli A, Hellerstein JM, Levis P, Shenker S, Stoica I (2007) The design and implementation of a declarative sensor network system. In: SenSys ’07: Proceedings of the 5th international conference on embedded networked sensor systems. ACM, New York, pp 175–188
Girod L, Jamieson K, Mei Y, Newton R, Rost S, Thiagarajan A, Balakrishnan H, Madden S (2006) Wavescope: a signal-oriented data stream management system. In: SenSys ’06: Proceedings of the 4th international conference on embedded networked sensor systems. ACM, New York, pp 421–422
Goraczko M, Liu J, Lymberopoulos D, Matic S, Priyantha B, Zhao F (2008) Energy-optimal software partitioning in heterogeneous multiprocessor embedded systems. In: DAC, pp 191–196
Ha S, Lee EA (1997) Compile-time scheduling of dynamic constructs in dataflow program graphs. IEEE Trans Comput 46(7):768–778
Henzinger TA, Horowitz B, Kirsch CM (2001) Giotto: a time-triggered language for embedded programming. In: EMSOFT, pp 166–184
Jin Y, Satish N, Ravindran K, Keutzer K (2005) An automated exploration framework for FPGA-based soft multiprocessor systems. In: CODES+ISSS. ACM, New York, pp 273–278
Khemka A, Shyamasundar RK (1997) An optimal multiprocessor real-time scheduling algorithm. J Parallel Distrib Comput 43(1):37–45
Krishna CM, Lee Y-H (2000) Voltage-clock-scaling adaptive scheduling techniques for low power in hard real-time systems. In: RTAS, pp 156–165
Lee EA, Messerschmitt DG (1987) Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans Comput 36(1):24–35
Lu Y-H, Benini L, Micheli GD (2002) Dynamic frequency scaling with buffer insertion for mixed workloads. IEEE Trans CAD Integr Circuits Syst 21(11):1284–1305
Luo J, Jha, NK (2000) Power-conscious joint scheduling of periodic task graphs and aperiodic tasks in distributed real-time embedded systems. In: ICCAD. IEEE Press, New York, pp 357–364
Lymberopoulos D, Priyantha B, Zhao F (2007) mPlatform: a reconfigurable architecture and efficient data sharing mechanism for modular sensor nodes. In: IPSN ’07
Lymberopoulos D, Priyantha NB, Goraczko M, Zhao F (2008) Towards energy efficient design of multi-radio platforms for wireless sensor networks. In: IPSN ’08
Ning X, Cassandras CG (2007) Message batching in wireless sensor networks—a perturbation analysis approach. In: Proceedings of the 46th IEEE conference on decision and control
Pavlovski C, Boyd C (199) Efficient batch signature generation using tree structures. Technical Report CrypTEC’99, City University of Hong Kong
Sengul C, Bakht M, Harris AF, Abdelzaher T, Kravets R (2008) Improving energy conservation using bulk transmission over high-power radios in sensor networks. In: ICDCS ’08
Shin Y, Choi K, Sakurai T (2000) Power optimization of real-time embedded systems on variable speed processors. In: CAD, pp 365–368
Shih E, Bahl P, Sinclair MJ (2002) Wake on wireless: an event driven energy saving strategy for battery operated devices. In: MobiCom ’02: Proceedings of the 8th annual international conference on mobile computing and networking
Sivanthi T, Killat U (2004) Global scheduling of periodic tasks in a decentralized real-time control system. In: IEEE IWFCS. IEEE Press, New York
Sorber J, Banerjee N, Corner MD, Rollins S (2005) Turducken: hierarchical power management for mobile devices. In: MobiSys ’05: Proceedings of the 3rd international conference on mobile systems, applications, and services
Vapnyarskii I (2001) Lagrange multipliers. In: Hazewinkel M (ed) Encyclopaedia of mathematics. Springer, Berlin
Whitehouse K, Zhao F, Liu J (2006) Semantic streams: a framework for composable semantic interpretation of sensor data. In: EWSN, pp 5–20
Youn T-Y, Park Y-H, Kwon T, Kwon S, Lim JJ (2008) Efficient flexible batch signing techniques for imbalanced communication applications. IEICE Trans Inf Syst, pp 1481–1484, May 2008
Zheng W, Chong J, Pinello C, Kanajan S, Sangiovanni-Vincentelli AL (2005) Extensible and scalable time triggered scheduling. In: ACSD. IEEE Computer Society, New York, pp 132–141
Zhong L, Jha H (2004) Dynamic power optimization of interactive systems. In: 17th International conference on VLSI design, pp 1041–1047
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Wang, D., Abdelzaher, T., Priyantha, B. et al. Energy-optimal Batching periods for asynchronous multistage data processing on sensor nodes: foundations and an mPlatform case study. Real-Time Syst 48, 135–165 (2012). https://doi.org/10.1007/s11241-011-9138-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-011-9138-5