Challenging Portability Paradigms: FPGA Acceleration Using SYCL and OpenCL
Manuel de Castro, Francisco J. and\'ujar, Roberto R. Osorio, Roc\'io, Carratal\'a-S\'aez, Diego R. Llanos

TL;DR
This paper evaluates the performance portability of SYCL and OpenCL frameworks for FPGA acceleration in HPC, revealing that ND-range kernels outperform single-task kernels in high-level programming without FPGA-specific optimizations.
Contribution
It provides an empirical comparison of SYCL and OpenCL for FPGA HPC applications, highlighting the unexpected performance advantages of ND-range kernels over single-task kernels.
Findings
ND-range kernels outperform single-task kernels for high-level FPGA programming.
SYCL struggles with efficient single-task FPGA implementations.
High-level approaches favor ND-range kernels for FPGA acceleration.
Abstract
As the interest in FPGA-based accelerators for HPC applications increases, new challenges also arise, especially concerning different programming and portability issues. This paper aims to provide a snapshot of the current state of the FPGA tooling and its problems. To do so, we evaluate the performance portability of two frameworks for developing FPGA solutions for HPC (SYCL and OpenCL) when using them to port a highly-parallel application to FPGAs, using both ND-range and single-task type of kernels. The developer's general recommendation when using FPGAs is to develop single-task kernels for them, as they are commonly regarded as more suited for such hardware. However, we discovered that, when using high-level approaches such as OpenCL and SYCL to program a highly-parallel application with no FPGA-tailored optimizations, ND-range kernels significantly outperform single-task codes.…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsVLSI and Analog Circuit Testing · Embedded Systems Design Techniques · VLSI and FPGA Design Techniques
