28032

Bridging Control-Centric and Data-Centric Optimization

Tal Ben-Nun, Berke Ates, Alexandru Calotoiu, Torsten Hoefler
ETH Zurich, Zurich, Switzerland
21st ACM/IEEE International Symposium on Code Generation and Optimization (CGO 2023), 2023

@inproceedings{ben2023bridging,

   title={Bridging Control-Centric and Data-Centric Optimization},

   author={Ben-Nun, Tal and Ates, Berke and Calotoiu, Alexandru and Hoefler, Torsten},

   booktitle={Proceedings of the 21st ACM/IEEE International Symposium on Code Generation and Optimization},

   pages={173–185},

   year={2023}

}

With the rise of specialized hardware and new programming languages, code optimization has shifted its focus towards promoting data locality. Most production-grade compilers adopt a control-centric mindset – instruction-driven optimization augmented with scalar-based dataflow – whereas other approaches provide domain-specific and general purpose data movement minimization, which can miss important control-flow optimizations. As the two representations are not commutable, users must choose one over the other. In this paper, we explore how both control- and data-centric approaches can work in tandem via the Multi-Level Intermediate Representation (MLIR) framework. Through a combination of an MLIR dialect and specialized passes, we recover parametric, symbolic dataflow that can be optimized within the DaCe framework. We combine the two views into a single pipeline, called DCIR, showing that it is strictly more powerful than either view. On several benchmarks and a real-world application in C, we show that our proposed pipeline consistently outperforms MLIR and automatically uncovers new optimization opportunities with no additional effort.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: