Co-optimizing Dataflow Graphs and Actors with MLIR
1 : Institut d'Électronique et des Technologies du numéRique
(IETR)
Université de Rennes, Institut National des Sciences Appliquées - Rennes, CentraleSupélec, Centre National de la Recherche Scientifique, Nantes Université - pôle Sciences et technologie
Campus de Beaulieu Bâtiment 11D 263 Av.Général Leclerc-CS 74205 35042 Rennes Cedex -
France
2 : Computer Systems Laboratory [Campinas]
(LSC - UNICAMP)
* : Auteur correspondant
LSC - Computer Systems Laboratory Av. Albert Einstein, 1251 - Cidade Universitária Campinas - SP - Brazil 13083-852 -
Brésil
Dataflow programming is considered a good solution for the implementation of parallel signal processing applications. However, the strict separation between kernel and coordination codes limits the variety of possible optimizations and the compatibility with state-of-the-art compiler frameworks. We present a prototype static dataflow compiler, built with the LLVM MLIR framework, that overcomes these limitations and enables a previously impossible combination of optimization strategies that leverages information from the dataflow topology. Initial results show 30% wall time improvement and 53% memory usage improvement on a video processing workload.