Runtime Optimization of System Utility with Variable Hardware

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.

[1]  Yu Cao,et al.  Circuit aging prediction for low-power operation , 2009, 2009 IEEE Custom Integrated Circuits Conference.

[2]  Hendrikus J. M. Veendrick,et al.  Short-circuit dissipation of static CMOS circuitry and its impact on the design of buffer circuits , 1984 .

[3]  W.J. Kaiser,et al.  The low power energy aware processing (LEAP) embedded networked sensor system , 2006, 2006 5th International Conference on Information Processing in Sensor Networks.

[4]  Philip Levis,et al.  Apprehending joule thieves with cinder , 2010, MobiHeld '09.

[5]  Josep Torrellas,et al.  ReCycle:: pipeline adaptation to tolerate process variation , 2007, ISCA '07.

[6]  Siddharth Garg,et al.  On the Impact of Manufacturing Process Variations on the Lifetime of Sensor Networks , 2012, ACM Trans. Embed. Comput. Syst..

[7]  Vivek De,et al.  Adaptive body bias for reducing impacts of die-to-die and within-die parameter variations on microprocessor frequency and leakage , 2002, 2002 IEEE International Solid-State Circuits Conference. Digest of Technical Papers (Cat. No.02CH37315).

[8]  David Blaauw,et al.  ElastIC: An Adaptive Self-Healing Architecture for Unpredictable Silicon , 2006, IEEE Design & Test of Computers.

[9]  Saurabh Dighe,et al.  Within-die variation-aware dynamic-voltage-frequency scaling core mapping and thread hopping for an 80-core processor , 2010, 2010 IEEE International Solid-State Circuits Conference - (ISSCC).

[10]  Kaushik Roy,et al.  Statistical modeling of pipeline delay and design of pipeline under process variation to enhance yield in sub-100nm technologies , 2005, Design, Automation and Test in Europe.

[11]  Kaushik Roy,et al.  Process Variations and Process-Tolerant Design , 2007, 20th International Conference on VLSI Design held jointly with 6th International Conference on Embedded Systems (VLSID'07).

[12]  Yu Wang,et al.  Variation-Aware Supply Voltage Assignment for Simultaneous Power and Aging Optimization , 2012, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[13]  Puneet Gupta,et al.  VarEMU: An emulation testbed for variability-aware software , 2013, 2013 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[14]  Sujit Dey,et al.  Variation-Tolerant Dynamic Power Management at the System-Level , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[15]  Xiaoyu Song,et al.  Improving the process-variation tolerance of digital circuits using gate sizing and statistical techniques , 2005, Design, Automation and Test in Europe.

[16]  B.C. Paul,et al.  Process variation in embedded memories: failure analysis and variation aware architecture , 2005, IEEE Journal of Solid-State Circuits.

[17]  Josep Torrellas,et al.  Variation-Aware Application Scheduling and Power Management for Chip Multiprocessors , 2008, 2008 International Symposium on Computer Architecture.

[18]  Fabrice Bellard,et al.  QEMU, a Fast and Portable Dynamic Translator , 2005, USENIX Annual Technical Conference, FREENIX Track.

[19]  Kaushik Roy,et al.  Statistical timing analysis using levelized covariance propagation considering systematic and random variations of process parameters , 2006, TODE.

[20]  Hassan Ghasemzadeh,et al.  Energy-efficient signal processing in wearable embedded systems: an optimal feature selection approach , 2012, ISLPED '12.

[21]  Riccardo Bettati,et al.  Imprecise computations , 1994, Proc. IEEE.

[22]  Puneet Gupta,et al.  VaMV: Variability-aware Memory Virtualization , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[23]  Trevor Mudge,et al.  Razor: a low-power pipeline based on circuit-level timing speculation , 2003, Proceedings. 36th Annual IEEE/ACM International Symposium on Microarchitecture, 2003. MICRO-36..

[24]  Woongki Baek,et al.  Green: a framework for supporting energy-conscious programming using controlled approximation , 2010, PLDI '10.

[25]  James Tschanz,et al.  Parameter variations and impact on circuits and microarchitecture , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[26]  Luca Benini,et al.  Procedure hopping: a low overhead solution to mitigate variability in shared-L1 processor clusters , 2012, ISLPED '12.

[27]  Kaushik Roy,et al.  CRISTA: A New Paradigm for Low-Power, Variation-Tolerant, and Adaptive Circuit Synthesis Using Critical Path Isolation , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[28]  Pedro José Marrón,et al.  Meeting lifetime goals with energy levels , 2007, SenSys '07.

[29]  Kaushik Roy,et al.  Novel sizing algorithm for yield improvement under process variation in nanometer technology , 2004, Proceedings. 41st Design Automation Conference, 2004..

[30]  Jan M. Rabaey,et al.  Digital Integrated Circuits , 2003 .

[31]  Puneet Gupta,et al.  Hardware Variability-Aware Duty Cycling for Embedded Sensors , 2013, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[32]  Quinn Jacobson,et al.  ERSA: error resilient system architecture for probabilistic applications , 2010, DATE 2010.

[33]  Ke Meng,et al.  Process Variation Aware Cache Leakage Management , 2006, ISLPED'06 Proceedings of the 2006 International Symposium on Low Power Electronics and Design.

[34]  Puneet Gupta,et al.  Design sensitivities to variability: extrapolations and assessments in nanometer VLSI , 2002, 15th Annual IEEE International ASIC/SOC Conference.

[35]  Tom W. Chen,et al.  Post Silicon Power/Performance Optimization in the Presence of Process Variations Using Individual Well-Adaptive Body Biasing , 2007, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[36]  Yu Cao,et al.  The Impact of NBTI on the Performance of Combinational and Sequential Circuits , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[37]  Yu Cao,et al.  Predictive Modeling of the NBTI Effect for Reliable Design , 2006, IEEE Custom Integrated Circuits Conference 2006.

[38]  Puneet Gupta,et al.  Quantifying error in dynamic power estimation of CMOS circuits , 2003, Fourth International Symposium on Quality Electronic Design, 2003. Proceedings..

[39]  Mahmut T. Kandemir,et al.  Leakage Current: Moore's Law Meets Static Power , 2003, Computer.

[40]  Puneet Gupta,et al.  DDRO: A novel performance monitoring methodology based on design-dependent ring oscillators , 2012, Thirteenth International Symposium on Quality Electronic Design (ISQED).

[41]  Ankur Srivastava,et al.  Variability-Driven Formulation for Simultaneous Gate Sizing and Postsilicon Tunability Allocation , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[42]  Mihaela van der Schaar,et al.  AppAdapt: Opportunistic Application Adaptation in Presence of Hardware Variation , 2012, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[43]  Amin Vahdat,et al.  ECOSystem: managing energy as a first class operating system resource , 2002, ASPLOS X.

[44]  P. Gargini,et al.  The International Technology Roadmap for Semiconductors (ITRS): "Past, present and future" , 2000, GaAs IC Symposium. IEEE Gallium Arsenide Integrated Circuits Symposium. 22nd Annual Technical Digest 2000. (Cat. No.00CH37084).

[45]  E. Nowak,et al.  High-performance CMOS variability in the 65-nm regime and beyond. IBM J Res And Dev , 2006 .

[46]  Rajesh K. Gupta,et al.  Accurate Characterization of the Variability in Power Consumption in Modern Mobile Processors , 2012, HotPower.