Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3173162.3173184acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article
Public Access

CALOREE: Learning Control for Predictable Latency and Low Energy

Published: 19 March 2018 Publication History

Abstract

Many modern computing systems must provide reliable latency with minimal energy. Two central challenges arise when allocating system resources to meet these conflicting goals: (1) complexity modern hardware exposes diverse resources with complicated interactions and (2) dynamics latency must be maintained despite unpredictable changes in operating environment or input. Machine learning accurately models the latency of complex, interacting resources, but does not address system dynamics; control theory adjusts to dynamic changes, but struggles with complex resource interaction. We therefore propose CALOREE, a resource manager that learns key control parameters to meet latency requirements with minimal energy in complex, dynamic en- vironments. CALOREE breaks resource allocation into two sub-tasks: learning how interacting resources affect speedup, and controlling speedup to meet latency requirements with minimal energy. CALOREE deines a general control system whose parameters are customized by a learning framework while maintaining control-theoretic formal guarantees that the latency goal will be met. We test CALOREE's ability to deliver reliable latency on heterogeneous ARM big.LITTLE architectures in both single and multi-application scenarios. Compared to the best prior learning and control solutions, CALOREE reduces deadline misses by 60% and energy consumption by 13%.

References

[1]
Jason Ansel, Maciej Pacula, Yee Lok Wong, Cy Chan, Marek Olszewski, Una-May O'Reilly, and Saman Amarasinghe. 2012. Siblingrivalry: online autotuning through local competitions. In CASES.
[2]
Jason Ansel, Yee Lok Wong, Cy Chan, Marek Olszewski, Alan Edelman, and Saman Amarasinghe. 2011. Language and compiler support for auto-tuning variable-accuracy algorithms. In CGO.
[3]
R. M. Bell, Y. Koren, and C. Volinsky. 2008. The BellKor 2008 solution to the Netlix Prize. Technical Report. ATandT Labs.
[4]
C. Bienia, S. Kumar, J. P. Singh, and K. Li. 2008. The PARSEC Benchmark Suite: Characterization and Architectural Implications. In PACT.
[5]
Ramazan Bitirgen, Engin Ipek, and Jose F. Martinez. 2008. Coordinated management of multiple interacting resources in chip multiprocessors: A machine learning approach. In MICRO.
[6]
Giorgio C Buttazzo, Giuseppe Lipari, Luca Abeni, and Marco Caccamo. 2006. Soft Real-Time Systems: Predictability vs. Efficiency: Predictability vs. Efficiency. Springer.
[7]
Shuai Che, Michael Boyer, Jiayuan Meng, David Tarjan, Jeremy W. Sheafer, Sang-Ha Lee, and Kevin Skadron. 2009. Rodinia: A Benchmark Suite for Heterogeneous Computing. In IISWC.
[8]
Jian Chen and Lizy Kurian John. 2011. Predictive coordination of multiple on-chip resources for chip multiprocessors. In ICS.
[9]
Jian Chen, Lizy Kurian John, and Dimitris Kaseridis. 2011. Modeling Program Resource Demand Using Inherent Program Characteristics. SIGMETRICS Perform. Eval. Rev. 39, 1 (June 2011), 1-12.
[10]
Ryan Cochran, Can Hankendi, Ayse K. Coskun, and Sherief Reda. 2011. Pack&Cap: adaptive DVFS and thread packing under power caps. In MICRO.
[11]
Sarah Dean, Horia Mania, Nikolai Matni, Benjamin Recht, and Stephen Tu. 2017. On the Sample Complexity of the Linear Quadratic Regulator. Technical Report 1710.01688v1. arXiv.
[12]
Christina Delimitrou and Christos Kozyrakis. 2013. Paragon: QoS-aware Scheduling for Heterogeneous Datacenters. In ASPLOS.
[13]
Christina Delimitrou and Christos Kozyrakis. 2014. Quasar: Resource-efficient and QoS-aware Cluster Management. In ASPLOS.
[14]
Zhaoxia Deng, Lunkai Zhang, Nikita Mishra, Henry Hoffmann, and Fred Chong. 2017. Memory Cocktail Therapy: A General Learning-Based Framework to Optimize Dynamic Tradeoffs in NVM. In MICRO.
[15]
Christophe Dubach, Timothy M. Jones, Edwin V. Bonilla, and Michael F. P. O'Boyle. 2010. A Predictive Model for Dynamic Microarchitectural Adaptivity Control. In MICRO.
[16]
Antonio Filieri, Henry Hoffmann, and Martina Maggio. 2014. Automated design of self-adaptive software with control-theoretical formal guarantees. In ICSE.
[17]
Antonio Filieri, Henry Hofmann, and Martina Maggio. 2015. Automated multi-objective control for self-adaptive software design. In FSE.
[18]
J. Flinn and M. Satyanarayanan. 1999. Energy-aware adaptation for mobile applications. In SOSP.
[19]
Jason Flinn and M. Satyanarayanan. 2004. Managing battery lifetime with energy-aware adaptation. ACM Trans. Comp. Syst. 22, 2 (May 2004).
[20]
Rodrigo Fonseca, Prabal Dutta, Philip Levis, and Ion Stoica. 2008. Quanto: Tracking Energy in Networked Embedded Systems. In OSDI.
[21]
Andrew Gelman, John B Carlin, Hal S Stern, David B Dunson, Aki Vehtari, and Donald B Rubin. 2013. Bayesian data analysis. CRC press.
[22]
Ashvin Goel, David Steere, Calton Pu, and Jonathan Walpole. 1998. SWiFT: A Feedback Control and Dynamic Reconiguration Toolkit. In 2nd USENIX Windows NT Symposium.
[23]
Matthew Halpern, Yuhao Zhu, and Vijay Janapa Reddi. {n. d.}. Mobile CPU's rise to power: Quantifying the impact of generational mobile CPU design trends on performance, energy, and user satisfaction. In HPCA.
[24]
Joseph L. Hellerstein, Yixin Diao, Sujay Parekh, and Dawn M. Tilbury. 2004. Feedback Control of Computing Systems. John Wiley&Sons.
[25]
Henry Hofmann. 2015. JouleGuard: energy guarantees for approximate applications. In SOSP.
[26]
Henry Hofmann, Anant Agarwal, and Srinivas Devadas. 2012. Selecting Spatiotemporal Patterns for Development of Parallel Applications. IEEE Trans. Parallel Distrib. Syst. 23, 10 (2012).
[27]
Henry Hofmann, Jonathan Eastep, Marco D. Santambrogio, Jason E. Miller, and Anant Agarwal. 2010. Application Heartbeats: a generic interface for specifying program performance and goals in autonomous computing environments. In ICAC.
[28]
Henry Hofmann, Jim Holt, George Kurian, Eric Lau, Martina Maggio, Jason E. Miller, Sabrina M. Neuman, Mahmut Sinangil, Yildiz Sinangil, Anant Agarwal, Anantha P. Chandrakasan, and Srinivas Devadas. 2012. Self-aware computing in the Angstrom processor. In DAC.
[29]
T. Horvath, T. Abdelzaher, K. Skadron, and Xue Liu. 2007. Dynamic Voltage Scaling in Multitier Web Servers with End-to-End Delay Control. Computers, IEEE Transactions on 56, 4 (2007).
[30]
Connor Imes, David H. K. Kim, Martina Maggio, and Henry Hoffmann. 2015. POET: A Portable Approach to Minimizing Energy Under Soft Real-time Constraints. In RTAS.
[31]
Engin Ipek, Onur Mutlu, José F. Martínez, and Rich Caruana. 2008. Self-Optimizing Memory Controllers: A Reinforcement Learning Approach. In ISCA.
[32]
Syed Muhammad Zeeshan Iqbal, Yuchen Liang, and Hakan Grahn. 2010. ParMiBench - An Open-Source Benchmark for Embedded Multi-processor Systems. IEEE Comput. Archit. Lett. 9, 2 (July 2010).
[33]
C. Karamanolis, M. Karlsson, and X. Zhu. 2005. Designing controllable computer systems. In HotOS. Berkeley, CA, USA.
[34]
David H. K. Kim, Connor Imes, and Henry Hoffmann. 2015. Racing and Pacing to Idle: Theoretical and Empirical Analysis of Energy Optimization Heuristics. In CPSNA.
[35]
Minyoung Kim, Mark-Oliver Stehr, Carolyn Talcott, Nikil Dutt, and Nalini Venkatasubramanian. 2013. xTune: A Formal Methodology for Cross-layer Tuning of Mobile Embedded Systems. ACM Trans. Embed. Comput. Syst. 11, 4 (Jan. 2013).
[36]
Etienne Le Sueur and Gernot Heiser. 2011. Slow Down or Sleep, That is the Question. In Proceedings of the 2011 USENIX Annual Technical Conference. Portland, OR, USA.
[37]
B.C. Lee, J. Collins, Hong Wang, and D. Brooks. 2008. CPR: Composable performance regression for scalable multiprocessor models. In MICRO.
[38]
Benjamin C. Lee and David Brooks. 2008. Eiciency Trends and Limits from Comprehensive Microarchitectural Adaptivity. In ASPLOS.
[39]
Benjamin C. Lee and David M. Brooks. 2006. Accurate and Efficient Regression Modeling for Microarchitectural Performance and Power Prediction. In ASPLOS.
[40]
Matthew Lentz, James Litton, and Bobby Bhattacharjee. 2015. Drowsy Power Management. In SOSP.
[41]
W.S. Levine. 2005. The control handbook. CRC Press.
[42]
Baochun Li and K. Nahrstedt. 1999. A control-based middleware framework for quality-of-service adaptations. IEEE Journal on Selected Areas in Communications 17, 9 (1999).
[43]
J. Li and J.F. Martinez. 2006. Dynamic power-performance adaptation of parallel computation on chip multiprocessors. In HPCA.
[44]
Lennart Ljung. 1999. System Identiication: Theory for the User. Prentice Hall PTR, Upper Saddle River, NJ, USA.
[45]
C. Lu, Y. Lu, T.F. Abdelzaher, J.A. Stankovic, and S.H. Son. 2006. Feedback Control Architecture and Design Methodology for Service Delay Guarantees in Web Servers. IEEE TPDS 17, 9 (September 2006), 1014--1027.
[46]
Martina Maggio, Henry Hofmann, Alessandro V. Papadopoulos, Jacopo Panerati, Marco D. Santambrogio, Anant Agarwal, and Alberto Leva. 2012. Comparison of Decision-Making Strategies for Self-Optimization in Autonomic Computing Systems. ACM Trans. Auton. Adapt. Syst. 7, 4, Article 36 (Dec. 2012), 32 pages.
[47]
M. Maggio, H. Hofmann, M. D. Santambrogio, A. Agarwal, and A. Leva. 2013. Power Optimization in Embedded Systems via Feedback Control of Resource Allocation. IEEE Transactions on Control Systems Technology 21, 1 (Jan 2013).
[48]
Martina Maggio, Alessandro Vittorio Papadopoulos, Antonio Filieri, and Henry Hofmann. 2017. Automated Control of Multiple Software Goals Using Multiple Actuators. In ESEC/FSE.
[49]
John D. McCalpin. 1995. Memory Bandwidth and Machine Balance in Current High Performance Computers. IEEE TCCA Newsletter (Dec. 1995), 19--25.
[50]
Nikita Mishra. 2017. Statistical Methods for Improving Dynamic Scheduling and Resource Usage in Computing Systems. Ph.D. Dissertation. https://search.proquest.com/docview/1928485902?accountid=14657
[51]
Nikita Mishra, Connor Imes, Huazhe Zhang, John D Lafferty, and Henry Hoffmann. 2016. Big Data for LITTLE Cores: Combining Learning and Control for Mobile Energy Efficiency. Technical Report TR-2016-10. University of Chicago, Dept. of Comp. Sci.
[52]
Nikita Mishra, Huazhe Zhang, John D. Laferty, and Henry Hoffmann. 2015. A Probabilistic Graphical Model-based Approach for Minimizing Energy Under Performance Constraints. In ASPLOS.
[53]
Akihiko Miyoshi, Charles Lefurgy, Eric Van Hensbergen, Ram Rajamony, and Raj Rajkumar. 2002. Critical Power Slope: Understanding the Runtime Effects of Frequency Scaling. In ICS.
[54]
Carl N Morris. 1983. Parametric empirical Bayes inference: theory and applications. J. Amer. Statist. Assoc. 78, 381 (1983), 47-55.
[55]
Adam J. Oliner, Anand P. Iyer, Ion Stoica, Eemil Lagerspetz, and Sasu Tarkoma. 2013. Carat: Collaborative Energy Diagnosis for Mobile Devices. In Proceedings of the 11th ACM Conference on Embedded Networked Sensor Systems (SenSys '13). ACM, New York, NY, USA, Article 10, 14 pages.
[56]
Sinno Jialin Pan and Qiang Yang. 2010. A Survey on Transfer Learning. IEEE Trans. on Knowl. and Data Eng. 22, 10 (Oct. 2010), 1345--1359.
[57]
Paula Petrica, Adam M. Izraelevitz, David H. Albonesi, and Christine A. Shoemaker. 2013. Flicker: A Dynamically Adaptive Architecture for Power Limited Multicore Systems. In ISCA.
[58]
Dmitry Ponomarev, Gurhan Kucuk, and Kanad Ghose. 2001. Reducing Power Requirements of Instruction Scheduling Through Dynamic Allocation of Multiple Datapath Resources. In MICRO.
[59]
Raghavendra Pothukuchi, Amin Ansari, Petros Voulgaris, and Josep Torrellas. 2016. Using Multiple Input, Multiple Output Formal Control to Maximize Resource Efficiency in Architectures. In ISCA.
[60]
Ramya Raghavendra, Parthasarathy Ranganathan, Vanish Talwar, Zhikui Wang, and Xiaoyun Zhu. 2008. No "power" struggles: coordinated multi-level power management for the data center. In ASPLOS.
[61]
R. Rajkumar, C. Lee, J. Lehoczky, and Dan Siewiorek. 1997. A resource allocation model for QoS management. In RTSS.
[62]
Arjun Roy, Stephen M. Rumble, Ryan Stutsman, Philip Levis, David Mazières, and Nickolai Zeldovich. 2011. Energy Management in Mobile Devices with the Cinder Operating System. In EuroSys.
[63]
Muhammad Husni Santriaji and Henry Hofmann. 2016. GRAPE: Minimizing energy for GPU applications with performance requirements. In MICRO.
[64]
Akbar Sharifi, Shekhar Srikantaiah, Asit K. Mishra, Mahmut Kandemir, and Chita R. Das. 2011. METE: meeting end-to-end QoS in multicores through system-wide resource management. In SIGMETRICS.
[65]
Kai Shen, Arrvindh Shriraman, Sandhya Dwarkadas, Xiao Zhang, and Zhuan Chen. 2013. Power Containers: An OS Facility for Fine-grained Power and Energy Management on Multicore Servers. SIGPLAN Not. 48, 4 (March 2013), 65-76.
[66]
David C. Snowdon, Etienne Le Sueur, Stefan M. Petters, and Gernot Heiser. 2009. Koala: A Platform for OS-level Power Management. In EuroSys.
[67]
Michal Sojka, Pavel Písa, Dario Faggioli, Tommaso Cucinotta, Fabio Checconi, Zdenek Hanzálek, and Giuseppe Lipari. 2011. Modular software architecture for lexible reservation mechanisms on hetero- geneous resources. Journal of Systems Architecture 57, 4 (2011).
[68]
Srinath Sridharan, Gagan Gupta, and Gurindar S. Sohi. 2013. Holistic Run-time Parallelism Management for Time and Energy Efficiency. In ICS.
[69]
David C. Steere, Ashvin Goel, Joshua Gruenberg, Dylan McNamee, Calton Pu, and Jonathan Walpole. 1999. A Feedback-driven Proportion Allocator for Real-rate Scheduling. In Proceedings of the Third Symposium on Operating Systems Design and Implementation (OSDI '99). USENIX Association, Berkeley, CA, USA, 145--158. http://dl.acm.org/citation.cfm?id=296806.296820
[70]
Q. Sun, G. Dai, and W. Pan. 2008. LPV Model and Its Application in Web Server Performance Control. In ICCSSE.
[71]
G. Tesauro. 2007. Reinforcement Learning in Autonomic Computing: A Manifesto and Case Studies. IEEE Internet Computing 11 (2007). Issue 1.
[72]
Michel Tokic. 2010. Adaptive ∈-Greedy Exploration in Reinforcement Learning Based on Value Diferences. In KI.
[73]
Stephen Tu and Benjamin Recht. 2017. Least-Squares Temporal Difference Learning for the Linear Quadratic Regulator. Technical Report 1712.08642v1. arXiv.
[74]
Vibhore Vardhan, Wanghong Yuan, Albert F. Harris III, Sarita V. Adve, Robin Kravets, Klara Nahrstedt, Daniel Grobe Sachs, and Douglas L. Jones. 2009. GRACE-2: integrating fine-grained application adaptation with global adaptation for saving energy. IJES 4, 2 (2009).
[75]
Greg Welch and Gary Bishop. {n. d.}. An Introduction to the Kalman Filter. Technical Report TR 95-041. UNC Chapel Hill, Department of Computer Science.
[76]
Jonathan A. Winter, David H. Albonesi, and Christine A. Shoemaker. 2010. Scalable thread scheduling and global power management for heterogeneous many-core architectures. In PACT.
[77]
Qiang Wu, Philo Juang, Margaret Martonosi, and Douglas W. Clark. 2004. Formal online methods for voltage/frequency control in multiple clock domain microprocessors. In ASPLOS.
[78]
Weidan Wu and Benjamin C Lee. 2012. Inferred models for dynamic and sparse hardware-software spaces. In Microarchitecture (MICRO), 2012 45th Annual IEEE/ACM International Symposium on. IEEE, 413--424.
[79]
Joshua J. Yi, David J. Lilja, and Douglas M. Hawkins. 2003. A Statistically Rigorous Approach for Improving Simulation Methodology. In HPCA.
[80]
Wanghong Yuan and Klara Nahrstedt. 2003. Energy-efficient soft real-time CPU scheduling for mobile multimedia systems. In SOSP.
[81]
Huazhe Zhang and Henry Hofmann. 2016. Maximizing Performance Under a Power Cap: A Comparison of Hardware, Software, and Hybrid Techniques. In ASPLOS.
[82]
R. Zhang, C. Lu, T.F. Abdelzaher, and J.A. Stankovic. 2002. Control-Ware: A middleware architecture for Feedback Control of Software Performance. In ICDCS.
[83]
Xiao Zhang, Rongrong Zhong, Sandhya Dwarkadas, and Kai Shen. 2012. A Flexible Framework for Throttling-Enabled Multicore Management (TEMM). In ICPP.
[84]
Yanqi Zhou, Henry Hofmann, and David Wentzlaf. 2016. CASH: Supporting IaaS Customers with a Sub-core Conigurable Architecture. In ISCA.
[85]
Yuhao Zhu and Vijay Janapa Reddi. 2013. High-performance and energy-efficient mobile web browsing on big/little systems. In HPCA.

Cited By

View all
  • (2024)Extending parallel programming patterns with adaptability featuresCluster Computing10.1007/s10586-024-04622-027:9(12547-12568)Online publication date: 1-Dec-2024
  • (2023)Machine learning in run-time control of multicore processor systemsit - Information Technology10.1515/itit-2023-005665:4-5(164-176)Online publication date: 2-Aug-2023
  • (2023)Challenges and Opportunities in Sustainable Serverless ComputingACM SIGEnergy Energy Informatics Review10.1145/3630614.36306243:3(53-58)Online publication date: 25-Oct-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASPLOS '18: Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems
March 2018
827 pages
ISBN:9781450349116
DOI:10.1145/3173162
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 53, Issue 2
    ASPLOS '18
    February 2018
    809 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/3296957
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 19 March 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. control theory
  2. energy
  3. heterogeneous architectures
  4. machine learning
  5. real-time systems
  6. resource allocation

Qualifiers

  • Research-article

Funding Sources

Conference

ASPLOS '18

Acceptance Rates

ASPLOS '18 Paper Acceptance Rate 56 of 319 submissions, 18%;
Overall Acceptance Rate 535 of 2,713 submissions, 20%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)219
  • Downloads (Last 6 weeks)41
Reflects downloads up to 15 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Extending parallel programming patterns with adaptability featuresCluster Computing10.1007/s10586-024-04622-027:9(12547-12568)Online publication date: 1-Dec-2024
  • (2023)Machine learning in run-time control of multicore processor systemsit - Information Technology10.1515/itit-2023-005665:4-5(164-176)Online publication date: 2-Aug-2023
  • (2023)Challenges and Opportunities in Sustainable Serverless ComputingACM SIGEnergy Energy Informatics Review10.1145/3630614.36306243:3(53-58)Online publication date: 25-Oct-2023
  • (2023)DDPC: Automated Data-Driven Power-Performance Controller Design on-the-fly for Latency-sensitive Web ServicesProceedings of the ACM Web Conference 202310.1145/3543507.3583437(3067-3076)Online publication date: 30-Apr-2023
  • (2022)GOAL: Supporting General and Dynamic Adaptation in Computing SystemsProceedings of the 2022 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3563835.3567655(16-32)Online publication date: 29-Nov-2022
  • (2022)AgileCtrl: a self-adaptive framework for configuration tuningProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3549136(459-471)Online publication date: 7-Nov-2022
  • (2022)Protecting adaptive sampling from information leakage on low-power sensorsProceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3503222.3507775(240-254)Online publication date: 28-Feb-2022
  • (2022)Multi-Tier Workload Consolidations in the Cloud: Profiling, Modeling and OptimizationIEEE Transactions on Cloud Computing10.1109/TCC.2020.297578810:2(899-912)Online publication date: 1-Apr-2022
  • (2022)Amphis: Managing Reconfigurable Processor Architectures With Generative Adversarial LearningIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.319798041:11(3993-4003)Online publication date: Nov-2022
  • (2022)Future aware Dynamic Thermal Management in CPU-GPU Embedded Platforms2022 IEEE Real-Time Systems Symposium (RTSS)10.1109/RTSS55097.2022.00041(396-408)Online publication date: Dec-2022
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media