Fortran高层综合:降低在FPGA上加速HPC代码的障碍
摘要:使用FPGA加速科学应用的趋势在近年来不断增长,许多应用已经展示了FPGA在高性能工作负载中的优势。然而,尽管高层综合(HLS)显着降低了编程FPGA的门槛,通过允许程序员使用C ++,但一个重要的挑战是,大多数时候这些代码最初并不是用C ++编写的。相反,Fortran是科学计算中的通用语言,因此即使在考虑FPGA之前,将其转换为C++需要一个复杂而耗时的初始步骤。在本文中,我们描述了通过将LLVM Flang前端与AMD Xilinx的LLVM后端连接,实现了在AMD Xilinx FPGA上使用Fortran的工作。这使得程序员可以将Fortran作为一流语言来编程FPGA,并且如我们所证明的,享受HLS C ++提供的所有调优和优化机会。此外,我们证明了Fortran的某些语言特性相比于C ++对编程FPGA尤为有益。这项工作的结果是降低了使用FPGA进行科学计算的门槛,使得程序员可以直接在FPGA上利用他们现有的代码库和语言选择。
作者:Gabriel Rodriguez-Canal, Nick Brown, Tim Dykes, Jessica R. Jones, Utz-Uwe Haus
论文ID:2308.13274
分类:Distributed, Parallel, and Cluster Computing
分类简称:cs.DC
提交时间:2023-08-28