Abstract
The past decade witnessed the inclusion of power measurements to evaluate the energy efficiency of software systems, thus making energy a prime indicator along with performance. Nevertheless, measuring the energy consumption of a software system remains a tedious task for practitioners. In particular, the energy measurement process may be subject to a lot of variations that hinder the relevance of potential comparisons. While the state of the art mostly acknowledged the impact of hardware factors (chip printing process, CPU temperature), this paper investigates the impact of controllable factors on these variations. More specifically, we conduct an empirical study of multiple controllable parameters that one can easily tune to tame the energy consumption variations when benchmarking software systems. To better understand the causes of such variations, we ran more than a 1,000 experiments on more than 100 nodes with different workloads and configurations. The main factors we studied encompass: experimental protocol, CPU features (C-states, Turbo∼Boost, core pinning) and generations, as well as the operating system. Our experiments showed that, for some workloads, it is possible to tighten the energy variation by up to 30x. Finally, we summarize our results as guidelines to tame energy consumption variations. We argue that the guidelines we deliver are the minimal requirements to be considered prior to any energy efficiency evaluation.
Author supplied keywords
Cite
CITATION STYLE
Ournani, Z., Belgaid, M. C., Rouvoy, R., Rust, P., Penhoat, J., & Seinturier, L. (2020). Taming energy consumption variations in systems benchmarking. In ICPE 2020 - Proceedings of the ACM/SPEC International Conference on Performance Engineering (pp. 36–47). Association for Computing Machinery, Inc. https://doi.org/10.1145/3358960.3379142
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.