NECST Friday Talk
My experience at MIT
Emanuele Del Sozzo
DEIB PhD student - Politecnico di Milano
DEIB - NECST Meeting Room (Building 20, basement floor)
February 9th, 2018
12.00 pm
Contact:
Marco Santambrogio
Research line:
System architecture
Emanuele Del Sozzo
DEIB PhD student - Politecnico di Milano
DEIB - NECST Meeting Room (Building 20, basement floor)
February 9th, 2018
12.00 pm
Contact:
Marco Santambrogio
Research line:
System architecture
Abstract
This talk describes my experience as visiting Ph.D. student at MIT, where I worked with the Commit group. My collaboration focused on the development of a common backend for Domain Specific Languages (DSLs) to easily generate code for Field Programmable Gate Arrays (FPGAs). FPGAs are configurable integrated circuits able to provide a good trade-off in terms of performance, power consumption, and flexibility with respect to other architectures, like CPUs, GPUs and ASICs. The main drawback in using FPGAs, however, is their steep learning curve. An emerging solution to this problem is to write algorithms in a DSL and to let the DSL compiler generate efficient code for FPGAs. During my research visit, I developed FROST, a unified backend that enables different DSL compilers to target FPGA architectures.
Differently from other code generation frameworks targeting FPGA, FROST exploits a scheduling co-language that enables users to have full control over which optimizations to apply (e.g. loop pipelining, array partitioning, vectorization). At first, FROST analyzes and manipulates the input Abstract Syntax Tree (AST) in order to apply FPGA-oriented transformations and optimizations, then generates a C/C++ implementation suitable for High-Level Synthesis (HLS) tools. Finally, the output of HLS phase is synthesized and implemented on the target FPGA using Xilinx SDAccel toolchain.
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 "NECST Friday Talk" invites researchers, professionals or entrepreneurs to share their work experiences and projects they are implementing in the "Computing Systems".
Differently from other code generation frameworks targeting FPGA, FROST exploits a scheduling co-language that enables users to have full control over which optimizations to apply (e.g. loop pipelining, array partitioning, vectorization). At first, FROST analyzes and manipulates the input Abstract Syntax Tree (AST) in order to apply FPGA-oriented transformations and optimizations, then generates a C/C++ implementation suitable for High-Level Synthesis (HLS) tools. Finally, the output of HLS phase is synthesized and implemented on the target FPGA using Xilinx SDAccel toolchain.
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 "NECST Friday Talk" invites researchers, professionals or entrepreneurs to share their work experiences and projects they are implementing in the "Computing Systems".