Design and Implementation of Knowledge Base for Runtime Management of Software Defined Hardware

03/28/2022
by   Hongkuan Zhou, et al.
0

Runtime-reconfigurable software coupled with reconfigurable hardware is highly desirable as a means towards maximizing runtime efficiency without compromising programmability. Compilers for such software systems are extremely difficult to design as they must leverage different types of hardware at runtime. To address the need for static and dynamic compiler optimization of workflows matched to dynamically reconfigurable hardware, we propose a novel design of the central component of a dynamic software compiler for software defined hardware. Our comprehensive design focuses not just on static knowledge but also on semi-supervised extraction of knowledge from program executions and developing their performance models. Specifically, our novel dynamic and extensible knowledge base 1) continuously gathers knowledge during execution of workflows 2) identifies optimal implementations of workflows on optimal (available) hardware configurations. It plays a hub role in storing information from, and providing information to other components of the compiler, as well as the human analyst. Through a rich tripartite graph representation, the knowledge base captures and learns extensive information on decomposition and mapping of code steps to kernels and mapping of kernels to available hardware configurations. The knowledge base is implemented using the C++ Boost Library and is capable of quickly processing offline and online queries and updates. We show that our knowledge base can answer queries in 1ms regardless of the number of workflows it stores. To the best of our knowledge, this is the first design of a dynamic and extensible knowledge base to support compilation of high-level languages to leverage arbitrary reconfigurable platforms.

READ FULL TEXT

page 1

page 2

page 3

page 4

page 5

page 6

research
12/14/2021

FLOWER: A comprehensive dataflow compiler for high-level synthesis

FPGAs have found their way into data centers as accelerator cards, makin...
research
01/29/2020

Query-Sequence Optimization on a Reconfigurable Hardware-Accelerated System

Hardware acceleration of database query processing can be done with the ...
research
05/01/2020

The ReProVide Query-Sequence Optimization in a Hardware-Accelerated DBMS

Hardware acceleration of database query processing can be done with the ...
research
02/27/2023

Towards Ranking Schemas by Focus

The main goal of this paper is to evaluate knowledge base schemas, model...
research
04/08/2011

An Agent-based Architecture for a Knowledge-work Support System

Enhancement of technology-based system support for knowledge workers is ...
research
07/20/2021

StreamBlocks: A compiler for heterogeneous dataflow computing (technical report)

To increase performance and efficiency, systems use FPGAs as reconfigura...
research
04/28/2021

Tackling Software Architecture Erosion: Joint Architecture and Implementation Repairing by a Knowledge-based Approach

Architecture erosion is a big challenge in modern architectures leading ...

Please sign up or login with your details

Forgot password? Click here to reset