编译程序
计算机科学
水准点(测量)
粒度
加速
优化编译器
高级合成
并行计算
代码生成
领域特定语言
嵌入式系统
计算机工程
程序设计语言
现场可编程门阵列
操作系统
地理
大地测量学
钥匙(锁)
作者
Nicolas Bohm Agostini,Serena Curzel,Vinay Amatya,Cheng Tan,Marco Minutoli,Vito Giovanni Castellana,Joseph Manzano,David Kaeli,Antonino Tumeo
标识
DOI:10.1145/3508352.3549424
摘要
The generation of custom hardware accelerators for applications implemented within high-level productive programming frameworks requires considerable manual effort. To automate this process, we introduce SODA-OPT, a compiler tool that extends the MLIR infrastructure. SODA-OPT automatically searches, outlines, tiles, and pre-optimizes relevant code regions to generate high-quality accelerators through high-level synthesis. SODA-OPT can support any high-level programming framework and domain-specific language that interface with the MLIR infrastructure. By leveraging MLIR, SODA-OPT solves compiler optimization problems with specialized abstractions. Backend synthesis tools connect to SODA-OPT through progressive intermediate representation lowerings. SODA-OPT interfaces to a design space exploration engine to identify the combination of compiler optimization passes and options that provides high-performance generated designs for different backends and targets. We demonstrate the practical applicability of the compilation flow by exploring the automatic generation of accelerators for deep neural networks operators outlined at arbitrary granularity and by combining outlining with tiling on large convolution layers. Experimental results with kernels from the PolyBench benchmark show that our high-level optimizations improve execution delays of synthesized accelerators up to 60x. We also show that for the selected kernels, our solution outperforms the current of state-of-the art in more than 70% of the benchmarks and provides better average speedup in 55% of them. SODA-OPT is an open source project available at https://gitlab.pnnl.gov/sodalite/soda-opt.
科研通智能强力驱动
Strongly Powered by AbleSci AI