skip to main content
10.1145/3563835.3567655acmconferencesArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
research-article
Public Access

GOAL: Supporting General and Dynamic Adaptation in Computing Systems

Published:01 December 2022Publication History

ABSTRACT

Adaptive computing systems automatically monitor their behavior and dynamically adjust their own configuration parameters—or knobs—to ensure that user goals are met despite unpredictable external disturbances to the system. A major limitation of prior adaptation frameworks is that their internal adaptation logic is implemented for a specific, narrow set of goals and knobs, which impedes the development of complex adaptive systems that must meet different goals using different sets of knobs for different deployments, or even change goals during one deployment.

To overcome this limitation we propose GOAL, an adaptation framework distinguished by its virtualized adaptation logic implemented independently of any specific goals or knobs. GOAL supports this logic with a programming interface allowing users to define and manipulate a wide range of goals and knobs within a running program. We demonstrate GOAL’s benefits by using it re-implement seven different adaptive systems from the literature, each of which has a different set of goals and knobs. We show GOAL’s general approach meets goals as well as prior approaches designed for specific goals and knobs. In dynamic scenarios where the goals and knobs are modified at runtime, GOAL achieves 93.7

References

  1. [n.d.]. Arlo: Wire-Free HD and HDR Smart Home Security Cameras. https://www.arlo.com/en-us/default.aspx Google ScholarGoogle Scholar
  2. [n.d.]. Tesseract OCR. https://opensource.google/projects/tesseract Google ScholarGoogle Scholar
  3. Frederico Alvares, Gwenaël Delaval, Eric Rutten, and Lionel Seinturier. 2017. Language Support for Modular Autonomic Managers in Reconfigurable Software Components. In 2017 IEEE International Conference on Autonomic Computing (ICAC). 271–278. https://doi.org/10.1109/ICAC.2017.48 Google ScholarGoogle ScholarCross RefCross Ref
  4. 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 Proceedings of the 2012 International Conference on Compilers, Architectures and Synthesis for Embedded Systems (CASES ’12). ACM, New York, NY, USA. 91–100. isbn:978-1-4503-1424-4 https://doi.org/10.1145/2380403.2380425 Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Apple. 2019. Swift. https://developer.apple.com/swift/ Google ScholarGoogle Scholar
  6. Woongki Baek and Trishul M. Chilimbi. 2010. Green: A Framework for Supporting Energy-conscious Programming Using Controlled Approximation. In Proceedings of the 31st ACM Conference on Programming Language Design and Implementation (PLDI ’10). ACM, New York, NY, USA. 198–209. isbn:978-1-4503-0019-3 https://doi.org/10.1145/1806596.1806620 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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), 1632–1650. https://doi.org/10.1109/49.790486 Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Saeid Barati, Ferenc A. Bartha, Swarnendu Biswas, Robert Cartwright, Adam Duracz, Donald Fussell, Henry Hoffmann, Connor Imes, Jason Miller, Nikita Mishra, Arvind, Dung Nguyen, Krishna V. Palem, Yan Pei, Keshav Pingali, Ryuichi Sai, Andrew Wright, Yao-Hsiang Yang, and Sizhuo Zhang. 2019. Proteus: Language and Runtime Support for Self-Adaptive Software Development. IEEE Software, 36, 2 (2019), 73–82. https://doi.org/10.1109/MS.2018.2884864 Google ScholarGoogle ScholarCross RefCross Ref
  9. Josep Ll. Berral, Íñigo Goiri, Ramón Nou, Ferran Julià, Jordi Guitart, Ricard Gavaldà, and Jordi Torres. 2010. Towards Energy-aware Scheduling in Data Centers Using Machine Learning. In Proceedings of the 1st International Conference on Energy-Efficient Computing and Networking (e-Energy ’10). ACM, New York, NY, USA. 215–224. isbn:978-1-4503-0042-1 https://doi.org/10.1145/1791314.1791349 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. James Bornholt, Todd Mytkowicz, and Kathryn S. McKinley. 2014. Uncertain<T>: A First-Order Type for Uncertain Data. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS ’14). Association for Computing Machinery, New York, NY, USA. 51–66. isbn:9781450323055 https://doi.org/10.1145/2541940.2541958 Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. John Boyd. 1995. The Essence of Winning and Losing. Online document. https://www.danford.net/boyd/essence.htm Google ScholarGoogle Scholar
  12. John Raymond Boyd. 1976. Destruction and Creation. Google ScholarGoogle Scholar
  13. John Raymond Boyd. 1996. The Essence of Winning and Losing. Google ScholarGoogle Scholar
  14. Stephen P. Bradley, Arnoldo C. Hax, and Thomas L. Magnanti. 1977. Applied mathematical programming. Addison-Wesley. Google ScholarGoogle Scholar
  15. Anthony Canino and Yu David Liu. 2017. Proactive and Adaptive Energy-aware Programming with Mixed Typechecking. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2017). ACM, New York, NY, USA. 217–232. isbn:978-1-4503-4988-8 https://doi.org/10.1145/3062341.3062356 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Anthony Canino, Yu David Liu, and Hidehiko Masuhara. 2018. Stochastic Energy Optimization for Mobile GPS Applications. In Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2018). ACM, New York, NY, USA. 703–713. isbn:978-1-4503-5573-5 https://doi.org/10.1145/3236024.3236076 Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Liyu Cao and Howard M. Schwartz. 2004. Analysis of the Kalman filter based estimation algorithm: an orthogonal decomposition approach. Automatica, 40, 1 (2004), 5–19. issn:0005-1098 https://doi.org/10.1016/j.automatica.2003.07.011 Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Jacques Carette, Oleg Kiselyov, and Chung-chieh Shan. 2009. Finally tagless, partially evaluated: Tagless staged interpreters for simpler typed languages. Journal of Functional Programming, 19, 5 (2009), 509–543. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. H. Chen, M. Song, J. Song, A. Gavrilovska, and K. Schwan. 2011. HEaRS: A Hierarchical Energy-Aware Resource Scheduler for Virtualized Data Centers. In 2011 IEEE International Conference on Cluster Computing. 508–512. https://doi.org/10.1109/CLUSTER.2011.60 Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Christina Delimitrou and Christos Kozyrakis. 2013. Paragon: QoS-Aware Scheduling for Heterogeneous Datacenters. SIGPLAN Not., 48, 4 (2013), March, 77–88. issn:0362-1340 https://doi.org/10.1145/2499368.2451125 Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Christina Delimitrou and Christos Kozyrakis. 2014. Quasar: Resource-Efficient and QoS-Aware Cluster Management. SIGPLAN Not., 49, 4 (2014), Feb., 127–144. issn:0362-1340 https://doi.org/10.1145/2644865.2541941 Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Yi Ding, Nikita Mishra, and Henry Hoffmann. 2019. Generative and Multi-Phase Learning for Computer Systems Optimization. In Proceedings of the 46th International Symposium on Computer Architecture (ISCA ’19). Association for Computing Machinery, New York, NY, USA. 39–52. isbn:9781450366694 https://doi.org/10.1145/3307650.3326633 Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Yi Ding, Nikita Mishra, and Henry Hoffmann. 2019. Generative and Multi-Phase Learning for Computer Systems Optimization. In Proceedings of the 46th International Symposium on Computer Architecture (ISCA ’19). Association for Computing Machinery, New York, NY, USA. 39–52. isbn:9781450366694 https://doi.org/10.1145/3307650.3326633 Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Mirko D’Angelo. 2018. Decentralized Self-Adaptive Computing at the Edge. In Proceedings of the 13th International Conference on Software Engineering for Adaptive and Self-Managing Systems (SEAMS ’18). Association for Computing Machinery, New York, NY, USA. 144–148. isbn:9781450357159 https://doi.org/10.1145/3194133.3194160 Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, and Doug Burger. 2012. Architecture Support for Disciplined Approximate Programming. SIGARCH Comput. Archit. News, 40, 1 (2012), March, 301–312. issn:0163-5964 https://doi.org/10.1145/2189750.2151008 Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Antonio Filieri, Henry Hoffmann, and Martina Maggio. 2014. Automated Design of Self-adaptive Software with Control-theoretical Formal Guarantees. In Proceedings of the 36th International Conference on Software Engineering (ICSE 2014). ACM, New York, NY, USA. 299–310. isbn:978-1-4503-2756-5 https://doi.org/10.1145/2568225.2568272 Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Antonio Filieri, Henry Hoffmann, and Martina Maggio. 2015. Automated Multi-objective Control for Self-adaptive Software Design. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering (ESEC/FSE 2015). ACM, New York, NY, USA. 13–24. isbn:978-1-4503-3675-8 https://doi.org/10.1145/2786805.2786833 Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Antonio Filieri, Martina Maggio, Konstantinos Angelopoulos, Nicolás D’Ippolito, Ilias Gerostathopoulos, Andreas Berndt Hempel, Henry Hoffmann, Pooyan Jamshidi, Evangelia Kalyvianaki, Cristian Klein, Filip Krikava, Sasa Misailovic, Alessandro Vittorio Papadopoulos, Suprio Ray, Amir Molzam Sharifloo, Stepan Shevtsov, Mateusz Ujma, and Thomas Vogel. 2017. Control Strategies for Self-Adaptive Software Systems. TAAS, 11, 4 (2017), https://doi.org/10.1145/3024188 Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Jason Flinn and M. Satyanarayanan. 1999. Energy-Aware Adaptation for Mobile Applications. In Proceedings of the Seventeenth ACM Symposium on Operating Systems Principles (SOSP ’99). Association for Computing Machinery, New York, NY, USA. 48–63. isbn:1581131402 https://doi.org/10.1145/319151.319155 Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Andrei Frumusanu. 2018. Improving The Exynos 9810 Galaxy S9: Part 1. https://www.anandtech.com/show/12615/improving-exynos-9810-galaxy-s9-part-1. Google ScholarGoogle Scholar
  31. Andrei Frumusanu. 2018. The Samsung Galaxy S9 and S9+ Review: Exynos and Snapdragon at 960fps. https://www.anandtech.com/show/12520/the-galaxy-s9-review/5. Google ScholarGoogle Scholar
  32. Jim Gao. 2014. Machine Learning Applications for Data Center Optimization. Google ScholarGoogle Scholar
  33. Ashvin Goel, David Steere, Calton Pu, and Jonathan Walpole. 1998. SWiFT: A Feedback Control and Dynamic Reconfiguration Toolkit. Google ScholarGoogle Scholar
  34. J. Goodman, A. P. Dancy, and A. P. Chandrakasan. 1998. An energy/security scalable encryption processor using an embedded variable voltage DC/DC converter. IEEE Journal of Solid-State Circuits, 33, 11 (1998), Nov, 1799–1809. issn:1558-173X https://doi.org/10.1109/4.726580 Google ScholarGoogle ScholarCross RefCross Ref
  35. Google. 2020. Android Power Management: Battery Saver. https://developer.android.com/about/versions/pie/power##battery-saver Google ScholarGoogle Scholar
  36. Guang-Liang Li. 1995. An analysis of impact of workload fluctuations on performance of computer systems. In Proceedings of 1995 IEEE International Computer Performance and Dependability Symposium. 256–264. https://doi.org/10.1109/IPDS.1995.395826 Google ScholarGoogle ScholarCross RefCross Ref
  37. Arpan Gujarati, Reza Karimi, Safya Alzayat, Wei Hao, Antoine Kaufmann, Ymir Vigfusson, and Jonathan Mace. 2020. Serving DNNs like Clockwork: Performance Predictability from the Bottom Up. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20). USENIX Association, 443–462. isbn:978-1-939133-19-9 https://www.usenix.org/conference/osdi20/presentation/gujarati Google ScholarGoogle Scholar
  38. Mingzhe Hao, Levent Toksoz, Nanqinqin Li, Edward Edberg Halim, Henry Hoffmann, and Haryadi S. Gunawi. 2020. LinnOS: Predictability on Unpredictable Flash Storage with a Light Neural Network. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20). USENIX Association, 173–190. isbn:978-1-939133-19-9 https://www.usenix.org/conference/osdi20/presentation/hao Google ScholarGoogle Scholar
  39. Joseph L. Hellerstein. 2009. Engineering Autonomic Systems. In Proceedings of the 6th International Conference on Autonomic Computing (ICAC ’09). Association for Computing Machinery, New York, NY, USA. 75–76. isbn:9781605585642 https://doi.org/10.1145/1555228.1555254 Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Joseph L. Hellerstein, Yixin Diao, Sujay Parekh, and Dawn M. Tilbury. 2004. Feedback Control of Computing Systems. John Wiley & Sons. isbn:047126637X Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Henry Hoffmann. 2015. JouleGuard: Energy Guarantees for Approximate Applications. In Proceedings of the 25th Symposium on Operating Systems Principles (SOSP ’15). ACM, New York, NY, USA. 198–214. isbn:978-1-4503-3834-9 https://doi.org/10.1145/2815400.2815403 Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Henry Hoffmann, 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 Proceedings of the 49th Annual Design Automation Conference (DAC ’12). Association for Computing Machinery, New York, NY, USA. 259–264. isbn:9781450311991 https://doi.org/10.1145/2228360.2228409 Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Henry Hoffmann, 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 Proceedings of the 49th Annual Design Automation Conference (DAC ’12). Association for Computing Machinery, New York, NY, USA. 259–264. isbn:9781450311991 https://doi.org/10.1145/2228360.2228409 Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Henry Hoffmann, Stelios Sidiroglou, Michael Carbin, Sasa Misailovic, Anant Agarwal, and Martin Rinard. 2011. Dynamic Knobs for Responsive Power-Aware Computing. In Proceedings of the Sixteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XVI). Association for Computing Machinery, New York, NY, USA. 199–212. isbn:9781450302661 https://doi.org/10.1145/1950365.1950390 Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Petr Jan Horn. 2001. Autonomic Computing: IBM’s Perspective on the State of Information Technology. Google ScholarGoogle Scholar
  46. Y. Hsu, K. Matsuda, and M. Matsuoka. 2018. Self-Aware Workload Forecasting in Data Center Power Prediction. In 2018 18th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID). 321–330. Google ScholarGoogle Scholar
  47. Jian Huang, Xuechen Zhang, and Karsten Schwan. 2015. Understanding issue correlations: a case study of the Hadoop system. In SoCC. Google ScholarGoogle Scholar
  48. Connor Imes, Lars Bergstrom, and Henry Hoffmann. 2016. A Portable Interface for Runtime Energy Monitoring. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE 2016). Association for Computing Machinery, New York, NY, USA. 968–974. isbn:9781450342186 https://doi.org/10.1145/2950290.2983956 Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Connor Imes and Henry Hoffmann. 2016. Bard: A unified framework for managing soft timing and power constraints. In Embedded Computer Systems: Architectures, Modeling and Simulation (SAMOS), 2016 International Conference on. 31–38. Google ScholarGoogle Scholar
  50. Connor Imes, Steven Hofmeyr, and Henry Hoffmann. 2018. Energy-Efficient Application Resource Scheduling Using Machine Learning Classifiers. In Proceedings of the 47th International Conference on Parallel Processing (ICPP 2018). Association for Computing Machinery, New York, NY, USA. Article 45, 11 pages. isbn:9781450365109 https://doi.org/10.1145/3225058.3225088 Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. C. Imes, D. H. K. Kim, M. Maggio, and H. Hoffmann. 2015. POET: a portable approach to minimizing energy under soft real-time constraints. In 21st IEEE Real-Time and Embedded Technology and Applications Symposium. 75–86. https://doi.org/10.1109/RTAS.2015.7108419 Google ScholarGoogle ScholarCross RefCross Ref
  52. Evangelia Kalyvianaki, Themistoklis Charalambous, and Steven Hand. 2009. Self-Adaptive and Self-Configured CPU Resource Provisioning for Virtualized Servers Using Kalman Filters. In Proceedings of the 6th International Conference on Autonomic Computing (ICAC ’09). Association for Computing Machinery, New York, NY, USA. 117–126. isbn:9781605585642 https://doi.org/10.1145/1555228.1555261 Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Evangelia Kalyvianaki, Themistoklis Charalambous, and Steven Hand. 2014. Adaptive Resource Provisioning for Virtualized Servers Using Kalman Filters. ACM Trans. Auton. Adapt. Syst., 9, 2 (2014), Article 10, July, 35 pages. issn:1556-4665 https://doi.org/10.1145/2626290 Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Aman Kansal, Scott Saponas, A.J. Bernheim Brush, Kathryn S. McKinley, Todd Mytkowicz, and Ryder Ziola. 2013. The Latency, Accuracy, and Battery (LAB) Abstraction: Programmer Productivity and Energy Efficiency for Continuous Mobile Context Sensing. In Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications (OOPSLA ’13). ACM, New York, NY, USA. 661–676. isbn:978-1-4503-2374-1 https://doi.org/10.1145/2509136.2509541 Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. J. O. Kephart and D. M. Chess. 2003. The vision of autonomic computing. Computer, 36, 1 (2003), Jan, 41–50. https://doi.org/10.1109/MC.2003.1160055 Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. 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 (2013), Article 73, Jan., 23 pages. issn:1539-9087 https://doi.org/10.1145/2362336.2362340 Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Karl Krauth, Stephen Tu, and Benjamin Recht. 2019. Finite-time Analysis of Approximate Policy Iteration for the Linear Quadratic Regulator. In Advances in Neural Information Processing Systems 32, H. Wallach, H. Larochelle, A. Beygelzimer, F. d' Alché-Buc, E. Fox, and R. Garnett (Eds.). Curran Associates, Inc., 8514–8524. http://papers.nips.cc/paper/9058-finite-time-analysis-of-approximate-policy-iteration-for-the-linear-quadratic-regulator.pdf Google ScholarGoogle Scholar
  58. Robert Laddaga. 1999. Guest Editor’s Introduction: Creating Robust Software Through Self-Adaptation. IEEE Intelligent Systems, 14, 3 (1999), May, 26–29. issn:1541-1672 https://doi.org/10.1109/MIS.1999.769879 Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Guang-Liang Li and P. Dowd. 1995. An analysis of network performance degradation induced by workload fluctuations. IEEE/ACM Transactions on Networking, 3, 04 (1995), jul, 433–440. issn:1558-2566 https://doi.org/10.1109/90.413217 Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Kiwan Maeng and Brandon Lucia. 2018. Adaptive Dynamic Checkpointing for Safe Efficient Intermittent Computing. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). USENIX Association, Carlsbad, CA. 129–144. isbn:978-1-939133-08-3 https://www.usenix.org/conference/osdi18/presentation/maeng Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Martina Maggio, Henry Hoffmann, 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 (2012), Article 36, Dec., 32 pages. issn:1556-4665 https://doi.org/10.1145/2382570.2382572 Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Martina Maggio, Alessandro Vittorio Papadopoulos, Antonio Filieri, and Henry Hoffmann. 2017. Automated Control of Multiple Software Goals Using Multiple Actuators. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering (ESEC/FSE 2017). Association for Computing Machinery, New York, NY, USA. 373–384. isbn:9781450351058 https://doi.org/10.1145/3106237.3106247 Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. M. Maggio, A. V. Papadopoulos, A. Filieri, and H. Hoffmann. 2017. Self-Adaptive Video Encoder: Comparison of Multiple Adaptation Strategies Made Simple. In 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS). 123–128. issn:null https://doi.org/10.1109/SEAMS.2017.16 Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Hongzi Mao, Ravi Netravali, and Mohammad Alizadeh. 2017. Neural Adaptive Video Streaming with Pensieve. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (SIGCOMM ’17). Association for Computing Machinery, New York, NY, USA. 197–210. isbn:9781450346535 https://doi.org/10.1145/3098822.3098843 Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Nikita Mishra, Connor Imes, John D. Lafferty, and Henry Hoffmann. 2018. CALOREE: Learning Control for Predictable Latency and Low Energy. In Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS ’18). Association for Computing Machinery, New York, NY, USA. 184–198. isbn:9781450349116 https://doi.org/10.1145/3173162.3173184 Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. A. Moustafa and M. Zhang. 2014. Learning Efficient Compositions for QoS-Aware Service Provisioning. In 2014 IEEE International Conference on Web Services. 185–192. https://doi.org/10.1109/ICWS.2014.37 Google ScholarGoogle ScholarCross RefCross Ref
  67. Frans P. B. Osinga. 2007. Science, Strategy and War: The strategic theory of John Boyd. Routledge. Google ScholarGoogle Scholar
  68. A. Padovitz, S. Loke, and A. Zaslavsky. 2003. Awareness and Agility for Autonomic Distributed Systems: Platform-Independent Publish-Subscribe Event-Based Communication for Mobile Agents. In 2012 23rd International Workshop on Database and Expert Systems Applications. IEEE Computer Society, Los Alamitos, CA, USA. 669. issn:1529-4188 https://doi.org/10.1109/DEXA.2003.1232098 Google ScholarGoogle ScholarCross RefCross Ref
  69. Ariel Rabkin and Randy Howard Katz. 2013. How hadoop clusters break. IEEE software, 30, 4 (2013). Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. Amir M. Rahmani, Bryan Donyanavard, Tiago Mück, Kasra Moazzemi, Axel Jantsch, Onur Mutlu, and Nikil Dutt. 2018. SPECTR: Formal Supervisory Control and Coordination for Many-Core Systems Resource Management. SIGPLAN Not., 53, 2 (2018), March, 169–183. issn:0362-1340 https://doi.org/10.1145/3296957.3173199 Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Redhat. 2020. Tuned: Tuning Profile Delivery Mechanism for Linux. https://tuned-project.org/ Google ScholarGoogle Scholar
  72. Eric Rutten, Nicolas Marchand, and Daniel Simon. 2017. Feedback Control as MAPE-K Loop in Autonomic Computing. In Software Engineering for Self-Adaptive Systems III. Assurances, Rogério de Lemos, David Garlan, Carlo Ghezzi, and Holger Giese (Eds.). Springer International Publishing, Cham. 349–373. isbn:978-3-319-74183-3 Google ScholarGoogle Scholar
  73. M. Révay and M. Líška. 2017. OODA loop in command control systems. In 2017 Communication and Information Technologies (KIT). 1–4. https://doi.org/10.23919/KIT.2017.8109463 Google ScholarGoogle ScholarCross RefCross Ref
  74. Adrian Sampson, Werner Dietl, Emily Fortuna, Danushen Gnanapragasam, Luis Ceze, and Dan Grossman. 2011. EnerJ: Approximate Data Types for Safe and General Low-power Computation. In Proceedings of the 32Nd ACM Conference on Programming Language Design and Implementation (PLDI ’11). ACM, New York, NY, USA. 164–174. isbn:978-1-4503-0663-8 https://doi.org/10.1145/1993498.1993518 Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. Muhammad Husni Santriaji and Henry Hoffmann. 2016. GRAPE: Minimizing energy for GPU applications with performance requirements. In 2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). 1–13. https://doi.org/10.1109/MICRO.2016.7783719 Google ScholarGoogle ScholarCross RefCross Ref
  76. Homeland Security. 2013. CCTV Technology Handbook. Online Documen. Google ScholarGoogle Scholar
  77. 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 Proceedings of the ACM SIGMETRICS Joint International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS ’11). Association for Computing Machinery, New York, NY, USA. 13–24. isbn:9781450308144 https://doi.org/10.1145/1993744.1993747 Google ScholarGoogle ScholarDigital LibraryDigital Library
  78. David C. Snowdon, Etienne Le Sueur, Stefan M. Petters, and Gernot Heiser. 2009. Koala: A Platform for OS-Level Power Management. In Proceedings of the 4th ACM European Conference on Computer Systems (EuroSys ’09). Association for Computing Machinery, New York, NY, USA. 289–302. isbn:9781605584829 https://doi.org/10.1145/1519065.1519097 Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Jacob Sorber, Alexander Kostadinov, Matthew Garber, Matthew Brennan, Mark D. Corner, and Emery D. Berger. 2007. Eon: A Language and Runtime System for Perpetual Systems. In In Proceedings of The Fifth International ACM Conference on Embedded Networked Sensor Systems (SenSys ’07), Syndey. Google ScholarGoogle Scholar
  80. Akshitha Sriraman and Thomas F. Wenisch. 2018. mu Tune: Auto-Tuned Threading for OLDI Microservices. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). USENIX Association, Carlsbad, CA. 177–194. isbn:978-1-939133-08-3 https://www.usenix.org/conference/osdi18/presentation/sriraman Google ScholarGoogle Scholar
  81. 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, USA. 145–158. isbn:1880446391 Google ScholarGoogle ScholarDigital LibraryDigital Library
  82. Xin Sui, Andrew Lenharth, Donald S. Fussell, and Keshav Pingali. 2016. Proactive Control of Approximate Programs. In Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS ’16, Atlanta, GA, USA, April 2-6, 2016. 607–621. https://doi.org/10.1145/2872362.2872402 Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Chunqiang Tang, Kenny Yu, Kaushik Veeraraghavan, Jonathan Kaldor, Scott Michelson, Thawan Kooburat, Aravind Anbudurai, Matthew Clark, Kabir Gogia, Long Cheng, Ben Christensen, Alex Gartrell, Maxim Khutornenko, Sachin Kulkarni, Marcin Pawlowski, Tuomas Pelkonen, Andre Rodrigues, Rounak Tibrewal, Vaishnavi Venkatesan, and Peter Zhang. 2020. Twine: A Unified Cluster Management System for Shared Infrastructure. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20). USENIX Association, 787–803. isbn:978-1-939133-19-9 https://www.usenix.org/conference/osdi20/presentation/tang Google ScholarGoogle Scholar
  84. Konstantinos Tovletoglou, Lev Mukhanov, Dimitrios S. Nikolopoulos, and Georgios Karakonstantis. 2020. HaRMony: Heterogeneous-Reliability Memory and QoS-Aware Energy Management on Virtualized Servers. In Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS ’20). Association for Computing Machinery, New York, NY, USA. 575–590. isbn:9781450371025 https://doi.org/10.1145/3373376.3378489 Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Stephen Tu and Benjamin Recht. 2018. Least-Squares Temporal Difference Learning for the Linear Quadratic Regulator. In Proceedings of the 35th International Conference on Machine Learning, Jennifer Dy and Andreas Krause (Eds.) (Proceedings of Machine Learning Research, Vol. 80). PMLR, Stockholmsmässan, Stockholm Sweden. 5005–5014. http://proceedings.mlr.press/v80/tu18a.html Google ScholarGoogle Scholar
  86. David Vengerov. 2009. A reinforcement learning framework for utility-based scheduling in resource-constrained systems. Future Generation Computer Systems, 25, 7 (2009), 728 – 736. issn:0167-739X https://doi.org/10.1016/j.future.2008.02.006 Google ScholarGoogle ScholarDigital LibraryDigital Library
  87. Jóakim von Kistowski, Hansfried Block, John Beckett, Klaus-Dieter Lange, Jeremy Arnold, and Samuel Kounev. 2015. Analysis of the Influences on Server Power Consumption and Energy Efficiency for CPU-Intensive Workloads. ICPE 2015 - Proceedings of the 6th ACM/SPEC International Conference on Performance Engineering, https://doi.org/10.1145/2668930.2688057 Google ScholarGoogle ScholarDigital LibraryDigital Library
  88. Chengcheng Wan, Muhammad Santriaji, Eri Rogers, Henry Hoffmann, Michael Maire, and Shan Lu. 2020. ALERT: Accurate Learning for Energy and Timeliness. In 2020 USENIX Annual Technical Conference (USENIX ATC 20). USENIX Association, 353–369. isbn:978-1-939133-14-4 https://www.usenix.org/conference/atc20/presentation/wan Google ScholarGoogle Scholar
  89. Hongbign Wang, Xin Chen, Qin Wu, Qi Yu, Xingguo Hu, Zibin Zheng, and Athman Bouguettaya. 2017. Integrating Reinforcement Learning with Multi-Agent Techniques for Adaptive Service Composition. ACM Trans. Auton. Adapt. Syst., 12, 2 (2017), Article 8, May, 42 pages. issn:1556-4665 https://doi.org/10.1145/3058592 Google ScholarGoogle ScholarDigital LibraryDigital Library
  90. Shu Wang, Chi Li, Henry Hoffmann, Shan Lu, William Sentosa, and Achmad Imam Kistijantoro. 2018. Understanding and Auto-Adjusting Performance-Sensitive Configurations. In Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS ’18). ACM, New York, NY, USA. 154–168. isbn:978-1-4503-4911-6 https://doi.org/10.1145/3173162.3173206 Google ScholarGoogle ScholarDigital LibraryDigital Library
  91. Yanzhi Wang and Massoud Pedram. 2016. Model-Free Reinforcement Learning and Bayesian Classification in System-Level Power Management. IEEE Trans. Comput., 65, 12 (2016), Dec, 3713–3726. issn:2326-3814 https://doi.org/10.1109/TC.2016.2543219 Google ScholarGoogle ScholarDigital LibraryDigital Library
  92. Greg Welch and Gary Bishop. 1995. An Introduction to the Kalman Filter. USA. Google ScholarGoogle Scholar
  93. Hyunho Yeo, Youngmok Jung, Jaehong Kim, Jinwoo Shin, and Dongsu Han. 2018. Neural Adaptive Content-aware Internet Video Delivery. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). USENIX Association, Carlsbad, CA. 645–661. isbn:978-1-939133-08-3 https://www.usenix.org/conference/osdi18/presentation/yeo Google ScholarGoogle Scholar
  94. Wanghong Yuan and Klara Nahrstedt. 2003. Energy-Efficient Soft Real-Time CPU Scheduling for Mobile Multimedia Systems. In Proceedings of the Nineteenth ACM Symposium on Operating Systems Principles (SOSP ’03). Association for Computing Machinery, New York, NY, USA. 149–163. isbn:1581137575 https://doi.org/10.1145/945445.945460 Google ScholarGoogle ScholarDigital LibraryDigital Library
  95. Ronghua Zhang, Chenyang Lu, Tarek F. Abdelzaher, and John A. Stankovic. 2002. ControlWare: a middleware architecture for feedback control of software performance. In Proceedings 22nd International Conference on Distributed Computing Systems. 301–310. issn:1063-6927 https://doi.org/10.1109/ICDCS.2002.1022267 Google ScholarGoogle ScholarCross RefCross Ref
  96. Yuhao Zhu and Vijay Janapa Reddi. 2016. GreenWeb: Language Extensions for Energy-efficient Mobile Web Computing. In Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI ’16). ACM, New York, NY, USA. 145–160. isbn:978-1-4503-4261-2 https://doi.org/10.1145/2908080.2908082 Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. GOAL: Supporting General and Dynamic Adaptation in Computing Systems

      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
      • Published in

        cover image ACM Conferences
        Onward! 2022: Proceedings of the 2022 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software
        November 2022
        269 pages
        ISBN:9781450399098
        DOI:10.1145/3563835

        Copyright © 2022 ACM

        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].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 December 2022

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
      • Article Metrics

        • Downloads (Last 12 months)108
        • Downloads (Last 6 weeks)16

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader