Directive-based, high-level programming and optimizations for high-performance computing with FPGAs

Jacob Lambert, Seyong Lee, Jungwon Kim, Jeffrey S. Vetter, Allen D. Malony

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

6 Scopus citations

Abstract

Reconfigurable architectures like Field Programmable Gate Arrays (FPGAs) have been used for accelerating computations from several domains because of their unique combination of flexibility, performance, and power efficiency. However, FPGAs have not been widely used for high-performance computing, primarily because of their programming complexity and difficulties in optimizing performance. In this paper, we present a directive-based, high-level optimization framework for high-performance computing with FPGAs, built on top of an OpenACC-to-FPGA translation framework called OpenARC. We propose directive extensions and corresponding compile-time optimization techniques to enable the compiler to generate more efficient FPGA hardware configuration files. Empirical evaluation of the proposed framework on an Intel Stratix V with five OpenACC benchmarks from various application domains shows that FPGA-specific optimizations can lead to significant increases in performance across all tested applications. We also demonstrate that applying these high-level directive-based optimizations can allow OpenACC applications to perform similarly to lower-level OpenCL applications with hand-written FPGA-specific optimizations, and offer runtime and power performance benefits compared to CPUs and GPUs.

Original languageEnglish
Title of host publicationICS 2018
Subtitle of host publicationInternational Conference on Supercomputing
PublisherAssociation for Computing Machinery
Pages160-171
Number of pages12
ISBN (Electronic)9781450357838
DOIs
StatePublished - Jun 12 2018
Event32nd International Conference on Supercomputing, ICS 2018 - Beijing, China
Duration: Jun 12 2018Jun 15 2018

Publication series

NameProceedings of the International Conference on Supercomputing

Conference

Conference32nd International Conference on Supercomputing, ICS 2018
Country/TerritoryChina
CityBeijing
Period06/12/1806/15/18

Keywords

  • Directive-based programming
  • FPGA
  • OpenACC
  • OpenARC
  • OpenCL
  • Reconfigurable computing
  • Sliding window

Fingerprint

Dive into the research topics of 'Directive-based, high-level programming and optimizations for high-performance computing with FPGAs'. Together they form a unique fingerprint.

Cite this