Demand-driven Inlining in a Region-based Optimizer for ILP Architectures
Thomas P. Way, Lori L. Pollock
Abstract
Region-based compilation repartitions a program into more desirable compilation units using profiling information and procedure inlining to enable region formation analysis. Heuristics play a key role in determining when it is most beneficial to inline procedures during region formation. An ILP optimizing compiler using a region-based approach restructures a program to better reflect dynamic behavior and increase interprocedural optimization and scheduling opportunities. This paper presents an interprocedural compilation technique which performs procedure inlining on-demand, rather than as a separate phase, to improve the ability of a region-based optimizer to control code growth, compilation time and memory usage while improving performance. The interprocedural region formation algorithm utilizes a demand-driven, heuristics-guided approach to inlining, restructuring an input program into interprocedural regions. Experimental results are presented to demonstrate the impact of the algorithm and several inlining heuristics upon a number of traditional and novel compilation characteristics within a region-based ILP compiler and simulator.
Create a lesson
Related papers
GC-MoE: Overlapping Expert-Parallel Token Dispatch with FP8/FP4 Grouped GEMM via CUDA Green Contexts
Yong Li, Kan Liu, Tao Lan
When the Consumer Is an Agent: Execution-Grounded Service-Level Agreements
Michal Orzechowski, Renata G. Slota, Jacek Kitowski
PhotonZip: Lifecycle-Aware Compression for HDF5-Based Synchrotron Workflows
Haoxu Li, Wenjing Huang, Chengyu Liu et al.
EpiLoRA: Fusing Many LoRA Adapters into Low-Precision GEMMs for Serving and RL
Hieu Tran, Hong Yu
INSIGHT-HPC: An Interpretable System Intelligence for Global HPC Telemetry
Rupak Kadel, Jie Li, Yong Chen
DynSL: Resource-Adaptive Model Training across Heterogeneous Edge Devices
Boris Radovič, Istemi Ekin Akkus, Marco Canini et al.