skip to main content
research-article

Runtime Optimization of System Utility with Variable Hardware

Authors Info & Claims
Published:17 February 2015Publication History
Skip Abstract Section

Abstract

Increasing hardware variability in newer integrated circuit fabrication technologies has caused corresponding power variations on a large scale. These variations are particularly exaggerated for idle power consumption, motivating the need to mitigate the effects of variability in systems whose operation is dominated by long idle states with periodic active states. In systems where computation is severely limited by anemic energy reserves and where a long overall system lifetime is desired, maximizing the quality of a given application subject to these constraints is both challenging and an important step toward achieving high-quality deployments. This work describes VaRTOS, an architecture and corresponding set of operating system abstractions that provide explicit treatment of both idle and active power variations for tasks running in real-time operating systems. Tasks in VaRTOS express elasticity by exposing individual knobs—shared variables that the operating system can tune to adjust task quality and, correspondingly, task power, maximizing application utility both on a per-task and on a system-wide basis. We provide results regarding online learning of instance-specific sleep power, active power, and task-level power expenditure on simulated hardware with demonstrated effects for several prototypical applications. Our results on networked sensing applications, which are representative of a broader category of applications that VaRTOS targets, show that VaRTOS can reduce variability-induced energy expenditure errors from over 70% in many cases to under 2% in most cases and under 5% in the worst case.

