skip to main content
research-article

Joint WCET and Update Activity Minimization for Cyber-Physical Systems

Published:21 January 2015Publication History
Skip Abstract Section

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.

References

  1. 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 ScholarGoogle Scholar
  2. M. P. Bivens and M. L. Soffa. 1990. Incremental register allocation. Software: Practice and Experience 20, 10, 1015--1047. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Briggs. 1992. Register Allocation via Graph Coloring. PhD Dissertation. Rice University, Houston, TX. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. E. H. Callaway. 2003. Wireless Sensor Networks: Architectures and Protocols. CRC Press, Boca Raton, FL. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. CSAIL. 2013a. CarTel. Retrieved October 29, 2014, from http://cartel.csail.mit.edu/.Google ScholarGoogle Scholar
  9. CSAIL. 2013b. The Distributed Robotics Garden. Retrieved October 29, 2014, from http://people.csail.mit.edu/nikolaus/drg/.Google ScholarGoogle Scholar
  10. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  14. L. George and A. W. Appel. 1996. Iterated register coalescing. ACM Transactions on Programming Languages and Systems 18, 3, 300--324. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarCross RefCross Ref
  18. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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 ScholarGoogle ScholarCross RefCross Ref
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. 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 ScholarGoogle ScholarCross RefCross Ref
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. 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 ScholarGoogle Scholar
  28. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  30. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  31. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  32. 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 ScholarGoogle Scholar
  33. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  34. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. National Science Foundation. 2008. Cyber-Physical Systems. Retrieved October 29, 2014, from http://www.nsf.gov/pubs/2008/nsf08611/nsf08611.pdf.Google ScholarGoogle Scholar
  37. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  38. M. Poletto and V. Sarkar. 1999. Linear scan register allocation. ACM Transactions on Programming Languages and Systems 21, 5, 895--913. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  40. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  41. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  42. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  43. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  44. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  45. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  46. TinyOS. 2013. TinyOS Home Page. Retrieved October 29, 2014, from http://www.tinyos.net.Google ScholarGoogle Scholar
  47. Trimaran. 2013. Trimaran Home Page. Retrieved October 29, 2014, from http://www.trimaran.org.Google ScholarGoogle Scholar
  48. 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 ScholarGoogle Scholar
  49. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  50. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  51. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  52. 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 ScholarGoogle Scholar
  53. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  54. 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 ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Joint WCET and Update Activity Minimization for Cyber-Physical Systems

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!