On The Design of a Light-weight FPGA Programming Framework for Graph Applications

02/25/2022
by   Jing Wang, et al.
0

FPGA accelerators designed for graph processing are gaining popularity. Domain Specific Language (DSL) frameworks for graph processing can reduce the programming complexity and development cost of algorithm design. However, accelerator-specific development requires certain technical expertise and significant effort to devise, implement, and validate the system. For most algorithm designers, the expensive cost for hardware programming experience makes FPGA accelerators either unavailable or uneconomic. Although general-purpose High-Level Synthesis (HLS) tools help to map high-level language to Hardware Description Languages (HDLs), the generated code is often inefficient and lengthy compared with the highly-optimized graph accelerators. One cannot make full use of an FPGA accelerator's capacity with low development cost. To easily program graph algorithms while keeping performance degradation acceptable, we propose a graph programming system named JGraph, which contains two main parts: 1) a DSL for graph atomic operations with a graph library for high-level abstractions including user-defined functions with parameters, 2) a light-weight HLS translator to generate high-performance HDL code, cooperating with a communication manager and a runtime scheduler. To the best of our knowledge, our work is the first graph programming system with DSL and translator on the FPGA platform. Our system can generate up to 300 MTEPS BFS traversal within tens of seconds.

READ FULL TEXT
research
07/03/2018

Best-Effort FPGA Programming: A Few Steps Can Go a Long Way

FPGA-based heterogeneous architectures provide programmers with the abil...
research
08/28/2015

A Comparison of High-Level Design Tools for SoC-FPGA on Disparity Map Calculation Example

Modern SoC-FPGA that consists of FPGA with embedded ARM cores is being p...
research
08/06/2021

From Domain-Specific Languages to Memory-Optimized Accelerators for Fluid Dynamics

Many applications are increasingly requiring numerical simulations for s...
research
02/26/2015

Automatic Optimization of Hardware Accelerators for Image Processing

In the domain of image processing, often real-time constraints are requi...
research
04/18/2019

Investigating the Dirac operator evaluation with FPGAs

In recent years the computational capacity of single Field Programmable ...
research
08/26/2022

Programming abstractions for preemptive scheduling in FPGAs using partial reconfiguration

FPGAs are an attractive type of accelerator for all-purpose HPC computin...
research
04/06/2021

Building Beyond HLS: Graph Analysis and Others

High-Level Synthesis has introduced reconfigurable logic to a new world ...

Please sign up or login with your details

Forgot password? Click here to reset