# Lost in translation: Exposing hidden compiler optimization opportunities

**Authors:** Kyriakos Georgiou, Zbigniew Chamski, Andres Amaya Garcia, David May,, Kerstin Eder

arXiv: 1903.11397 · 2020-08-11

## TL;DR

This paper presents a novel approach to compiler optimization tuning that leverages resource and compilation data to uncover hidden optimization opportunities, improving compiler performance across different architectures.

## Contribution

It introduces a new enhancement to nightly compiler testing that supports automatic tuning and optimization discovery, addressing limitations of existing iterative and machine-learning techniques.

## Key findings

- Revealed architecture-dependent optimization opportunities
- Identified and fixed a significant LLVM CFG simplification shortcoming
- Improved compiler optimization effectiveness across architectures

## Abstract

Existing iterative compilation and machine-learning-based optimization techniques have been proven very successful in achieving better optimizations than the standard optimization levels of a compiler. However, they were not engineered to support the tuning of a compiler's optimizer as part of the compiler's daily development cycle. In this paper, we first establish the required properties which a technique must exhibit to enable such tuning. We then introduce an enhancement to the classic nightly routine testing of compilers which exhibits all the required properties, and thus, is capable of driving the improvement and tuning of the compiler's common optimizer. This is achieved by leveraging resource usage and compilation information collected while systematically exploiting prefixes of the transformations applied at standard optimization levels. Experimental evaluation using the LLVM v6.0.1 compiler demonstrated that the new approach was able to reveal hidden cross-architecture and architecture-dependent potential optimizations on two popular processors: the Intel i5-6300U and the Arm Cortex-A53-based Broadcom BCM2837 used in the Raspberry Pi 3B+. As a case study, we demonstrate how the insights from our approach enabled us to identify and remove a significant shortcoming of the CFG simplification pass of the LLVM v6.0.1 compiler.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1903.11397/full.md

## Figures

21 figures with captions in the complete paper: https://tomesphere.com/paper/1903.11397/full.md

## References

29 references — full list in the complete paper: https://tomesphere.com/paper/1903.11397/full.md

---
Source: https://tomesphere.com/paper/1903.11397