OptiTrust: an Interactive Framework for Source-to-Source Transformations

Arthur Charguéraud, Begatim Bytyqi, Damien Rouhling, Yann Barsamian · HAL (Le Centre pour la Communication Scientifique Directe) · 2022

This paper presents an interactive framework for developing high-performance C code via series of source-to-source transformations. Optimization steps are described in transformation scripts, expressed as OCaml programs. The programmer can interactively visualize the textual differences associated with any step of the script. We demonstrate the effectiveness of OptiTrust by reproducing a manually optimized Particle-In-Cell numerical simulation, starting from a direct, unoptimized version of the algorithm. This case study covers many state-of-the-art optimization patterns that appear in numerical simulation codes. We argue that, compared with optimizing code by hand, deriving high performance code using a transformation script makes the code easier to review, easier to debug, and easier to maintain as the intended program or as the target hardware evolves.

Read the paper · More papers on PaperTik