Return
Interaction-aware multi-objective optimization method for LLVM compiler option sequences
DOI:10.1016/j.peva.2026.102543.png)
Abstract
En 中文
Significant progress has been made in optimizing LLVM compiler option sequences to improve non-functional attributes such as code size, execution time, and energy consumption. However, complex interactions-among options, between options and objectives, and among objectives themselves-make it challenging to efficiently identify non-dominated sequences across multiple objectives within the vast search space. This paper proposes IMOOM, an Interaction-aware Multi-Objective Optimization Method targeting execution time and energy consumption in embedded programs. IMOOM operates in two stages. In the first stage, IMOOM-SL captures option interactions using Latin Hypercube Sampling, partitions samples via non-dominated sorting and hypervolume metrics, and confirms selected options through a decision table, thereby reducing the search space while preserving solution quality. In the second stage, IMOOM-SQ constructs an Item Interaction Graph (IIG) that encodes interaction frequencies and objective annotations to predict both objectives, and integrates this predictive model with NSGA-II to efficiently obtain high-quality non-dominated sequences. Extensive evaluation on eight embedded programs across five domains demonstrates that IMOOM outperforms four state-of-the-art methods in hypervolume, coverage rate, and inverted generational distance. IMOOM-SL achieves 94.5% selection accuracy with 80.6% space reduction, while the effectiveness of IIG-based optimization in IMOOM-SQ is empirically validated.
Keywords:
Compiler optimization
LLVM option sequence optimization
Multi-objective optimization
Execution time
Energy consumption

