ADAPTIVE POWER MANAGEMENT FOR COMPUTERS AND MOBILE DEVICES

Power consumption has become a major concern in the design of computing systems today. High power consumption increases cooling cost, degrades the system reliability and also reduces the battery life in portable devices. Modern computing/communication devices support multiple power modes which enable power and performance tradeoff. Dynamic power management (DPM), dynamic voltage and frequency scaling (DVFS), and dynamic task migration for workload consolidation are system level power reduction techniques widely used during runtime. In the first part of the dissertation, we concentrate on the dynamic power management of the personal computer and server platform where the DPM, DVFS and task migrations techniques are proved to be highly effective. A hierarchical energy management framework is assumed, where task migration is applied at the upper level to improve server utilization and energy efficiency, and DPM/DVFS is applied at the lower level to manage the power mode of individual processor. This work focuses on estimating the performance impact of workload consolidation and searching for optimal DPM/DVFS that adapts to the changing workload. Machine learning based modeling and reinforcement learning based policy optimization techniques are investigated. Mobile computing has been weaved into everyday lives to a great extend in recent years. Compared to traditional personal computer and server environment, the mobile computing environment is obviously more context-rich and the usage of mobile computing device is clearly imprinted with user’s personal signature. The ability to learn such signature enables immense potential in workload prediction and energy or battery life management. In the second part of the dissertation, we present two mobile device power management techniques which take advantage of the context-rich characteristics of mobile platform and make adaptive energy management decisions based on different user behavior. We firstly investigate the user battery usage behavior modeling and apply the model directly for battery energy management. The first technique aims at maximizing the quality of service (QoS) while keeping the risk of battery depletion below a given threshold. The second technique is an user-aware streaming strategies for energy efficient smartphone video playback applications (e.g. YouTube) that minimizes the sleep and wake penalty of cellular module and at the same time avoid the energy waste from excessive downloading. Runtime power and thermal management has attracted substantial interests in multi-core distributed embedded systems. Fast performance evaluation is an essential step in the research of distributed power and thermal management. In last part of the dissertation, we present an FPGA based emulator of multi-core distributed embedded system designed to support the research in runtime power/thermal management. Hardware and software supports are provided to carry out basic power/thermal management actions including inter-core or inter-FPGA communications, runtime temperature monitoring and dynamic frequency scaling. ADAPTIVE POWER MANAGEMENT FOR COMPUTERS AND MOBILE DEVICES by Hao Shen B.S., Southeast University, 2008 Dissertation Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Electrical and Computer Engineering Syracuse University December 2014 Copyright © Hao Shen December 2014 All Rights Reserved

[1]  David Levine,et al.  Managing Power Consumption and Performance of Computing Systems Using Reinforcement Learning , 2007, NIPS.

[2]  Yung-Hsiang Lu,et al.  Joint Power Management of Memory and Disk Under Performance Constraints , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  John Wilkes,et al.  UNIX Disk Access Patterns , 1993, USENIX Winter.

[4]  Peter A. Dinda,et al.  Dynamic adaptive virtual core mapping to improve power, energy, and performance in multi-socket multicores , 2012, HPDC '12.

[5]  Wei Liu,et al.  Adaptive power management using reinforcement learning , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

[6]  Dimitrios Koutsonikolas,et al.  Realizing the full potential of PSM using proxying , 2012, 2012 Proceedings IEEE INFOCOM.

[7]  Rich Caruana,et al.  Greedy Attribute Selection , 1994, ICML.

[8]  Rajarshi Das,et al.  A Hybrid Reinforcement Learning Approach to Autonomic Resource Allocation , 2006, 2006 IEEE International Conference on Autonomic Computing.

[9]  Chenyang Lu,et al.  Introduction to Control Theory And Its Application to Computing Systems , 2008 .

[10]  Jin Qian,et al.  PARAID: A gear-shifting power-aware RAID , 2007, TOS.

[11]  Qinru Qiu,et al.  Distributed task migration for thermal management in many-core systems , 2010, Design Automation Conference.

[12]  Mark D. Pendrith On Reinforcement Learning of Control Actions in Noisy and Non-Markovian Domains , 1994 .

