Etna: MLIR-Based System-Level Design and Optimization for Transparent Application Execution on CPU-FPGA Nodes
Research output: Contribution to book/Conference proceedings/Anthology/Report › Conference contribution › Contributed › peer-review
Contributors
Abstract
Specialized hardware is often key to accelerate big data applications [2], [3]. However, while High-Level Synthesis (HLS) has advanced considerably in the past decades, offloading to FPGAs still requires significant manual effort from platform experts [4]. This is especially the case for industrial applications and when kernels may execute, interchangeably, on CPU or FPGA. To reduce this effort, we present Etna, an integrated MLIR-based development approach for applications with re-targetable kernels. As shown in Figure 1 (bottom), Etna takes as inputs a set of kernels for both CPU (C/C++) and FPGA execution (C/C++/MLIR for HLS), the FPGA description, and the MLIR representation of the application's dataflow graph (DFG). Etna supports Application Composition, System Generation, and integration with HLS tools for kernel synthesis. This is enabled by two novel MLIR dialects: dfg to describe the interactions among the kernels and olympus to describe the system-level architecture. dfg represents a generic graph model that can be extracted, e.g., from implicit dataflow languages [5]. In Application Composition, kernels marked as offloaded in the dfg dialect are lowered to olympus for hardware generation. The remaining kernels are lowered to LLVM-IR for code generation. Olympus takes the olympus representation of the offloaded portion of the DFG and performs System Generation to create an optimized system architecture and host drivers. For kernel HLS we use Bambu [1] for its unique support for data containers. The resulting HDL is instantiated within the system architecture. Finally, all CPU-side sources (application LLVM-IR, CPU kernel sources, FPGA kernel drivers) are linked to produce an executable.
Details
Original language | English |
---|---|
Title of host publication | Proceedings - 2024 IEEE 32nd Annual International Symposium on Field-Programmable Custom Computing Machines, FCCM 2024 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 224 |
Number of pages | 1 |
ISBN (electronic) | 9798350372434 |
Publication status | Published - 2024 |
Peer-reviewed | Yes |
Publication series
Series | Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM) |
---|
Conference
Title | 32nd IEEE Annual International Symposium on Field-Programmable Custom Computing Machines |
---|---|
Abbreviated title | FCCM 2024 |
Conference number | 32 |
Duration | 5 - 8 May 2024 |
Website | |
Location | DoubleTree by Hilton Hotel Orlando Airport |
City | Orlando |
Country | United States of America |
External IDs
ORCID | /0000-0002-5007-445X/work/173985266 |
---|
Keywords
ASJC Scopus subject areas
Keywords
- FPGA, HBM, HLS, MLIR