NECSTFridayTalk – MARCH: Multi-staging Array Compiler for High-Level Synthesis
NECSTFridayTalk
Francesco Peverelli
DEIB PhD student
DEIB - NECSTLab Meeting Room (Bld. 20)
Online by Zoom
April 5th, 2024
11.30 am
Contacts:
Marco Santambrogio
Research Line:
System architectures
Francesco Peverelli
DEIB PhD student
DEIB - NECSTLab Meeting Room (Bld. 20)
Online by Zoom
April 5th, 2024
11.30 am
Contacts:
Marco Santambrogio
Research Line:
System architectures
Sommario
On April 5th, 2024 at 11.30 am will be held a new appointment of NECSTFridayTalk titeld: "MARCH: Multi-staging Array Compiler for High-Level Synthesis" in DEIB NECSTLab Meeting Room and on line by Zoom.
During this first talk, we will have, as speaker, Francesco Peverelli, PhD at Department of Electronics, Information and Bioengineering on the following details about the talk:
The most straightforward way to implement a DSL is to embed it into a high-level language, such as C++ or Java, and leverage operator overloading. However, this approach has limitations, such as the extraction of control flow. The Buildit library solves this problem by introducing type-based multi-staging in C++, offering a new way to build DSL, which is lightweight and requires less cumbersome compiler code writing. In today's talk, we present MARCH, a Buildit-based DSL and compiler targeting the AMD High-Level Synthesis toolchain. MARCH explores how multi-staging can be leveraged at several stages in the compilation pipeline to build complex dataflow analyses targeting reconfigurable hardware. We show how the MARCH DSL and scheduling co-language can be used to succinctly express complex code transformations related to HLS design.
During this first talk, we will have, as speaker, Francesco Peverelli, PhD at Department of Electronics, Information and Bioengineering on the following details about the talk:
The most straightforward way to implement a DSL is to embed it into a high-level language, such as C++ or Java, and leverage operator overloading. However, this approach has limitations, such as the extraction of control flow. The Buildit library solves this problem by introducing type-based multi-staging in C++, offering a new way to build DSL, which is lightweight and requires less cumbersome compiler code writing. In today's talk, we present MARCH, a Buildit-based DSL and compiler targeting the AMD High-Level Synthesis toolchain. MARCH explores how multi-staging can be leveraged at several stages in the compilation pipeline to build complex dataflow analyses targeting reconfigurable hardware. We show how the MARCH DSL and scheduling co-language can be used to succinctly express complex code transformations related to HLS design.
The NECSTLab is a DEIB laboratory, with different research lines on advanced topics in computing systems: from architectural characteristics, to hardware-software codesign methodologies, to security and dependability issues of complex system architectures.
Every week, the “NECSTFridayTalk” invites researchers, professionals or entrepreneurs to share their work experiences and projects they are implementing in the “Computing Systems”.