[13]  Gianluca Palermo,et al.  Prototyping pipelined applications on a heterogeneous FPGA multiprocessor virtual platform , 2009, 2009 Asia and South Pacific Design Automation Conference.

[14]  Alex Settle,et al.  Architectural Support for Enhanced SMT Job Scheduling , 2004, IEEE PACT.

[15]  Li Shang,et al.  SLOPES: Hardware–Software Cosynthesis of Low-Power Real-Time Distributed Embedded Systems With Dynamically Reconfigurable FPGAs , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[16]  Marco Mellia,et al.  YouTube everywhere: impact of device and infrastructure synergies on user experience , 2011, IMC '11.

[17]  Sung-Bae Cho,et al.  An Efficient Energy Management System for Android Phone Using Bayesian Networks , 2012, 2012 32nd International Conference on Distributed Computing Systems Workshops.

[18]  Luca Benini,et al.  A survey of design techniques for system-level dynamic power management , 2000, IEEE Trans. Very Large Scale Integr. Syst..

[19]  G. Riano,et al.  Linear Programming solvers for Markov Decision Processes , 2006, 2006 IEEE Systems and Information Engineering Design Symposium.

[20]  Jiawei Han,et al.  Data Mining: Concepts and Techniques , 2000 .

[21]  Allen C.-H. Wu,et al.  A predictive system shutdown method for energy saving of event-driven computation , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[22]  M. Manzke,et al.  Extending FPGA based teaching boards into the area of distributed memory multiprocessors , 2004, WCAE '04.

[23]  Liviu Iftode,et al.  Context-aware Battery Management for Mobile Phones , 2008, 2008 Sixth Annual IEEE International Conference on Pervasive Computing and Communications (PerCom).

[24]  Srinivasan Keshav,et al.  An empirical approach to smartphone energy level prediction , 2011, UbiComp '11.

[25]  Ahmad Rahmati,et al.  Users and Batteries: Interactions and Adaptive Energy Management in Mobile Systems , 2007, UbiComp.

[26]  Krishna Sekar,et al.  Power and thermal challenges in mobile devices , 2013, MobiCom.

[27]  George Theocharous,et al.  Machine Learning for Adaptive Power Management , 2006 .

[28]  Deborah Estrin,et al.  Diversity in smartphone usage , 2010, MobiSys '10.

[29]  Luca Benini,et al.  Event-driven power management , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[30]  Giovanni De Micheli,et al.  Multicore thermal management with model predictive control , 2009, 2009 European Conference on Circuit Theory and Design.

[31]  Engin Ipek,et al.  Dynamic Multicore Resource Management: A Machine Learning Approach , 2009, IEEE Micro.

[32]  Ying Tan,et al.  Workload prediction and dynamic voltage scaling for MPEG decoding , 2006, Asia and South Pacific Conference on Design Automation, 2006..

[33]  Daniel A. Connors,et al.  Implementation of fine-grained cache monitoring for improved SMT scheduling , 2004, IEEE International Conference on Computer Design: VLSI in Computers and Processors, 2004. ICCD 2004. Proceedings..

[34]  Tajana Simunic,et al.  Temperature Aware Task Scheduling in MPSoCs , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[35]  Ahmad Rahmati,et al.  Understanding human-battery interaction on mobile phones , 2007, Mobile HCI.

[36]  Ying Tan,et al.  A Framework of Stochastic Power Management Using Hidden Markov Model , 2008, 2008 Design, Automation and Test in Europe.

[37]  Massoud Pedram,et al.  Fine-Grained Dynamic Voltage and Frequency Scaling for Precise Energy and Performance Trade-Off Based on the Ratio of Off-Chip Access to On-Chip Computation Times , 2004, DATE.

