A compiler infrastructure for accelerator generators
Rachit Nigam, Samuel Thomas, Zhijing Li, Adrian Sampson
摘要
We present Calyx, a new intermediate language (IL) for compiling high-level programs into hardware designs. Calyx combines a hardware-like structural language with a software-like control flow representation with loops and conditionals. This split representation enables a new class of hardware-focused optimizations that require both structural and control flow information which are crucial for high-level programming models for hardware design. The Calyx compiler lowers control flow constructs using finite-state machines and generates synthesizable hardware descriptions.
We have implemented Calyx in an optimizing compiler that translates high-level programs to hardware. We demonstrate Calyx using two DSL-to-RTL compilers, a systolic array generator and one for a recent imperative accelerator language, and compare them to equivalent designs generated using high-level synthesis (HLS). The systolic arrays are 4.6× faster and 1.11× larger on average than HLS implementations, and the HLS-like imperative language compiler is within a few factors of a highly optimized commercial HLS toolchain. We also describe three optimizations implemented in the Calyx compiler.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper14
- Allo: A Programming Model for Composable Accelerator DesignHongzheng Chen, Niansong Zhang, Shaojie Xiang, Zhichen Zeng 等PLDI 2024 · 被引用 41 次
- Archytas: A Framework for Synthesizing and Dynamically Optimizing Accelerators for Robotic LocalizationWeizhuang Liu, Bo Yu, Yiming Gan, Qiang Liu 等MICRO 2021 · 被引用 41 次
- HIDA: A Hierarchical Dataflow Compiler for High-Level SynthesisHanchen Ye, Hyegang Jun, Deming ChenASPLOS 2024 · 被引用 21 次
- Modular Hardware Design with Timeline TypesRachit Nigam, Pedro Henrique Azevedo de Amorim, Adrian SampsonPLDI 2023 · 被引用 16 次
- Reticle: a virtual machine for programming modern FPGAsLuis Vega, Joseph McMahan, Adrian Sampson, Dan Grossman 等PLDI 2021 · 被引用 8 次
它引用的顶会 Paper3
- Predictable accelerator design with time-sensitive affine typesRachit Nigam, Sachille Atapattu, Samuel Thomas, Zhijing Li 等PLDI 2020 · 被引用 58 次
- Type-directed scheduling of streaming acceleratorsDavid Durst, Matthew Feldman, Dillon Huff, David Akeley 等PLDI 2020 · 被引用 49 次
- LLHD: a multi-level intermediate representation for hardware description languagesFabian Schuiki, Andreas Kurth, Tobias Grosser, Luca BeniniPLDI 2020 · 被引用 35 次
相关 Paper
- Stepwise Debugging for Hardware AcceleratorsGriffin Berlstein, Rachit Nigam, Christophe Gyurgyik, Adrian SampsonASPLOS 2023 · 被引用 2 次
- Unifying Static and Dynamic Intermediate Languages for Accelerator GeneratorsCaleb Kim, Pai Li, Anshuman Mohan, Andrew Butt 等OOPSLA 2024 · 被引用 1 次
- Understanding Accelerator Compilers via Performance ProfilingAyaka Yorihiro, Griffin Berlstein, Pedro Pontes García, Kevin Laeufer 等OOPSLA 2026
- Wavefront Threading Enables Effective High-Level SynthesisBlake Pelton, Adam Sapek, Ken Eguro, Daniel Lo 等PLDI 2024 · 被引用 4 次
- Compiling Classical Sequent Calculus to Stock Hardware: The Duality of CompilationPhilipp Schuster, Marius Müller, Klaus Ostermann, Jonathan Immanuel BrachthäuserOOPSLA 2025 · 被引用 1 次
