Skip to content

Less is more: exploiting the standard compiler optimization levels for better performance and energy consumption

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Original languageEnglish
Title of host publication21st International Workshop on Software and Compilers for Embedded Systems (SCOPES 2018)
Publisher or commissioning bodyAssociation for Computing Machinery (ACM)
Number of pages8
ISBN (Print)978-1-4503-5780-7
DOIs
DateAccepted/In press - 30 Mar 2018
DatePublished (current) - 30 May 2018
EventSCOPES 2018 - Sankt Goar, Germany
Duration: 28 May 201830 May 2018

Workshop

WorkshopSCOPES 2018
CountryGermany
CitySankt Goar
Period28/05/1830/05/18

Abstract

This paper presents the interesting observation that by performing fewer of the optimizations available in a standard compiler optimization level such as -O2, while preserving their original ordering, significant savings can be achieved in both execution time and energy consumption.
This observation has been validated on two embedded processors, namely the ARM Cortex-M0 and the ARM Cortex-M3, using two different versions of the LLVM compilation framework; v3.8 and v5.0. Experimental evaluation with 71 embedded benchmarks demonstrated performance gains for at least half of the benchmarks for both processors. An average execution time reduction of 2.4% and 5.3% was achieved across all the benchmarks for the Cortex-M0 and Cortex-M3 processors, respectively, with execution time improvements ranging from 1% up to 90% over the -O2. The savings that can be achieved are in the same range as what can be achieved by the state-of-the-art compilation approaches that use iterative compilation or machine learning to select flags or to determine phase orderings that result in more efficient code. In contrast to these time consuming and expensive to apply techniques, our approach only needs to test a limited number of optimization configurations, less than 64, to obtain similar or even better savings. Furthermore, our approach can support multi-criteria optimization as it targets execution time, energy consumption and code size at the same time.

Event

SCOPES 2018

Duration28 May 201830 May 2018
CitySankt Goar
CountryGermany

Event: Workshop

Download statistics

No data available

Documents

Documents

  • Full-text PDF (accepted author manuscript)

    Rights statement: This is the author accepted manuscript (AAM). The final published version (version of record) is available online via ACM at https://dl.acm.org/citation.cfm?doid=3207719.3207727 . Please refer to any applicable terms of use of the publisher.

    Accepted author manuscript, 329 KB, PDF document

DOI

View research connections

Related faculties, schools or groups