High-Performance CUDA Kernel Execution on FPGAs

被引:3
|
作者
Papakonstantinou, Alexandros [1 ]
Gururaj, Karthik
Stratton, John A. [1 ]
Chen, Deming [1 ]
Cong, Jason
Hwu, Wen-Mei W. [1 ]
机构
[1] Univ Illinois, Dept Elect & Comp Engn, Urbana, IL 61801 USA
关键词
High performance computing; high-level synthesis; coarse-grained parallelism; FPGA; GPU; CUDA programming model;
D O I
10.1145/1542275.1542357
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In this work, we propose a new FPGA design flow that combines the CUDA programming model from Nvidia with the state of the art high-level synthesis tool AutoPilot from AutoESL, to efficiently map the exposed parallelism in CUDA kernels onto reconfigurable devices. The use of the CUDA programming model offers the advantage of a common programming interface for exploiting parallelism on two very different types of accelerators - FPGAs and GPUs. Moreover, by leveraging the advanced synthesis capabilities of AutoPilot we enable efficient exploitation of the FPGA configurability for application specific acceleration. Our flow is based on a compilation process that transforms the SPMD CUDA thread blocks into high-concurrency AutoPilot-C code. We provide an overview of our CUDA-to-FPGA flow and demonstrate the highly competitive performance of the generated multi-core accelerators.
引用
收藏
页码:515 / 516
页数:2
相关论文
共 50 条
  • [41] Gravitational search algorithm using CUDA: a case study in high-performance metaheuristics
    Zarrabi, Amirreza
    Samsudin, Khairulmizam
    Karuppiah, Ettikan K.
    JOURNAL OF SUPERCOMPUTING, 2015, 71 (04): : 1277 - 1296
  • [42] Gravitational search algorithm using CUDA: a case study in high-performance metaheuristics
    Amirreza Zarrabi
    Khairulmizam Samsudin
    Ettikan K. Karuppiah
    The Journal of Supercomputing, 2015, 71 : 1277 - 1296
  • [43] Efficient code development for improving execution performance in high-performance computing centers
    Javier Corral-García
    Felipe Lemus-Prieto
    Miguel-Ángel Pérez-Toledano
    The Journal of Supercomputing, 2021, 77 : 3261 - 3288
  • [44] Efficient code development for improving execution performance in high-performance computing centers
    Corral-Garcia, Javier
    Lemus-Prieto, Felipe
    Perez-Toledano, Miguel-Angel
    JOURNAL OF SUPERCOMPUTING, 2021, 77 (04): : 3261 - 3288
  • [45] The Impact of CUDA Execution Configuration Parameters on the Performance and Energy of a Seismic Application
    Schussler, Brenda S.
    Rigon, Pedro H. C.
    Lorenzon, Arthur F.
    Carissimi, Alexandre
    Navaux, Philippe O. A.
    HIGH PERFORMANCE COMPUTING, CARLA 2023, 2024, 1887 : 170 - 183
  • [46] SuSy: A Programming Model for Productive Construction of High-Performance Systolic Arrays on FPGAs
    Lai, Yi-Hsiang
    Rong, Hongbo
    Zheng, Size
    Zhang, Weihao
    Cui, Xiuping
    Jia, Yunshan
    Wang, Jie
    Sullivan, Brendan
    Zhang, Zhiru
    Liang, Yun
    Zhang, Youhui
    Cong, Jason
    George, Nithin
    Alvarez, Jose
    Hughes, Christopher
    Dubey, Pradeep
    2020 IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER AIDED-DESIGN (ICCAD), 2020,
  • [47] High-performance Placement for Large-scale Heterogeneous FPGAs with Clock Constraints
    Zhu, Ziran
    Mei, Yangjie
    Li, Zijun
    Lin, Jingwen
    Chen, Jianli
    Yang, Jun
    Chang, Yao-Wen
    PROCEEDINGS OF THE 59TH ACM/IEEE DESIGN AUTOMATION CONFERENCE, DAC 2022, 2022, : 643 - 648
  • [48] FPGAs as Components in Heterogeneous High-Performance Computing Systems: Raising the Abstraction Level
    Vanderbauwhede, Wim
    Nabi, Syed Waqar
    PARALLEL COMPUTING: ON THE ROAD TO EXASCALE, 2016, 27 : 505 - 514
  • [49] Automatic Generation of High-Performance Modular Multipliers for Arbitrary Mersenne Primes on FPGAs
    Koppermann, Philipp
    De Santis, Fabrizio
    Heyszl, Johann
    Sigl, Georg
    2017 IEEE INTERNATIONAL SYMPOSIUM ON HARDWARE ORIENTED SECURITY AND TRUST (HOST), 2017, : 35 - 40
  • [50] High-Performance Kernel Machines With Implicit Distributed Optimization and Randomization
    Avron, Haim
    Sindhwani, Vikas
    TECHNOMETRICS, 2016, 58 (03) : 341 - 349