Prediction-Guided Performance-Energy Trade-off with Continuous Run-Time Adaptation

Recent work has demonstrated that prediction-guided DVFS control can significantly improve the energy efficiency of interactive applications with little to no impact on user experience when running in isolation. In this work, we propose to add an on-line learning capability to the execution-time predictor, which enables the predictor to automatically adapt to changes in the environment such as interference from other applications and be easily applied across diverse platforms. This paper introduces several techniques to address the overhead of performing on-line learning, including incremental training based on QR decomposition and explicit change detection for fast adaptation. In addition to the DVFS control, we show that the proposed prediction model can be used to intelligently select a core in a heterogeneous system. Experimental results on the ARM big.LITTLE platform show that our DVFS controller and core scheduler can effectively remove deadline misses even under significant interference from competing processes while consuming far lower energy compared to traditional schemes.

[1]  Samarjit Chakraborty,et al.  A Hybrid DVS Scheme for Interactive 3D Games , 2008, 2008 IEEE Real-Time and Embedded Technology and Applications Symposium.

[2]  Christoforos E. Kozyrakis,et al.  Towards energy proportionality for large-scale latency-critical workloads , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[3]  Yunheung Paek,et al.  Mantis: Automatic Performance Prediction for Smartphone Applications , 2013, USENIX Annual Technical Conference.

[4]  Ki-Seok Chung,et al.  Benefits of the big . LITTLE Architecture , 2012 .

[5]  Daniel Mossé,et al.  Octopus-Man: QoS-driven task management for heterogeneous multicores in warehouse-scale computers , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[6]  Sadagopan Srinivasan,et al.  HeteroScouts: hardware assist for OS scheduling in heterogeneous CMPs , 2011, PERV.

[7]  Alexander I. Rudnicky,et al.  Pocketsphinx: A Free, Real-Time Continuous Speech Recognition System for Hand-Held Devices , 2006, 2006 IEEE International Conference on Acoustics Speech and Signal Processing Proceedings.

[8]  Sven Hammarling,et al.  Updating the QR factorization and the least squares problem , 2008 .

[9]  Lizy Kurian John,et al.  Efficient program scheduling for heterogeneous multi-core processors , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[10]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[11]  Jock D. Mackinlay,et al.  The information visualizer, an information workspace , 1991, CHI.

[12]  Jason Cong,et al.  Energy-efficient scheduling on heterogeneous multi-core architectures , 2012, ISLPED '12.

[13]  Anoop Gupta,et al.  The SPLASH-2 programs: characterization and methodological considerations , 1995, ISCA.

[14]  Robert B. Miller,et al.  Response time in man-computer conversational transactions , 1899, AFIPS Fall Joint Computing Conference.

[15]  Gitte Lindgaard,et al.  Attention web designers: You have 50 milliseconds to make a good first impression! , 2006, Behav. Inf. Technol..

[16]  Michael Roitzsch,et al.  Atlas: Look-ahead scheduling using workload metrics , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[17]  Ronald G. Dreslinski,et al.  Adrenaline: Pinpointing and reining in tail queries with quick voltage boosting , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[18]  Mihaela van der Schaar,et al.  Complexity Model Based Proactive Dynamic Voltage Scaling for Video Decoding Systems , 2007, IEEE Transactions on Multimedia.

[19]  Sharad Malik,et al.  Compile-time dynamic voltage scaling settings: opportunities and limits , 2003, PLDI '03.

[20]  Mahmut T. Kandemir,et al.  Domain knowledge based energy management in handhelds , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[21]  Karthik Dantu,et al.  Frame-based dynamic voltage and frequency scaling for a MPEG decoder , 2002, ICCAD 2002.

[22]  Lieven Eeckhout,et al.  Scheduling heterogeneous multi-cores through performance impact estimation (PIE) , 2012, 2012 39th Annual International Symposium on Computer Architecture (ISCA).

[23]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[24]  Vijay Janapa Reddi,et al.  Event-based scheduling for energy-efficient QoS (eQoS) in mobile Web applications , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[25]  Frank Tip,et al.  A survey of program slicing techniques , 1994, J. Program. Lang..

[26]  R. Tibshirani Regression Shrinkage and Selection via the Lasso , 1996 .

[27]  G. Edward Suh,et al.  Prediction-guided performance-energy trade-off for interactive applications , 2015, 2015 48th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[28]  Vijay Janapa Reddi,et al.  High-performance and energy-efficient mobile web browsing on big/little systems , 2013, 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA).

[29]  Zheng Wang,et al.  Using latency to evaluate interactive system performance , 1996, OSDI '96.

[30]  Michał Bernardelli Usage of algorithm of fast updates of QR decomposition to solution of linear regression models , 2012 .

[31]  Margaret Martonosi,et al.  A dynamic compilation framework for controlling microprocessor energy and performance , 2005, 38th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'05).

[32]  Samarjit Chakraborty,et al.  Control theory-based DVS for interactive 3D games , 2008, 2008 45th ACM/IEEE Design Automation Conference.