AutoSA: A Polyhedral Compiler for High-Performance Systolic Arrays on FPGA
AutoSA: A Polyhedral Compiler for High-Performance Systolic Arrays on FPGA
复制标题
DOI:
10.1145/3431920.3439292
复制
发表时间:
2021-02
期刊:
影响因子:
--
通讯作者:
Jie Wang;Licheng Guo;J. Cong
中科院分区:
文献类型:
--
作者:
Jie Wang;Licheng Guo;J. Cong
While systolic array architectures have the potential to deliver tremendous performance, it is notoriously challenging to customize an efficient systolic array processor for a target application. Designing systolic arrays requires knowledge for both high-level characteristics of the application and low-level hardware details, thus making it a demanding and inefficient process. To relieve users from the manual iterative trial-and-error process, we present AutoSA, an end-to-end compilation framework for generating systolic arrays on FPGA. AutoSA is based on the polyhedral framework, and further incorporates a set of optimizations on different dimensions to boost performance. An efficient and comprehensive design space exploration is performed to search for high-performance designs. We have demonstrated AutoSA on a wide range of applications, on which AutoSA achieves high performance within a short amount of time. As an example, for matrix multiplication, AutoSA achieves 934 GFLOPs, 3.41 TOPs, and 6.95 TOPs in floating point, 16-bit and 8-bit integer data types on Xilinx Alveo U250.