Metadata only
Date
2023-02Type
- Conference Paper
Abstract
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. Show more
Publication status
publishedExternal links
Book title
Proceedings of the 21st ACM/IEEE International Symposium on Code Generation and OptimizationPages / Article No.
Publisher
Association for Computing MachineryEvent
Subject
data-centric programming; DaCe; MLIROrganisational unit
03950 - Hoefler, Torsten / Hoefler, Torsten
Funding
955606 - DEEP- Software for Exascale Archtiectures (EC)
185778 - Empowering Computational Science using Data-Centric Programming (SNF)
More
Show all metadata