Abstract
A cyber-physical system (CPS) is a desirable computing platform for many industrial and scientific applications, such as industrial process monitoring, environmental monitoring, chemical processes, and battlefield surveillance. The application of CPSs has two challenges: First, CPSs often include a number of sensor nodes. Update of preloaded code on remote sensor nodes powered by batteries is extremely energy consuming. The code update issue in the energy-sensitive CPS must be carefully considered. Second, CPSs are often real-time embedded systems with real-time properties. Worst-case execution time (WCET) is one of the most important metrics in real-time system design. Whereas existing works only consider one of these two challenges at a time, in this article, a compiler optimization—joint WCET and update-conscious compilation, or WUCC—is proposed to jointly consider WCET and code update for CPSs. The novelty of the proposed approach is that the WCET problem and code update problem are considered concurrently such that a balanced solution with minimal WCET and minimal code difference can be achieved. The experimental results show that the proposed technique can minimize WCET and code difference effectively.
- R. Arnod, F. Muller, D. Whalley, and M. Harmon. 1994. Bounding worst-case instruction cache performance. In Proceedings of the Real-Time Systems Symposium (RTSS’94). 172--181.Google Scholar
- M. P. Bivens and M. L. Soffa. 1990. Incremental register allocation. Software: Practice and Experience 20, 10, 1015--1047. Google Scholar
Digital Library
- B. Bonakdarpour. 2008. Challenges in transformation of existing real-time embedded systems to cyber-physical systems. ACM SIGBED Review: Special Issue on the RTSS Forum on Deeply Embedded Real-Time Computing 5, 1, Article No. 11. Google Scholar
Digital Library
- P. Briggs. 1992. Register Allocation via Graph Coloring. PhD Dissertation. Rice University, Houston, TX. Google Scholar
Digital Library
- E. H. Callaway. 2003. Wireless Sensor Networks: Architectures and Protocols. CRC Press, Boca Raton, FL. Google Scholar
Digital Library
- G. J. Chaitin, M. A. Auslander, A. K. Chandra, J. Cocke, M. E. Hopkins, and P. W. Markstein. 1981. Register allocation via coloring. Computer Languages 6, 1, 47--57. Google Scholar
Digital Library
- D. Chu and J. Jaffar. 2011. Symbolic simulation on complicated loops for WCET path analysis. In Proceedings of the 9th ACM International Conference on Embedded Software (EMSOFT’11). 319--328. Google Scholar
Digital Library
- CSAIL. 2013a. CarTel. Retrieved October 29, 2014, from http://cartel.csail.mit.edu/.Google Scholar
- CSAIL. 2013b. The Distributed Robotics Garden. Retrieved October 29, 2014, from http://people.csail.mit.edu/nikolaus/drg/.Google Scholar
- J.-F. Deverge and I. Puaut. 2007. WCET-directed dynamic scratchpad memory allocation of data. In Proceedings of the Euromicro Conference on Real-Time Systems (ECRTS’07). 179--190. Google Scholar
Digital Library
- A. Dunkels, N. Finne, J. Eriksson, and T. Voigt. 2006. Run-time dynamic linking for reprogramming wireless sensor networks. In Proceedings of the 4th International Conference on Embedded Networked Sensor Systems (SenSys’06). 15--28. Google Scholar
Digital Library
- H. Falk. 2009. WCET-aware register allocation based on graph coloring. In Proceedings of the 46th Annual Design Automation Conference (DAC’09). 726--731. Google Scholar
Digital Library
- H. Falk and H. Kotthaus. 2011. WCET-driven cache-aware code positioning. In Proceedings of the 14th International Conference on Compilers, Architectures, and Synthesis for Embedded Systems (CASES’11). 195--204. Google Scholar
Digital Library
- L. George and A. W. Appel. 1996. Iterated register coalescing. ACM Transactions on Programming Languages and Systems 18, 3, 300--324. Google Scholar
Digital Library
- S. V. Gheorghita, S. Stuijk, T. Basten, and H. Corporaal. 2005. Automatic scenario detection for improved WCET estimation. In Proceedings of the 42nd Annual Design Automation Conference (DAC’05). 101--104. Google Scholar
Digital Library
- D. W. Goodwin and K. D. Wilken. 1996. Optimal and near-optimal global register allocation using 0--1 integer programming. Software: Practice and Experience 26, 8, 929--965. Google Scholar
Digital Library
- M. N. Halgamuge, M. Zukerman, and K. Ramamohanarao. 2009. An estimation of sensor energy consumption. PIER B: Progress in Electromagnetics Research B 12, 259--295.Google Scholar
Cross Ref
- C. A. Healy, D. B. Whalley, and M. G. Harmon. 1995. Integrating the timing analysis of pipelining and instruction caching. In Proceedings of the 16th IEEE Real-Time Systems Symposium (RTSS’95). 288--297. Google Scholar
Digital Library
- J. Hu, C. Xue, Y. He, and E. H. M. Sha. 2009b. Reprogramming with minimal transferred data on wireless sensor network. In Proceedings of the IEEE 6th International Conference on Mobile Adhoc and Sensor Systems (MASS’09). 160--167.Google Scholar
Cross Ref
- Y. Huang, T. Liu, and C. Xue. 2011. Register allocation for write activity minimization on non-volatile main memory. In Proceedings of the 2011 16th Asia and South Pacific Design Automation Conference (ASP-DAC’11). 129--134. Google Scholar
Digital Library
- Y. Huang, M. Zhao, and C. Xue. 2012. WCET-aware re-scheduling register allocation for real-time embedded systems with clustered VLIW architecture. In Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools, and Theory for Embedded Systems (LCTES’12). 31--40. Google Scholar
Digital Library
- P. Juang, H. Oki, Y. Wang, M. Martonosi, L. Phe, and D. Rubenstein. 2002. Energy efficient computing for wildlife tracking: Design tradeoffs and early experiences with ZebraNet. In Proceedings of the ACM/IEEE International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’02). 96--107. Google Scholar
Digital Library
- J. M. Kahn, R. H. Katz, and K. S. J. Pister. 2000. Emerging challenges: Mobile networking for “Smart Dust.” Journal of Communications and Networks 2, 3, 188--196.Google Scholar
Cross Ref
- P. Levis and D. Culler. 2002. Mate: A tiny virtual machine for sensor networks. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’02). 85--95. Google Scholar
Digital Library
- E. A. Lee. 2008. Cyber physical systems: Design challenges. In Proceedings of the International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC’08). 363--369. Google Scholar
Digital Library
- W. Li, Y. Zhang, J. Yang, and J. Zheng. 2007. UCC: Update-conscious compilation for energy efficiency in wireless sensor networks. In Proceedings of the 2007 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI’07). 383--393. Google Scholar
Digital Library
- S. S. Lim, Y. H. Bae, G. T. Jang, B. D. Rhee, S. L. Min, C. Y. Park, H. Shin, K. Park, and C. S. Kim. 1994. An accurate worst case timing analysis technique for RISC processors. In Proceedings of the Real-Time Systems Symposium (RTSS’94). 97--108.Google Scholar
- T. Liu, M. Li, and C. Xue. 2009a. Instruction cache locking for real-time embedded systems with multi-tasks. In Proceedings of the 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA’09). 494--499. Google Scholar
Digital Library
- T. Liu, M. Li, and C. Xue. 2009b. Minimizing WCET for real-time embedded systems via static instruction cache locking. In Proceedings of the Real-Time and Embedded Technology and Applications Symposium (RTAS’09). 35--44. Google Scholar
Digital Library
- P. Lokuciejewski, H. Falk, and P. Marwedel. 2008. WCET-driven cache-based procedure positioning optimizations. In Proceedings of the Euromicro Conference on Real-Time Systems (ECRTS’08). 321--330. Google Scholar
Digital Library
- T. Liu, Y. Zhao, M. Li, and C. Xue. 2010. Task assignment with cache partitioning and locking for WCET minimization on MPSoC. In Proceedings of the 2010 39th International Conference on Parallel Processing (ICPP’10). 573--582. Google Scholar
Digital Library
- T. Liu, A. Orailoglu, C. Xue, and M. Li. 2011a. Register allocation for simultaneous reduction of energy and peak temperature on registers. In Proceedings of the 2011 Design, Automation, and Test in Europe Conference and Exhibition (DATE’11). 1--6.Google Scholar
- T. Liu, Y. Zhao, M. Li, and C. Xue. 2011b. Joint task assignment and cache partitioning with cache locking for WCET minimization on MPSoC. Journal of Parallel and Distributed Computing 71, 11, 1473--1483. Google Scholar
Digital Library
- T. Liu, M. Li, and C. Xue. 2012. Instruction cache locking for multi-task real-time embedded systems. Real-Time Systems 48, 2, 166--197. Google Scholar
Digital Library
- T. Liu, A. Orailoglu, C. Xue, and M. Li. 2013. Register allocation for embedded systems to simultaneously reduce energy and temperature on registers. ACM Transactions on Embedded Computing Systems 13, 3, Article No. 50. Google Scholar
Digital Library
- National Science Foundation. 2008. Cyber-Physical Systems. Retrieved October 29, 2014, from http://www.nsf.gov/pubs/2008/nsf08611/nsf08611.pdf.Google Scholar
- S. Plazar, J. Kleinsorge, H. Falk, and P. Marwedel. 2011. WCET-driven branch prediction aware code positioning. In Proceedings of the 14th International Conference on Compilers, Architectures, and Synthesis for Embedded Systems (CASES’11). 165--174. Google Scholar
Digital Library
- M. Poletto and V. Sarkar. 1999. Linear scan register allocation. ACM Transactions on Programming Languages and Systems 21, 5, 895--913. Google Scholar
Digital Library
- I. Puaut. 2006. WCET-centric software-controlled instruction caches for hard real-time systems. In Proceedings of Euromicro Conference on Real-Time Systems (ECRTS’06). 217--226. Google Scholar
Digital Library
- I. Puaut and C. Pais. 2007. Scratchpad memories vs locked caches in hard real-time systems: A quantitative comparison. In Proceedings of Design, Automation, and Test in Europe (DATE’07). 1484--1489. Google Scholar
Digital Library
- M. Qiu, C. Xue, Z. Shao, M. Liu, and E. H. M. Sha. 2006. Energy minimization for heterogeneous wireless sensor networks. Journal of Embedded Computing 3, 2, 109--117. Google Scholar
Digital Library
- R. Rajkumar, I. Lee, L. Sha, and J. Stankovic. 2010. Cyber-physical systems: The next computing revolution. In Proceedings of the 47th Design Automation Conference (DAC’10). 731--736. Google Scholar
Digital Library
- N. Reijers and K. Langendoen. 2003. Efficient code distribution in wireless sensor networks. In Proceedings of the International Workshop on Wireless Sensor Network Architecture. 60--67. Google Scholar
Digital Library
- M. D. Smith, N. Ramsey, and G. Holloway. 2004. A generalized algorithm for graph-coloring register allocation. In Proceedings of the ACM SIGPLAN 2004 Conference on Programming Language Design and Implementation. 277--288. Google Scholar
Digital Library
- W. Shnayder, M. Hempstead, R. Chen, G. W. Allen, and M. Welsh. 2004. Simulating the power consumption of large-scale sensor network applications. In Proceedings of the ACM Conference on Embedded Networked Sensor Systems (SenSys’04). 188--200. Google Scholar
Digital Library
- TinyOS. 2013. TinyOS Home Page. Retrieved October 29, 2014, from http://www.tinyos.net.Google Scholar
- Trimaran. 2013. Trimaran Home Page. Retrieved October 29, 2014, from http://www.trimaran.org.Google Scholar
- U. S. Department of Energy. 2003. Grid 2030: A National Vision for Electricity’s Second 100 Years. Retrieved October 29, 2014, from http://www.ferc.gov/eventcalendar/files/20050608125055-grid-2030.pdfGoogle Scholar
- H. Wu, C. Xue, and S. Parameswaran. 2010. Optimal WCET-aware code selection for scratchpad memory. In Proceedings of the 10th ACM International Conference on Embedded Software (EMSOFT’10). 59--68. Google Scholar
Digital Library
- C. Xue, G. Xing, Z. Yuan, Z. Shao, and E. H. M. Sha. 2009. Joint sleep scheduling and mode assignment in wireless cyber-physical systems. In Proceedings of the 29th IEEE International Conference on Distributed Computing Systems Workshops (ICDCS Workshops’09). 1--6. Google Scholar
Digital Library
- J. Yan and W. Zhang. 2007. WCET analysis of instruction caches with prefetching. In Proceedings of the 2007 ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES’07). 175--184. Google Scholar
Digital Library
- C. O. Yang. 2013. Cyber-Physical System: Real-Time Internet-Based Structure Health Monitoring System. Retrieved October 29, 2014, from http://opensiuc.lib.siu.edu/dissertations/111/.Google Scholar
- Z. Yuan, Y. Zhang, and C. Xue. 2011. Sleep-aware mode assignment in wireless embedded systems. Journal of Parallel and Distributed Computing 71, 7, 1002--1010. Google Scholar
Digital Library
- W. Zhao, P. Kulkarni, D. Whalley, C. Healy, F. Mueller, and G. Uh. 2004. Tuning the WCET of embedded applications. In Proceedings of the Real-Time and Embedded Technology and Applications Symposium (RTAS’04). 472--481. Google Scholar
Digital Library
Index Terms
Joint WCET and Update Activity Minimization for Cyber-Physical Systems
Recommendations
A Survey of WCET Analysis of Real-Time Operating Systems
ICESS '09: Proceedings of the 2009 International Conference on Embedded Software and SystemsTiming correctness of hard real-time systems is guaranteed by schedulability analysis and worst-case execution time (WCET) analysis of programs. Traditional WCET analysis mainly deals with application programs and has achieved success in industry. ...
Hardware support for WCET analysis of hard real-time multicore systems
ISCA '09: Proceedings of the 36th annual international symposium on Computer architectureThe increasing demand for new functionalities in current and future hard real-time embedded systems like automotive, avionics and space industries is driving an increase in the performance required in embedded processors. Multicore processors represent ...
WCET Analysis of the mC/OS-II Real-Time Kernel
CSE '09: Proceedings of the 2009 International Conference on Computational Science and Engineering - Volume 02Worst-case execution time (WCET) analysis is one of the major tasks in timing validation of hard real-time systems. In complex systems with real-time operating systems (RTOS), the timing properties of the system are decided by both the applications and ...






Comments