一句话:提出仅依赖语言运行时事件的应用级功耗建模方法,精度与可解释性优于基于硬件性能计数器的方案。
功耗建模是能耗优化、能耗分析与能耗感知应用开发的基础。传统方法基于硬件性能计数器(HPC),需要硬件层面信息且可解释性有限。本文提出 VESTA,其核心洞察是:语言运行时事件往往与应用持续处于某一功耗水平相关联。基于该洞察,VESTA 利用语言运行时事件构建功耗模型,其优势在于只需应用范围内的信息,并具备更高的可解释性,同时达到相当甚至更高的预测精度。作者在 Java 虚拟机(JVM)上的 37 个真实应用上进行了实验,结果表明 VESTA 构建的功耗模型预测能耗的平均绝对百分比误差(MAPE)为 1.56%,且运行时事件监控所带来的性能与能耗开销很小。
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.
@article{RaskindBML24,
title = {VESTA: Power Modeling with Language Runtime Events},
author = {Joseph Raskind and Timur Babakol and Khaled Mahmoud and Yu David Liu},
journal = {Proceedings of the ACM on Programming Languages},
volume = {8},
number = {PLDI},
year = {2024},
doi = {10.1145/3656402}
}