Task-based preemptive scheduling on FPGAs leveraging partial reconfiguration

01/18/2023
by   Gabriel Rodriguez-Canal, et al.
0

FPGAs are an attractive type of accelerator for all-purpose HPC computing systems due to the possibility of deploying tailored hardware on demand. However, the common tools for programming and operating FPGAs are still complex to use, especially in scenarios where diverse types of tasks should be dynamically executed. In this work we present a programming abstraction with a simple interface that internally leverages High-Level Synthesis, Dynamic Partial Reconfiguration and synchronisation mechanisms to use an FPGA as a multi-tasking server with preemptive scheduling and priority queues. This leads to an improved use of the FPGA resources, allowing the execution of several different kernels concurrently and deploying the most urgent ones as fast as possible. The results of our experimental study show that our approach incurs only a 10 providing a significant performance improvement of at least 24 traditional full reconfiguration approach.

READ FULL TEXT

page 5

page 10

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
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
01/26/2020

FOS: A Modular FPGA Operating System for Dynamic Workloads

With FPGAs now being deployed in the cloud and at the edge, there is a n...
research
08/21/2023

GSA to HDL: Towards principled generation of dynamically scheduled circuits

High-level synthesis (HLS) refers to the automatic translation of a soft...
research
12/15/2020

A Comparative Study between HLS and HDL on SoC for Image Processing Applications

The increasing complexity in today's systems and the limited market time...
research
08/25/2023

Fortran High-Level Synthesis: Reducing the barriers to accelerating HPC codes on FPGAs

In recent years the use of FPGAs to accelerate scientific applications h...
research
06/14/2011

Supporting Parallelism in Server-based Multiprocessor Systems

Developing an efficient server-based real-time scheduling solution that ...

Please sign up or login with your details

Forgot password? Click here to reset