Discover and explore top open-source AI tools and projects—updated daily.
Composable hardware accelerator design
Top 93.4% on SourcePulse
Allo is a Python-embedded Accelerator Design Language (ADL) and compiler for creating modular, high-performance hardware accelerators. It targets researchers and engineers building complex hardware systems, enabling progressive customization and reusable kernel templates for enhanced productivity and debuggability.
How It Works
Allo leverages MLIR for its intermediate representation, allowing for progressive hardware customizations by treating each transformation as a primitive that rewrites the program. This approach decouples loop transformations, memory, communication, and data types, offering flexibility. It supports reusable, parameterized kernel templates with a concise grammar, simplifying the creation of hardware kernel libraries without complex metaprogramming. Composable schedules allow incremental kernel construction and validation using a .compose()
primitive, facilitating bottom-up design.
Quick Start & Requirements
Installation and tutorials are available in the official Allo documentation.
Highlighted Details
Maintenance & Community
Users can open issues for problems. Related projects include Exo, Halide, TVM, Dahlia, HeteroCL, PyLog, Spatial HLS, Stream-HLS, ScaleHLS, and MLIR.
Licensing & Compatibility
The license is not explicitly stated in the provided README.
Limitations & Caveats
The README does not detail specific limitations, unsupported platforms, or known bugs. The project appears to be research-oriented, with a PLDI'24 publication.
18 hours ago
Inactive