SC21 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Portable Compilation of NumPy to FPGAs


Workshop:H2RC: Seventh International Workshop on Heterogeneous High-Performance Reconfigurable Computing

Authors: Johannes de Fine Licht, Tiziano De Matteis, Alexandros Nikolaos Ziogas, Tal Ben-Nun, and Torsten Hoefler (ETH Zürich)


Abstract: While the reconfigurable hardware community has transitioned from RTL to C-based languages, the HPC community is moving on to Python as the language of choice for application development. We show how the Data-Centric Parallel Programming (DaCe) framework is a powerful tool to pursue this trend for FPGA development, allowing NumPy-based Python programs to be compiled to both Xilinx and Intel FPGAs through a data movement-oriented intermediate representation with no changes to the original program, providing a high quality baseline amenable to further optimization. We present results for all 30 kernels from the PolyBench benchmark suite for both FPGA vendors compiled from the same Python code, preserving high-level semantics to embed specialized hardware implementations in the code-generated architectures.





Back to H2RC: Seventh International Workshop on Heterogeneous High-Performance Reconfigurable Computing Archive Listing



Back to Full Workshop Archive Listing