A Cross-Platform OpenVX Library for FPGA Accelerators

Research output: Contribution to conferencesPaperContributedpeer-review

Contributors

Abstract

In Computer Vision, open programming standards such as OpenVX have emerged to bring together portability and acceleration across devices. Unfortunately, achieving both goals on FPGAs remains a challenge because FPGAs still require to adapt the code with proprietary extensions. Exclusively for Xilinx devices, the HiFlipVX open source library partially solves this problem by offering a clean C++ OpenVX API that offers the performance of proprietary extensions without exposing its complexity to programmer. While HiFlipVX enables portability within Xilinx devices, portability between FPGA manufacturers remains an open challenge. This work extends the HiFlipVX's capabilities with a twofold goal: i) to support Intel FPGA devices with different memory configurations, and ii) to enable execution on FPGAs as discrete accelerators. To accomplish these goals, the proposed implementation combines two HLS programming models: C++, using Intel's system of tasks that enables to coalesce nodes and reduce control overhead, and OpenCL, which provides efficient compute kernel nodes. On Intel FPGAs, compared with pure OpenCL implementations, the proposed implementation reduces kernel dispatch resources, saving up to 24% of ALUT resources for each kernel in a graph, and improves performance. Gains are 2.6× on average for representative applications, such as Canny edge detector, or Census transform, compared with state-of-the-art frameworks.

Details

Original languageEnglish
Pages75-83
Number of pages9
Publication statusPublished - Mar 2021
Peer-reviewedYes

Conference

Title29th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing
Abbreviated titlePDP 2021
Conference number29
Duration10 - 12 March 2021
Locationonline
CityValladolid
CountrySpain

External IDs

Scopus 85105451213
ORCID /0000-0003-2571-8441/work/142240500

Keywords

Research priority areas of TU Dresden

DFG Classification of Subject Areas according to Review Boards

Keywords

  • FPGAs, FPGA, HiFlipVX, HLS, OpenCL, OpenVX