[38]  Li Shang,et al.  Thermal vs Energy Optimization for DVFS-Enabled Processors in Embedded Systems , 2007, 8th International Symposium on Quality Electronic Design (ISQED'07).

[39]  Kai Ma,et al.  Temperature-constrained power control for chip multiprocessors with online model estimation , 2009, ISCA '09.

[40]  Frank Bellosa,et al.  Resource-conscious scheduling for energy efficiency on multicore processors , 2010, EuroSys '10.

[41]  Rajesh K. Gupta,et al.  Leakage aware dynamic voltage scaling for real-time embedded systems , 2004, Proceedings. 41st Design Automation Conference, 2004..

[42]  Srivaths Ravi,et al.  Energy-optimizing source code transformations for operating system-driven embedded software , 2007, TECS.

[43]  Lizy Kurian John,et al.  Subsetting the SPEC CPU2006 benchmark suite , 2007, CARN.

[44]  Timo Hämäläinen,et al.  Scalable MPEG-4 Encoder on FPGA Multiprocessor SOC , 2006, EURASIP J. Embed. Syst..

[45]  Vana Kalogeraki,et al.  FACT: a framework for adaptive contention-aware thread migrations , 2011, CF '11.

[46]  Wei Liu,et al.  Enhanced Q-learning algorithm for dynamic power management with performance constraint , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[47]  Ben H. H. Juurlink,et al.  Leakage-aware multiprocessor scheduling for low power , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[48]  Tajana Simunic,et al.  vGreen: A System for Energy-Efficient Management of Virtual Machines , 2010, TODE.

[49]  Mani B. Srivastava,et al.  Power management in energy harvesting sensor networks , 2007, TECS.

[50]  Y. Charlie Hu,et al.  Program counter-based prediction techniques for dynamic power management , 2006, IEEE Transactions on Computers.

[51]  Jie Chen,et al.  Analysis and approximation of optimal co-scheduling on Chip Multiprocessors , 2008, 2008 International Conference on Parallel Architectures and Compilation Techniques (PACT).

[52]  Kaijun Ren,et al.  Symbiotic Scheduling for Virtual Machines on SMT Processors , 2012, 2012 Second International Conference on Cloud and Green Computing.

[53]  Vanish Talwar,et al.  No "power" struggles: coordinated multi-level power management for the data center , 2008, ASPLOS.

[54]  Feng Qian,et al.  Characterizing radio resource allocation for 3G networks , 2010, IMC '10.

[55]  Sanjay Ranka,et al.  Using game theory for scheduling tasks on multi-core processors for simultaneous optimization of performance and energy , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[56]  Ying Tan,et al.  Stochastic Modeling and Optimization for Robust Power Management in a Partially Observable System , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[57]  Tajana Simunic,et al.  Utilizing Predictors for Efficient Thermal Management in Multiprocessor SoCs , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[58]  Tajana Simunic,et al.  Temperature management in multiprocessor SoCs using online learning , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[59]  Tajana Simunic,et al.  Temperature Aware Dynamic Workload Scheduling in Multisocket CPU Servers , 2011, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[60]  Luiz André Barroso,et al.  The Case for Energy-Proportional Computing , 2007, Computer.

[61]  Nobuhiko Koike,et al.  Work in progress - development of a new multi-CPU parallel and distributed processing experiment platform for remote hardware laboratory , 2009, 2009 39th IEEE Frontiers in Education Conference.

[62]  J. Flinn,et al.  Energy-aware adaptation for mobile applications , 1999, SOSP.

[63]  Jian Pei,et al.  A practical method for estimating performance degradation on multicore processors, and its application to HPC workloads , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[64]  M TullsenDean,et al.  Symbiotic jobscheduling for a simultaneous mutlithreading processor , 2000 .

[65]  Poki Chen,et al.  A Fully Digital Time-Domain Smart Temperature Sensor Realized With 140 FPGA Logic Elements , 2007, IEEE Transactions on Circuits and Systems I: Regular Papers.

[66]  Tajana Simunic,et al.  Temperature-aware MPSoC scheduling for reducing hot spots and gradients , 2008, 2008 Asia and South Pacific Design Automation Conference.

[67]  Eun Jung Kim,et al.  Predictive dynamic thermal management for multicore systems , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[68]  Radu Marculescu,et al.  Designing Heterogeneous Embedded Network-on-Chip Platforms With Users in Mind , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[69]  Tajana Simunic,et al.  System-Level Power Management Using Online Learning , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[70]  Sudhanva Gurumurthi,et al.  Accelerating enterprise solid-state disks with non-volatile merge caching , 2010, International Conference on Green Computing.

[71]  Yingxin Liao,et al.  Monitoring Energy Consumption of Smartphone Apps Using Fuzzy Clustering , 2014 .

[72]  Margaret Martonosi,et al.  Full-system chip multiprocessor power evaluations using FPGA-based emulation , 2008, Proceeding of the 13th international symposium on Low power electronics and design (ISLPED '08).

[73]  Ramachandran Ramjee,et al.  Bartendr: a practical approach to energy-aware cellular data scheduling , 2010, MobiCom.

[74]  Aman Kansal,et al.  Q-clouds: managing performance interference effects for QoS-aware clouds , 2010, EuroSys '10.

[75]  Alex Pentland,et al.  Reality mining: sensing complex social systems , 2006, Personal and Ubiquitous Computing.

[76]  Evan L. Porteus Foundations of Stochastic Inventory Theory , 2002 .

[77]  Tong Li,et al.  Using OS Observations to Improve Performance in Multicore Systems , 2008, IEEE Micro.

[78]  Michael E. Thomadakis,et al.  The Architecture of the Nehalem Processor and Nehalem-EP SMP Platforms , 2011 .

[79]  Rajesh Gupta,et al.  SleepServer: A Software-Only Approach for Reducing the Energy Consumption of PCs within Enterprise Environments , 2010, USENIX Annual Technical Conference.

[80]  Alexandra Fedorova,et al.  Addressing shared resource contention in multicore processors via scheduling , 2010, ASPLOS XV.

[81]  Onur Mutlu,et al.  Self-Optimizing Memory Controllers: A Reinforcement Learning Approach , 2008, 2008 International Symposium on Computer Architecture.

[82]  Jie Liu,et al.  Fast app launching for mobile devices using predictive user context , 2012, MobiSys '12.

[83]  Clayton Shepard,et al.  LiveLab: measuring wireless networks and smartphone users in the field , 2011, SIGMETRICS Perform. Evaluation Rev..

[84]  Tajana Simunic,et al.  Dynamic workload characterization for power efficient scheduling on CMP systems , 2010, 2010 ACM/IEEE International Symposium on Low-Power Electronics and Design (ISLPED).

[85]  Hao Shen,et al.  Learning based DVFS for simultaneous temperature, performance and energy management , 2012, Thirteenth International Symposium on Quality Electronic Design (ISQED).

[86]  J.J. Martinez-Alvarez,et al.  A multi-FPGA distributed embedded system for the emulation of Multi-Layer CNNs in real time video applications , 2010, 2010 12th International Workshop on Cellular Nanoscale Networks and their Applications (CNNA 2010).

[87]  Gianluca Palermo,et al.  HW/SW methodologies for synchronization in FPGA multiprocessors , 2009, FPGA '09.

[88]  Radu Marculescu,et al.  On-chip traffic modeling and synthesis for MPEG-2 video applications , 2004, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[89]  Alexandra Fedorova,et al.  An SMT-Selection Metric to Improve Multithreaded Applications' Performance , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium.

[90]  Tajana Simunic,et al.  Predict and act: dynamic thermal management for multi-core processors , 2009, ISLPED.

[91]  Martin F. Arlitt,et al.  Maximizing server utilization while meeting critical SLAs via weight-based collocation management , 2013, 2013 IFIP/IEEE International Symposium on Integrated Network Management (IM 2013).

[92]  Tajana Simunic,et al.  JETC: Joint energy thermal and cooling management for memory and CPU subsystems in servers , 2012, IEEE International Symposium on High-Performance Comp Architecture.

[93]  Niraj K. Jha,et al.  An energy-aware framework for dynamic software management in mobile computing systems , 2008, TECS.

[94]  Lei Yang,et al.  Accurate online power estimation and automatic battery behavior based power model generation for smartphones , 2010, 2010 IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[95]  Yung-Hsiang Lu,et al.  A Homogeneous Architecture for Power Policy Integration in Operating Systems , 2009, IEEE Transactions on Computers.

[96]  Ying Tan,et al.  Achieving autonomous power management using reinforcement learning , 2013, TODE.

[97]  Diana Marculescu,et al.  Power Management of Voltage/Frequency Island-Based Systems Using Hardware-Based Methods , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.