Fortran High-Level Synthesis: Reducing the barriers to accelerating HPC codes on FPGAs

被引:0
|
作者
Rodriguez-Canal, Gabriel [1 ]
Brown, Nick [1 ]
Dykes, Tim [2 ]
Jones, Jess [2 ]
Haus, Utz-Uwe [2 ]
机构
[1] Univ Edinburgh, EPCC, Edinburgh, Midlothian, Scotland
[2] Hewlett Packard Enterprise, HPC AI EMEA Res Lab, Spring, TX USA
关键词
FPGAs; Fortran; High Level Synthesis; HPC;
D O I
10.1109/FPL60245.2023.00010
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
In recent years the use of FPGAs to accelerate scientific applications has grown, with numerous applications demonstrating the benefit of FPGAs for high performance workloads. However, whilst High Level Synthesis (HLS) has significantly lowered the barrier to entry in programming FPGAs by enabling programmers to use C++, a major challenge is that most often these codes are not originally written in C++. Instead, Fortran is the lingua franca of scientific computing and-so it requires a complex and time consuming initial step to convert into C++ even before considering the FPGA. In this paper we describe work enabling Fortran for AMD Xilinx FPGAs by connecting the LLVM Flang front end to AMD Xilinx's LLVM back end. This enables programmers to use Fortran as a first-class language for programming FPGAs, and as we demonstrate enjoy all the tuning and optimisation opportunities that HLS C++ provides. Furthermore, we demonstrate that certain language features of Fortran make it especially beneficial for programming FPGAs compared to C++. The result of this work is a lowering of the barrier to entry in using FPGAs for scientific computing, enabling programmers to leverage their existing codebase and language of choice on the FPGA directly.
引用
收藏
页码:10 / 18
页数:9
相关论文
共 50 条
  • [31] High Level Programming of FPGAs for HPC and Data Centric Applications
    Segal, Oren
    Nasiri, Nasibeh
    Margala, Martin
    Vanderbauwhede, Wim
    2014 IEEE HIGH PERFORMANCE EXTREME COMPUTING CONFERENCE (HPEC), 2014,
  • [32] Rosetta: A Realistic High-Level Synthesis Benchmark Suite for Software Programmable FPGAs
    Zhou, Yuan
    Gupta, Udit
    Dai, Steve
    Zhao, Ritchie
    Srivastava, Nitish
    Jin, Hanchen
    Featherston, Joseph
    Lai, Yi-Hsiang
    Liu, Gai
    Velasquez, Gustavo Angarita
    Wang, Wenping
    Zhang, Zhiru
    PROCEEDINGS OF THE 2018 ACM/SIGDA INTERNATIONAL SYMPOSIUM ON FIELD-PROGRAMMABLE GATE ARRAYS (FPGA'18), 2018, : 269 - 278
  • [33] Syncopation: Adaptive Clock Management for High-Level Synthesis Generated Circuits on FPGAs
    Gibson, Kahlan
    Roorda, Esther
    Noronha, Daniel Holanda
    Wilton, Steven J. E.
    2020 30TH INTERNATIONAL CONFERENCE ON FIELD-PROGRAMMABLE LOGIC AND APPLICATIONS (FPL), 2020, : 225 - 230
  • [34] GRASP-based High-Level Synthesis Design Space Exploration for FPGAs
    Schuster, Nikolas P.
    Nazar, Gabriel L.
    2023 XIII BRAZILIAN SYMPOSIUM ON COMPUTING SYSTEMS ENGINEERING, SBESC, 2023,
  • [35] From Pthreads to Multicore Hardware Systems in LegUp High-Level Synthesis for FPGAs
    Choi, Jongsok
    Brown, Stephen D.
    Anderson, Jason H.
    IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 2017, 25 (10) : 2867 - 2880
  • [36] Performance Modeling for FPGAs: Extending the Roofline Model with High-Level Synthesis Tools
    da Silva, Bruno
    Braeken, An
    D'Hollander, Erik H.
    Touhafi, Abdellah
    INTERNATIONAL JOURNAL OF RECONFIGURABLE COMPUTING, 2013, 2013
  • [37] Designing and Accelerating Spiking Neural Network based on High-level Synthesis
    Zi, Heng
    Zhao, Kang
    Zhang, Wei
    CONFERENCE OF SCIENCE & TECHNOLOGY FOR INTEGRATED CIRCUITS, 2024 CSTIC, 2024,
  • [38] From High-Level Deep Neural Models to FPGAs
    Sharma, Hardik
    Park, Jongse
    Mahajan, Divya
    Amaro, Emmanuel
    Kim, Joon Kyung
    Shao, Chenkai
    Mishra, Asit
    Esmaeilzadeh, Hadi
    2016 49TH ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE (MICRO), 2016,
  • [39] Accelerating high-level Bounded Model Checking
    Ganai, Malay K.
    Gupta, Aarti
    IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER-AIDED DESIGN, DIGEST OF TECHNICAL PAPERS, ICCAD, 2006, : 48 - +
  • [40] Learning from the Past: Efficient High-level Synthesis Design Space Exploration for FPGAs
    Wang, Zi
    Schafer, Benjamin Carrion
    ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2022, 27 (04)