Improving the Accuracy of Energy Predictive Models for Multicore CPUs Using Additivity of Performance Monitoring Counters

  • Arsalan ShahidEmail author
  • Muhammad Fahad
  • Ravi Reddy Manumachu
  • Alexey Lastovetsky
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11657)


Energy predictive modelling using performance monitoring counters (PMCs) has emerged as the leading mainstream approach for modelling the energy consumption of an application. Modern computing platforms such as multicore CPUs provide a large set of PMCs. The programmers, however, can obtain only a small number of PMCs (typically 3–4) during an application run due to the limited number of hardware registers dedicated to storing them. Therefore, selection of a reliable subset of PMCs as predictor variables is crucial to the prediction accuracy of online energy models. State-of-the-art methods for selecting the PMCs are largely based on their correlation with energy consumption.

Recently, Additivity is introduced as a property of PMCs that appears to have significant impact on the accuracy of energy predictive models. It is based on an experimental observation that energy consumption of serial execution of two applications is equal to the sum of the energy consumption of those applications when they are run separately. In this work, we demonstrate how the accuracy of energy predictive models based on three popular techniques (Linear regression, Random forests, and Neural networks) can be improved by selecting PMCs based on a property of additivity.


Performance monitoring counters Energy consumption Energy modelling Multicore CPU Energy predictive models 



