Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Open access

VESTA: Power Modeling with Language Runtime Events

Published: 20 June 2024 Publication History

Abstract

Power modeling is an essential building block for computer systems in support of energy optimization, energy profiling, and energy-aware application development. We introduce VESTA, a novel approach to modeling the power consumption of applications with one key insight: language runtime events are often correlated with a sustained level of power consumption. When compared with the established approach of power modeling based on hardware performance counters (HPCs), VESTA has the benefit of solely requiring application-scoped information and enabling a higher level of explainability, while achieving comparable or even higher precision. Through experiments performed on 37 real-world applications on the Java Virtual Machine (JVM), we find the power model built by VESTA is capable of predicting energy consumption with a mean absolute percentage error of 1.56%, while the monitoring of language runtime events incurs small performance and energy overhead.

References

[1]
Timur Babakol, Anthony Canino, and Yu David Liu. 2022. Eflect: Porting Energy-Aware Applications to Shared Environments. In International Conference on Software Engineering (ICSE’22). Association for Computing Machinery, New York, NY, USA. 823–834. isbn:9781450392211 https://doi.org/10.1145/3510003.3510145
[2]
Timur Babakol, Anthony Canino, Khaled Mahmoud, Rachit Saxena, and Yu David Liu. 2020. Calm energy accounting for multithreaded Java applications. In ESEC/FSE ’20: 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Virtual Event, USA, November 8-13, 2020, Prem Devanbu, Myra B. Cohen, and Thomas Zimmermann (Eds.). ACM, 976–988. https://doi.org/10.1145/3368089.3409703
[3]
Timur Babakol and Yu David Liu. 2024. Tensor-Aware Energy Accounting. In International Conference on Software Engineering (ICSE’24). ACM. https://doi.org/10.1145/3597503.3639156
[4]
Woongki Baek and Trishul M. Chilimbi. 2010. Green: a framework for supporting energy-conscious programming using controlled approximation. In PLDI’10. 198–209. https://doi.org/10.1145/1809028.1806620
[5]
R. Bertran, M. Gonzelez, X. Martorell, N. Navarro, and E. Ayguade. 2013. A systematic methodology to generate decomposable and responsive power models for cmps. IEEE Trans. Comput., 62, 7 (2013), 1289–1302. https://doi.org/10.1109/tc.2012.97
[6]
Nathan Binkert, Bradford Beckmann, Gabriel Black, Steven K. Reinhardt, Ali Saidi, Arkaprava Basu, Joel Hestness, Derek R. Hower, Tushar Krishna, Somayeh Sardashti, Rathijit Sen, Korey Sewell, Muhammad Shoaib, Nilay Vaish, Mark D. Hill, and David A. Wood. 2011. The Gem5 Simulator. SIGARCH Comput. Archit. News, 39, 2 (2011), aug, 1–7. issn:0163-5964 https://doi.org/10.1145/2024716.2024718
[7]
William Lloyd Bircher and Lizy K. John. 2012. Complete System Power Estimation using processor performance events. IEEE Trans. Comput., 61, 4 (2012), 563–577. https://doi.org/10.1109/tc.2011.47
[8]
Stephen M. Blackburn, Robin Garner, Chris Hoffmann, Asjad M. Khang, Kathryn S. McKinley, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot B. Moss, Aashish Phansalkar, Darko Stefanović, Thomas VanDrunen, Daniel von Dincklage, and Ben Wiedermann. 2006. The DaCapo Benchmarks: Java Benchmarking Development and Analysis. In Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA ’06). Association for Computing Machinery, New York, NY, USA. 169–190. isbn:1595933484 https://doi.org/10.1145/1167473.1167488
[9]
D. Brooks, V. Tiwari, and M. Martonosi. 2000. Wattch: a framework for architectural-level power analysis and optimizations. In Proceedings of 27th International Symposium on Computer Architecture (ISCA’00). 83–94. https://doi.org/10.1145/342001.339657
[10]
Thomas D. Burd and Robert W. Brodersen. 2000. Design issues for dynamic voltage scaling. In ISLPED’00. 9–14. https://doi.org/10.1145/344166.344181
[11]
Jianmin Chen, Bin Li, Ying Zhang, Lu Peng, and Jih-kwon Peir. 2011. Statistical GPU power analysis using tree-based methods. In 2011 International Green Computing Conference and Workshops. 1–6. https://doi.org/10.1109/IGCC.2011.6008582
[12]
Tianqi Chen and Carlos Guestrin. 2016. XGBoost: A Scalable Tree Boosting System. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD ’16). Association for Computing Machinery, New York, NY, USA. 785–794. isbn:9781450342322 https://doi.org/10.1145/2939672.2939785
[13]
Howard David, Eugene Gorbatov, Ulf R. Hanebutte, Rahul Khanna, and Christian Le. 2010. RAPL. In Proceedings of the 16th ACM/IEEE international symposium on Low power electronics and design. https://doi.org/10.1145/1840845.1840883
[14]
Perf Events and Tool Security. [n. d.]. online document at. https://www.kernel.org/doc/html/latest/admin-guide/perf-security.html
[15]
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
[16]
J. Flinn and M. Satyanarayanan. 1999. PowerScope: a tool for profiling the energy usage of mobile applications. In Proceedings WMCSA’99. Second IEEE Workshop on Mobile Computing Systems and Applications. 2–10. https://doi.org/10.1109/MCSA.1999.749272
[17]
Anshul Gandhi, Kanad Ghose, Kartik Gopalan, S Hussain, Dongyoon Lee, Y Liu, Zhenhua Liu, Patrick McDaniel, Shuai Mu, and Erez Zadok. 2022. Metrics for sustainability in data centers. In Proceedings of the 1st Workshop on Sustainable Computer Systems Design and Implementation (HotCarbon’22). https://doi.org/10.1145/3630614.3630622
[18]
X. Gao, D. Liu, D. Liu, H. Wang, and A. Stavrou. 2017. E-Android: A New Energy Profiling Tool for Smartphones. In 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS). 492–502. issn:1063-6927 https://doi.org/10.1109/ICDCS.2017.218
[19]
David Gay, Philip Levis, Robert von Behren, Matt Welsh, Eric Brewer, and David Culler. 2003. The NesC Language: A Holistic Approach to Networked Embedded Systems. In Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation (PLDI ’03). Association for Computing Machinery, New York, NY, USA. 1–11. isbn:1581136625 https://doi.org/10.1145/781131.781133
[20]
Liwei Guo, Tiantu Xu, Mengwei Xu, Xuanzhe Liu, and Felix Xiaozhu Lin. 2018. Power Sandbox: Power Awareness Redefined. In Proceedings of the Thirteenth EuroSys Conference (EuroSys ’18). Association for Computing Machinery, New York, NY, USA. Article 37, 15 pages. isbn:9781450355841 https://doi.org/10.1145/3190508.3190533
[21]
Lorenz Hilty and Bernard Aebischer. 2015. ICT for Sustainability: An Emerging Research Field. 310, 3–36. isbn:978-3-319-09227-0 https://doi.org/10.1007/978-3-319-09228-7_1
[22]
M. Horowitz, T. Indermaur, and R. Gonzalez. 1994. Low-power digital design. In Low Power Electronics, 1994. Digest of Technical Papers., IEEE Symposium. 8–11. https://doi.org/10.1109/LPE.1994.573184
[23]
S. Hussain, P. McDaniel, A. Gandhi, K. Ghose, K. Gopalan, D. Lee, Y. Liu, Z. Liu, S. Mu, and E. Zadok. 2024. Verifiable Sustainability in Data Centers. IEEE Security & Privacy, mar, 2–15. issn:1558-4046 https://doi.org/10.1109/MSEC.2024.3372488
[24]
Ahmed Hussein, Mathias Payer, Antony Hosking, and Christopher A. Vick. 2015. Impact of GC Design on Power and Performance for Android. In Proceedings of the 8th ACM International Systems and Storage Conference (SYSTOR ’15). Association for Computing Machinery, New York, NY, USA. Article 13, 12 pages. isbn:9781450336079 https://doi.org/10.1145/2757667.2757674
[25]
Intel. [n. d.]. Intel RAPL Interface Advisory, online at. https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00389.html
[26]
C. Isci and M. Martonosi. 2003. Runtime power monitoring in high-end processors: methodology and empirical data. In Proceedings. 36th Annual IEEE/ACM International Symposium on Microarchitecture, 2003. MICRO-36. 93–104. https://doi.org/10.1109/MICRO.2003.1253186
[27]
Jingwen Leng, Tayler Hetherington, Ahmed ElTantawy, Syed Gilani, Nam Sung Kim, Tor M. Aamodt, and Vijay Janapa Reddi. 2013. GPUWattch: Enabling Energy Optimizations in GPGPUs. In Proceedings of the 40th Annual International Symposium on Computer Architecture (ISCA ’13). Association for Computing Machinery, New York, NY, USA. 487–498. isbn:9781450320795 https://doi.org/10.1145/2485922.2485964
[28]
Jonathan Lew, Deval A Shah, Suchita Pati, Shaylin Cattell, Mengchi Zhang, Amruth Sandhupatla, Christopher Ng, Negar Goli, Matthew D Sinclair, and Timothy G Rogers. 2019. Analyzing machine learning workloads using a detailed GPU simulator. In 2019 IEEE international symposium on performance analysis of systems and software (ISPASS). 151–152. https://doi.org/10.1109/ISPASS.2019.00028
[29]
Sheng Li, Jung Ho Ahn, Richard D. Strong, Jay B. Brockman, Dean M. Tullsen, and Norman P. Jouppi. 2009. McPAT: An integrated power, area, and timing modeling framework for multicore and manycore architectures. In 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). 469–480. https://doi.org/10.1145/1669112.1669172
[30]
Tao Li and Lizy Kurian John. 2003. Run-Time Modeling and Estimation of Operating System Power Consumption. In Proceedings of the 2003 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS ’03). Association for Computing Machinery, New York, NY, USA. 160–171. isbn:1581136641 https://doi.org/10.1145/781027.781048
[31]
Moritz Lipp, Andreas Kogler, David Oswald, Michael Schwarz, Catherine Easdon, Claudio Canella, and Daniel Gruss. 2021. PLATYPUS: Software-based Power Side-Channel Attacks on x86. In 2021 IEEE Symposium on Security and Privacy (SP). 355–371. https://doi.org/10.1109/SP40001.2021.00063
[32]
Kenan Liu, Gustavo Pinto, and Yu David Liu. 2015. Data-Oriented Characterization of Application-Level Energy Optimization. In Fundamental Approaches to Software Engineering, Alexander Egyed and Ina Schaefer (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 316–331. isbn:978-3-662-46675-9 https://doi.org/10.1007/978-3-662-46675-9_21
[33]
Scott M. Lundberg, Gabriel Erion, Hugh Chen, Alex DeGrave, Jordan M. Prutkin, Bala Nair, Ronit Katz, Jonathan Himmelfarb, Nisha Bansal, and Su-In Lee. 2020. From local explanations to global understanding with explainable AI for trees. Nature Machine Intelligence, 2, 1 (2020), 56–67. https://doi.org/10.1038/s42256-019-0138-9
[34]
Scott M. Lundberg and Su-In Lee. 2017. A Unified Approach to Interpreting Model Predictions. In Advances in Neural Information Processing Systems 30: Annual Conference on Neural Information Processing Systems 2017, December 4-9, 2017, Long Beach, CA, USA, Isabelle Guyon, Ulrike von Luxburg, Samy Bengio, Hanna M. Wallach, Rob Fergus, S. V. N. Vishwanathan, and Roman Garnett (Eds.). 4765–4774. https://proceedings.neurips.cc/paper/2017/hash/8a20a8621978632d76c43dfd28b67767-Abstract.html
[35]
Eric Masanet, Arman Shehabi, Nuoa Lei, Sarah Smith, and Jonathan Koomey. 2020. Recalibrating global data center energy-use estimates. Science, 367, 6481 (2020), 984–986. https://doi.org/10.1126/science.aba3758
[36]
John C. McCullough and Yuvraj Agarwal. 2011. Evaluating the Effectiveness of Model-Based Power Characterization. In 2011 USENIX Annual Technical Conference (USENIX ATC 11). USENIX Association, Portland, OR. https://www.usenix.org/conference/usenixatc11/evaluating-effectiveness-model-based-power-characterization-0
[37]
Andreas Merkel, Jan Stoess, and Frank Bellosa. 2010. Resource-Conscious Scheduling for Energy Efficiency on Multicore Processors. In Proceedings of the 5th European Conference on Computer Systems (EuroSys ’10). Association for Computing Machinery, New York, NY, USA. 153–166. isbn:9781605585772 https://doi.org/10.1145/1755913.1755930
[38]
F. Montevecchi, T. Stickler, R. Hintemann, and S. Hinterholzer. 2020. Energy-efficient cloud computing technologies and policies for an eco-friendly cloud market,. https://digital-strategy.ec.europa.eu/en/library/energy-efficient-cloud-computing-technologies-and-policies-eco-friendly-cloud-market
[39]
Office of Energy Efficiency & Renewable Energy. 2023. Data Centers and Servers. https://www.energy.gov/eere/buildings/data-centers-and-servers
[40]
Oracle. 2023. DTrace Probes in HotSpot VM. https://docs.oracle.com/javase/8/docs/technotes/guides/vm/dtrace.html
[41]
Abhinav Pathak, Y. Charlie Hu, and Ming Zhang. 2012. Where is the Energy Spent Inside My App?: Fine Grained Energy Accounting on Smartphones with Eprof. In Proceedings of the 7th ACM European Conference on Computer Systems (EuroSys ’12). 29–42. isbn:978-1-4503-1223-3
[42]
Abhinav Pathak, Y. Charlie Hu, Ming Zhang, Paramvir Bahl, and Yi-Min Wang. 2011. Fine-Grained Power Modeling for Smartphones Using System Call Tracing. In Proceedings of the Sixth Conference on Computer Systems (EuroSys ’11). Association for Computing Machinery, New York, NY, USA. 153–168. isbn:9781450306348 https://doi.org/10.1145/1966445.1966460
[43]
Gustavo Pinto, Fernando Castor, and Yu David Liu. 2014. Understanding Energy Behaviors of Thread Management Constructs. In Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications (OOPSLA ’14). Association for Computing Machinery, New York, NY, USA. 345–360. isbn:9781450325851 https://doi.org/10.1145/2660193.2660235
[44]
Aleksandar Prokopec, Andrea Rosà, David Leopoldseder, Gilles Duboscq, Petr Tůma, Martin Studener, Lubomír Bulej, Yudi Zheng, Alex Villazón, Doug Simon, Thomas Würthinger, and Walter Binder. 2019. Renaissance: Benchmarking Suite for Parallel Applications on the JVM. In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2019). Association for Computing Machinery, New York, NY, USA. 31–47. isbn:9781450367127 https://doi.org/10.1145/3314221.3314637
[45]
Joseph Raskind, Timur Babakol, Khaled Mahmoud, and Yu David Liu. [n. d.]. Vesta Supplementary Material. https://www.cs.binghamton.edu/ davidl/papers/PLDI24Sup.pdf
[46]
L. S. Shapley. 1953. A value for n-person games. Contributions to the Theory of Games (AM-28), Volume II, 307–318. https://doi.org/10.1515/9781400881970-018
[47]
Marina Shimchenko, Mihail Popov, and Tobias Wrigstad. 2022. Analysing and Predicting Energy Consumption of Garbage Collectors in OpenJDK. In Proceedings of the 19th International Conference on Managed Programming Languages and Runtimes. 3–15. https://doi.org/10.1145/3546918.3546925
[48]
A. Sinha and A. P. Chandrakasan. 2001. JouleTrack-a Web based tool for software energy profiling. In Proceedings of the 38th Design Automation Conference (DAC’01). 220–225. https://doi.org/10.1145/378239.378467
[49]
P. Sweazey and A. J. Smith. 1986. A Class of Compatible Cache Consistency Protocols and Their Support by the IEEE Futurebus. In Proceedings of the 13th Annual International Symposium on Computer Architecture (ISCA ’86). IEEE Computer Society Press, Washington, DC, USA. 414–423. isbn:081860719X https://doi.org/10.1145/17356.17404
[50]
Mark Weiser, Brent Welch, Alan Demers, and Scott Shenker. 1994. Scheduling for Reduced CPU Energy. In OSDI’94. USENIX Association, Monterey, CA. https://doi.org/10.5555/1267638.1267640
[51]
Xingfu Wu and Valerie Taylor. 2016. Utilizing Hardware Performance Counters to Model and Optimize the Energy and Performance of Large Scale Scientific Applications on Power-Aware Supercomputers. In 2016 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). 1180–1189. https://doi.org/10.1109/IPDPSW.2016.78
[52]
Reza Zamani and Ahmad Afsahi. 2012. A study of hardware performance monitoring counter selection in power modeling of computing systems. In 2012 International Green Computing Conference (IGCC). 1–10. https://doi.org/10.1109/IGCC.2012.6322289
[53]
Heng Zeng, Carla S. Ellis, Alvin R. Lebeck, and Amin Vahdat. 2003. Currentcy: A Unifying Abstraction for Expressing Energy. In 2003 USENIX Annual Technical Conference (USENIX ATC 03). USENIX Association, San Antonio, TX. https://www.usenix.org/conference/2003-usenix-annual-technical-conference/currentcy-unifying-abstraction-expressing-energy

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Proceedings of the ACM on Programming Languages
Proceedings of the ACM on Programming Languages  Volume 8, Issue PLDI
June 2024
2198 pages
EISSN:2475-1421
DOI:10.1145/3554317
Issue’s Table of Contents
This work is licensed under a Creative Commons Attribution-NonCommercial International 4.0 License.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 June 2024
Published in PACMPL Volume 8, Issue PLDI

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. BPF
  2. Java virtual machines
  3. language runtimes
  4. power modeling

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 146
    Total Downloads
  • Downloads (Last 12 months)146
  • Downloads (Last 6 weeks)35
Reflects downloads up to 21 Sep 2024

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media