Inferring Parametric Energy Consumption Functions at Different Software Levels: ISA vs. LLVM IR

Umer Liqat, Kyriakos Georgiou, Steve Kerrison, Pedro López-García, John Patrick Gallagher, Manuel V. Hermenegildo, Kerstin Eder

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Abstract

The static estimation of the energy consumed by program executions is an important challenge, which has applications in program optimization and verification, and is instrumental in energy-aware software development. Our objective is to estimate such energy consumption in the form of functions on the input data sizes of programs. We have developed a tool for experimentation with static analysis which infers such energy functions at two levels, the instruction set architecture (ISA) and the intermediate code (LLVM IR) levels, and reflects it upwards to the higher source code level. This required the development of a translation from LLVM IR to an intermediate representation and its integration with existing components, a translation from ISA to the same representation, a resource analyzer, an ISA-level energy model, and a mapping from this model to LLVM IR. The approach has been applied to programs written in the XC language running on XCore architectures, but is general enough to be applied to other languages. Experimental results show that our LLVM IR level analysis is reasonably accurate (less than 6.4% average error vs. hardware measurements) and more powerful than analysis at the ISA level. This paper provides insights into the trade-off of precision versus analyzability at these levels.
Original languageEnglish
Title of host publicationFoundational and Practical Aspects of Resource Analysis : 4th International Workshop, FOPARA 2015
EditorsMarco C.J.D. van Eekelen, Ugo Dal Lago
Place of PublicationSwitzerland
PublisherSpringer
Publication date2016
Pages81-100
ISBN (Print)978-3-319-46558-6
ISBN (Electronic)978-3-319-46559-3
DOIs
Publication statusPublished - 2016
Event4th International Workshop on Foundational and Practical Aspects of Resource Analysis: FOPARA 2015 - London, United Kingdom
Duration: 11 Apr 201511 Apr 2015

Workshop

Workshop4th International Workshop on Foundational and Practical Aspects of Resource Analysis
CountryUnited Kingdom
CityLondon
Period11/04/201511/04/2015
SeriesLecture Notes in Computer Science
Volume9964
ISSN0302-9743

Keywords

  • Energy savings
  • Static analysis

Cite this

Liqat, U., Georgiou, K., Kerrison, S., López-García, P., Gallagher, J. P., Hermenegildo, M. V., & Eder, K. (2016). Inferring Parametric Energy Consumption Functions at Different Software Levels: ISA vs. LLVM IR. In M. C. J. D. van Eekelen, & U. Dal Lago (Eds.), Foundational and Practical Aspects of Resource Analysis: 4th International Workshop, FOPARA 2015 (pp. 81-100). Springer. Lecture Notes in Computer Science, Vol.. 9964 https://doi.org/10.1007/978-3-319-46559-3_5