References

  1. A. Agarwal, B. C. Paul, S. Mukhopadhyay, and K. Roy. 2005. Process variation in embedded memories: Failure analysis and variation aware architecture. IEEE Journal of Solid-State Circuits 40, 9 (2005), 1804--1814.Google ScholarGoogle ScholarCross RefCross Ref
  2. W. Baek and T. M. Chilimbi. 2010. Green: A framework for supporting energy-conscious programming using controlled approximation. Special Interest Group on Programming Languages Notices 45, 6 (June 2010), 198--209. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. B. Balaji, J. McCullough, R. K. Gupta, and Y. Agarwal. 2012. Accurate characterization of the variability in power consumption in modern mobile processors. In Proceedings of the USENIX Conference on Power-Aware Computing and Systems (HotPower'12). 8--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. L. A. D. Bathen, N. D. Dutt, A. Nicolau, and P. Gupta. 2012. VaMV: Variability-aware memory virtualization. In Proceedings of the Design, Automation Test in Europe Conference (DATE'12). 284--287. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. F. Bellard. 2005. QEMU, a fast and portable dynamic translator. In Proceedings of the USENIX Annual Technical Conference (ATEC'05). 41--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. K. Bernstein, D. J. Frank, A. E. Gattiker, W. Haensch, B. L. Ji, S. R. Nassif, E. J. Nowak, D. J. Pearson, and N. J. Rohrer. 2006. High-performance CMOS variability in the 65-nm regime and beyond. IBM Journal of Research and Development 50, 4.5 (2006), 433--449. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Bhardwaj, W. Wenping, R. Vattikonda, Yu Cao, and S. Vrudhula. 2006. Predictive modeling of the NBTI effect for reliable design. In Proceedings of the IEEE Custom Integrated Circuits Conference (CICC'06). 189--192.Google ScholarGoogle Scholar
  8. S. Bhunia, S. Mukhopadhyay, and K. Roy. 2007. Process variations and process-tolerant design. In Proceedings of the 20th International Conference on VLSI Design. 699--704. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. Borkar, T. Karnik, S. Narendra, J. Tschanz, A. Keshavarzi, and V. De. 2003. Parameter variations and impact on circuits and microarchitecture. In Proceedings of the Design Automation Conference (DAC'03). ACM, 338--342. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Y. Cao, P. Gupta, A. B. Kahng, D. Sylvester, and J. Yang. 2002. Design sensitivities to variability: Extrapolations and assessments in nanometer VLSI. In Proceedings of the IEEE International ASIC/SOC Conference. 411--415.Google ScholarGoogle Scholar
  11. T.-B. Chan, P. Gupta, A. B. Kahng, and L. Lai. 2012. DDRO: A novel performance monitoring methodology based on design-dependent ring oscillators. In Proceedings of the International Symposium on Quality Electronic Design (ISQED'12). 633--640.Google ScholarGoogle Scholar
  12. S. Chandra, K. Lahiri, A. Raghunathan, and S. Dey. 2009. Variation-tolerant dynamic power management at the system-level. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 17, 9 (2009), 1220--1232. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. X. Chen, Y. Wang, Y. Cao, Y. Ma, and H. Yang. 2012. Variation-aware supply voltage assignment for simultaneous power and aging optimization. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 20, 11 (2012), 2143--2147. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. H. Cho, L. Leem, and S. Mitra. 2012. ERSA: Error resilient system architecture for probabilistic applications. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 31, 4 (2012), 546--558. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. S. H. Choi, B. C. Paul, and K. Roy. 2004. Novel sizing algorithm for yield improvement under process variation in nanometer technology. In Proceedings of the Design Automation Conference (DAC'04). ACM, 454--459. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. A. Datta, S. Bhunia, S. Mukhopadhyay, N. Banerjee, and K. Roy. 2005. Statistical modeling of pipeline delay and design of pipeline under process variation to enhance yield in sub-100nm technologies. In Proceedings of the Design, Automation and Test in Europe (DATE'05), Vol. 2. 926--931. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. S. Dighe, S. Vangal, P. Aseron, S. Kumar, T. Jacob, K. Bowman, J. Howard, J. Tschanz, V. Erraguntla, N. Borkar, V. De, and S. Borkar. 2010. Within-die variation-aware dynamic-voltage-frequency scaling core mapping and thread hopping for an 80-core processor. In Proceedings of the IEEE Solid-State Circuits Conference (ISSCC'10). 174--175.Google ScholarGoogle Scholar
  18. D. Ernst, N. S. Kim, S. Das, S. Pant, R. Rao, T. Pham, C. Ziesler, D. Blaauw, T. Austin, K. Flautner, and T. Mudge. 2003. Razor: A low-power pipeline based on circuit-level timing speculation. In Proceedings of the IEEE/ACM International Symposium on Microarchitecture (MICRO-36). 7--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. FreeRTOS Project. 2013. FreeRTOS. http://www.freertos.org. (2013).Google ScholarGoogle Scholar
  20. S. Garg and D. Marculescu. 2007. On the impact of manufacturing process variations on the lifetime of sensor networks. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis. ACM, 203--208. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. H. Ghasemzadeh, N. Amini, and M. Sarrafzadeh. 2012. Energy-efficient signal processing in wearable embedded systems: An optimal feature selection approach. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED'12). ACM, 357--362. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. Ghosh, S. Bhunia, and K. Roy. 2007. CRISTA: A new paradigm for low-power, variation-tolerant, and adaptive circuit synthesis using critical path isolation. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 26, 11 (Nov. 2007), 1947--1956. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. Gregg and T. W. Chen. 2007. Post silicon power/performance optimization in the presence of process variations using individual well-adaptive body biasing. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 15, 3 (March 2007), 366--376. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. P. Gupta and A. B. Kahng. 2003. Quantifying error in dynamic power estimation of CMOS circuits. In Proceedings of the International Symposium on Quality Electronic Design. 273--278. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. ITRS. 2010. The international technology roadmap for semiconductors. http://www.itrs.net.Google ScholarGoogle Scholar
  26. K. Kang, B. C. Paul, and K. Roy. 2006. Statistical timing analysis using levelized covariance propagation considering systematic and random variations of process parameters. ACM Transactions on Design Automation of Electronic Systems 11 (Oct. 2006), 848--879. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. V. Khandelwal and A. Srivastava. 2007. Variability-driven formulation for simultaneous gate sizing and post-silicon tunability allocation. In Proceedings of the International Symposium on Physical Design (ISPD'07). ACM, New York, NY, 11--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. N. S. Kim, T. Austin, D. Baauw, T. Mudge, K. Flautner, J. S. Hu, M. J. Irwin, M. Kandemir, and V. Narayanan. 2003. Leakage current: Moore's law meets static power. Computer 36, 12 (2003), 68--75. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. A. Lachenmann, P. Marrón, D. Minder, and K. Rothermel. 2007. Meeting lifetime goals with energy levels. In Proceedings of the International Conference on Embedded Networked Sensor Systems (SenSys'07). 131--144. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. J. W. S. Liu, W.-K. Shih, K.-J. Lin, R. Bettati, and J.-Y. Chung. 1994. Imprecise computations. Proceedings of the IEEE 82, 1 (1994), 83--94.Google ScholarGoogle ScholarCross RefCross Ref
  31. T. Matsuda, T. Takeuchi, H. Yoshino, M. Ichien, S. Mikami, H. Kawaguchi, C. Ohta, and M. Yoshimoto. 2006. A power-variation model for sensor node and the impact against life time of wireless sensor networks. In Proceedings of the International Conference on Communications and Electronics (ICCE'06). 106--111.Google ScholarGoogle Scholar
  32. D. McIntire, K. Ho, B. Yip, A. Singh, W. Wu, and W. J. Kaiser. 2006. The low power energy aware processing (LEAP) embedded networked sensor system. In Proceedings of the International Conference on Information Processing in Sensor Networks. 449--457. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. K. Meng and R. Joseph. 2006. Process variation aware cache leakage management. In Proceedings of the 2006 International Symposium on Low Power Electronics and Design (ISLPED'06). 262--267. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. S. Neiroukh and X. Song. 2005. Improving the process-variation tolerance of digital circuits using gate sizing and statistical techniques. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE). Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. NLopt Project. 2013. NLopt. http://ab-initio.mit.edu/wiki/index.php/NLopt. (2013).Google ScholarGoogle Scholar
  36. A. Pant, P. Gupta, and M. van der Schaar. 2012. AppAdapt: Opportunistic application adaptation in presence of hardware variation. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 20, 11 (2012), 1986--1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. J. M. Rabaey, A. P. Chandrakasan, and B. Nikolic. 1996. Digital Integrated Circuits. Vol. 996. Prentice-Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. A. Rahimi, L. Benini, and R. Gupta. 2012. Procedure hopping: A low overhead solution to mitigate variability in shared-L1 processor clusters. In Proceedings of the ACM/IEEE International Symposium on Low Power Electronics and Design (ISLPED'12). 6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. S. M. Rumble, R. Stutsman, P. Levis, D. Mazières, and N. Zeldovich. 2009. Apprehending joule thieves with Cinder. In Proceedings of ACM MobiHeld. ACM, 49--54. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. D. Sylvester, D. Blaauw, and E. Karl. 2006. ElastIC: An adaptive self-healing architecture for unpredictable silicon. IEEE Design and Test of Computers 23, 6 (2006), 484--490. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. R. Teodorescu and J. Torrellas. 2008. Variation-aware application scheduling and power management for chip multiprocessors. In Proceedings of the International Symposium on Computer Architecture (ISCA'08). 363--374. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. A. Tiwari, S. R. Sarangi, and J. Torrellas. 2007. ReCycle: Pipeline adaptation to tolerate process variation. The ACM Special Interest Group on Computer Architecture News 35, 2 (June 2007), 323--334. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. J. Tschanz, J. Kao, S. Narendra, R. Nair, D. Antoniadis, A. Chandrakasan, and V. De. 2002. Adaptive body bias for reducing impacts of die-to-die and within-die parameter variations on microprocessor frequency and leakage. In Proceedings of the IEEE International Solid-State Circuits Conference (ISSCC'02), Vol. 1. 422--478.Google ScholarGoogle Scholar
  44. UC Berkeley Device Group. 2013. BSIM. Retrieved from http://www-device.eecs.berkeley.edu/bsim/.Google ScholarGoogle Scholar
  45. U. S. Climate Reference Network (USCRN). 2012. Hourly Temperature Data. Retrieved from www.ncdc.noaa.gov/crn/.Google ScholarGoogle Scholar
  46. VarEMU Project. 2013. An Emulation Testbed for Variability-Aware Software. Retrieved from https://github.com/nesl/varemu.Google ScholarGoogle Scholar
  47. H. J. M. Veendrick. 1984. Short-circuit dissipation of static CMOS circuitry and its impact on the design of buffer circuits. IEEE Journal on Solid-State Circuits 19, 4 (1984), 468--473.Google ScholarGoogle ScholarCross RefCross Ref
  48. W. Wang, S. Yang, S. Bhardwaj, R. Vattikonda, S. Vrudhula, T. Liu, and Y. Cao. 2007. The impact of NBTI on the performance of combinational and sequential circuits. In Proceedings of the Design Automation Conference 364--369. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. L. Wanner, C. Apte, R. Balani, P. Gupta, and M. Srivastava. 2012. Hardware variability-aware duty cycling for embedded sensors. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 21, 6 (2012), 1000--1012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. H. Zeng, C. S. Ellis, A. R. Lebeck, and A. Vahdat. 2002. ECOSystem: Managing energy as a first class operating system resource. ACM Special Interest Group on Operating Systems 36, 5 (October 2002), 123--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. R. Zheng, J. Velamala, V. Reddy, V. Balakrishnan, E. Mintarno, S. Mitra, S. Krishnan, and Yu Cao. 2009. Circuit aging prediction for low-power operation. In Proceedings of the IEEE Custom Integrated Circuits Conference (CICC'09). 427--430.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Runtime Optimization of System Utility with Variable Hardware

          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!