Improved Loop Distribution in LLVM Using Polyhedral Dependences
Event Type
Workshop

Compiler Analysis and Optimization
Compilers
Debugging
Parallel Programming Languages, Libraries, Models and Notations
Program Transformation
SIGHPC Workshop
TimeMonday, November 13th5:14pm - 5:21pm
Location710
DescriptionWe propose a framework that can be used for improving loop-optimizations in LLVM using the Polyhedral framework of Polly. In our framework, we use the precise polyhedral dependences from Polly (provided by PolyhedralInfo), to construct a dependence graph, and perform loop transformations. As the first transformation case study of such a framework, we implemented loop distribution targeting improvement of inner-loop vectorization. Our loop distribution pass shows promising results on the TSVC benchmark; it is able to distribute 11 loops, while the earlier distribution pass is unable to distribute at all. We also have preliminary performance numbers from SPEC 2006. We believe that our work is the first step towards scalable and pre-defined loop-transformations in LLVM using exact dependences from Polly.
Author/Presenters