This publication has emanated from research conducted with the financial support of Science Foundation Ireland (SFI) under Grant Number 14/IA/2474.


  1. 1.
    Barroso, L.A., Hölzle, U.: The case for energy-proportional computing. Computer 12, 33–37 (2007)CrossRefGoogle Scholar
  2. 2.
    Basmadjian, R., Ali, N., Niedermeier, F., de Meer, H., Giuliani, G.: A methodology to predict the power consumption of servers in data centres. In: 2nd International Conference on Energy-Efficient Computing and Networking. ACM (2011)Google Scholar
  3. 3.
    DOE: The opportunities and challenges of exascale computing (2010).
  4. 4.
    Dolz, M.F., Kunkel, J., Chasapis, K., Catalán, S.: An analytical methodology to derive power models based on hardware and software metrics. Comput. Sci.-Res. Dev. 31(4), 165–174 (2016)CrossRefGoogle Scholar
  5. 5.
    Economou, D., Rivoire, S., Kozyrakis, C., Ranganathan, P.: Full-system power analysis and modeling for server environments. In: In Proceedings of Workshop on Modeling, Benchmarking, and Simulation, pp. 70–77 (2006)Google Scholar
  6. 6.
    Fan, X., Weber, W.D., Barroso, L.A.: Power provisioning for a warehouse-sized computer. In: 34th Annual International Symposium on Computer architecture, pp. 13–23. ACM (2007)Google Scholar
  7. 7.
    Hackenberg, D., Ilsche, T., Schöne, R., Molka, D., Schmidt, M., Nagel, W.E.: Power measurement techniques on standard compute nodes: a quantitative comparison. In: 2013 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp. 194–204. IEEE (2013)Google Scholar
  8. 8.
    Haj-Yihia, J., Yasin, A., Asher, Y.B., Mendelson, A.: Fine-grain power breakdown of modern out-of-order cores and its implications on skylake-based systems. ACM Trans. Archit. Code Optim. (TACO) 13(4), 56 (2016)Google Scholar
  9. 9.
    HCL: HCLWattsUp: API for power and energy measurements using WattsUp Pro Meter (2016).
  10. 10.
    Heath, T., Diniz, B., Horizonte, B., Carrera, E.V., Bianchini, R.: Energy conservation in heterogeneous server clusters. In: 10th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP), pp. 186–195. ACM (2005)Google Scholar
  11. 11.
    IntelPCM: Intel® performance counter monitor - a better way to measure cpu utilization (2012).
  12. 12.
    Isci, C., Martonosi, M.: Runtime power monitoring in high-end processors: methodology and empirical data. In: 36th Annual IEEE/ACM International Symposium on Microarchitecture, p. 93. IEEE Computer Society (2003)Google Scholar
  13. 13.
    Kansal, A., Zhao, F.: Fine-grained energy profiling for power-aware application design. ACM SIGMETRICS Perform. Eval. Rev. 36(2), 26 (2008)CrossRefGoogle Scholar
  14. 14.
    Li, T., John, L.K.: Run-time modeling and estimation of operating system power consumption. In: ACM SIGMETRICS Performance Evaluation Review, vol. 31, pp. 160–171. ACM (2003)Google Scholar
  15. 15.
    Mair, J., Huang, Z., Eyers, D.: Manila: using a densely populated pmc-space for power modelling within large-scale systems. Parallel Comput. 82, 37–56 (2019)CrossRefGoogle Scholar
  16. 16.
    McCullough, J.C., Agarwal, Y., Chandrashekar, J., Kuppuswamy, S., Snoeren, A.C., Gupta, R.K.: Evaluating the effectiveness of model-based power characterization. In: Proceedings of the 2011 USENIX Conference on USENIX Annual Technical Conference. USENIXATC 2011. USENIX Association (2011)Google Scholar
  17. 17.
    O’Brien, K., Pietri, I., Reddy, R., Lastovetsky, A., Sakellariou, R.: A survey of power and energy predictive models in HPC systems and applications. ACM Comput. Surv. 50(3), 37 (2017)CrossRefGoogle Scholar
  18. 18.
    PAPI: Performance application programming interface 5.4.1 (2015).
  19. 19.
    Perf Wiki: perf: Linux profiling with performance counters (2017).
  20. 20.
    Rivoire, S., Ranganathan, P., Kozyrakis, C.: A comparison of high-level full-system power models. In: Proceedings of the 2008 Conference on Power Aware Computing and Systems, HotPower 2008. USENIX Association (2008)Google Scholar
  21. 21.
    Shahid, A., Fahad, M., Reddy, R., Lastovetsky, A.: Additivity: a selection criterion for performance events for reliable energy predictive modeling. Supercomput. Front. Innovations 4(4), 50–65 (2017)Google Scholar
  22. 22.
    Shahid, A., Fahad, M., Reddy Manumachu, R., Lastovetsky, A.: Supplemental: Improving the accuracy of energy predictive models for multicore cpus using Additivity of performance monitoring counters (2019).
  23. 23.
    Singh, K., Bhadauria, M., McKee, S.A.: Real time power estimation and thread scheduling via performance counters. SIGARCH Comput. Archit. News 37(2), 46–55 (2009)CrossRefGoogle Scholar
  24. 24.
    Smarr, L.: Project greenlight: optimizing cyber-infrastructure for a carbon-constrained world. Computer 43(1), 22–27 (2010)CrossRefGoogle Scholar
  25. 25.
    Treibig, J., Hager, G., Wellein, G.: LIKWID: a lightweight performance-oriented tool suite for x86 multicore environments. In: 2010 39th International Conference on Parallel Processing Workshops (ICPPW), pp. 207–216. IEEE (2010)Google Scholar
  26. 26.
    Wang, H., Jing, Q., Chen, R., He, B., Qian, Z., Zhou, L.: Distributed systems meet economics: pricing in the cloud. In: Proceedings of the 2nd USENIX Conference on Hot Topics in Cloud Computing. USENIX Association (2010)Google Scholar
  27. 27.
    Wang, S.: Ph.d thesis: Software power analysis and optimization for power-aware multicore systems (2014)Google Scholar
  28. 28.
    Zhou, Z., Abawajy, J.H., Li, F., Hu, Z., Chowdhury, M.U., Alelaiwi, A., Li, K.: Fine-grained energy consumption model of servers based on task characteristics in cloud data center. IEEE Access 6, 27080–27090 (2018)CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.School of Computer ScienceUniversity College DublinDublin 4Ireland

Personalised recommendations