# Genetic Improvement in the Shackleton Framework for Optimizing LLVM Pass Sequences

arXiv: https://arxiv.org/abs/2204.13261 · HTML: https://mlsanity.com/paper/2204.13261/

## Key facts

- Cited by 1 papers in the map (data through 14 Oct 2026).
- Builds on 1 of its 13 references that are in the map.
- First posted on arXiv 28 Apr 2022.

## Builds on (most cited first, 1 of 1)

- [Optimizing LLVM Pass Sequences with Shackleton: A Linear Genetic Programming Framework](https://mlsanity.com/paper/2201.13305/) (2022)

## Built on by (most cited first, 1 of 1)

- [MAGPIE: Machine Automated General Performance Improvement via Evolution of Software](https://mlsanity.com/paper/2208.02811/) (2022)

## Abstract (arXiv)

Genetic improvement is a search technique that aims to improve a given acceptable solution to a problem. In this paper, we present the novel use of genetic improvement to find problem-specific optimized LLVM pass sequences. We develop a pass-level patch representation in the linear genetic programming framework, Shackleton, to evolve the modifications to be applied to the default optimization pass sequences. Our GI-evolved solution has a mean of 3.7% runtime improvement compared to the -O3 optimization level in the default code generation options which optimizes on runtime. The proposed GI method provides an automatic way to find a problem-specific optimization sequence that improves upon a general solution without any expert domain knowledge. In this paper, we discuss the advantages and limitations of the GI feature in the Shackleton Framework and present our results.
