Date & Time
Wednesday, November 17, 2021, 11:15 AM - 11:45 AM
Name
FPL: A Presburger Library in MLIR
Description

Presburger arithmetic provides the mathematical core for the polyhedral compilation techniques that drive analytical cache models, loop optimization for ML and HPC, formal verification, and even hardware design. Polyhedral compilation is widely regarded as being slow due to the potentially high computational cost of the underlying Presburger libraries. We introduce FPL, a new library for Presburger arithmetic that uses library-level transprecision computing to effectively exploit machine integers and vector instructions. On a newly-developed comprehensive benchmark suite for Presburger arithmetic, we show a 5.4x speedup in total runtime over the state-of-the-art library isl in its default configuration and 3.6x over a variant of isl optimized with element-wise transprecision computing. Large parts of FPL have already been upstreamed into MLIR, and this functionality is being already being used to enable affine loop fusion in MLIR. Having a Presburger library deeply integrated into the compiler enables a smooth flow from the IR to the underlying mathematical library and back.

Session Type
Technical Talk