Software Name
snn-mlir
Short Description
Open-source MLIR dialect for Spiking Neural Networks. Compile NIR models to dependency-free binaries for any CPU or MCU. All contributors welcome.
Source Code URL (GitHub/GitLab)
https://github.com/INTERA-GROUP/snn-mlir
Documentation/Website URL
https://snn-mlir.readthedocs.io/en/latest/
PyPI Package Name (if applicable)
No response
Programming Language
Python, C++
License
Apache License 2.0 WITH LLVM-exception
Key Dependencies
nir
Field of Application
Compilers, Embedded systems,
Capabilities
Maintainer(s)
Alejandro G. Gener - Intera-group
Detailed Overview
Training an SNN today is well-supported. Deploying it on real hardware is not. snn-mlir bridges that gap: it takes any trained SNN exported to the NIR standard and compiles it into a self-contained, dependency-free binary that runs on any C-capable target.
The compiler is built as an out-of-tree MLIR dialect. A single type-polymorphic IR covers both float and quantized (i8/i32) deployments, and the reference CPU lowering produces plain C with no runtime dependencies. Quantization is automatic and optional and the pipeline handles scale alignment across layers. Any NIR-compatible framework feeds directly into it: snnTorch, LAVA-DL, Norse, Nengo, Sinabs, and more.
It serves two audiences. Neuromorphic researchers who want to move a trained model to hardware without carrying a Python simulation stack. And compiler or hardware engineers building custom accelerators who need a standard IR to target instead of defining their own. The SNN dialect gives them that, and writing a new backend is a matter of one MLIR lowering pass.
Software Name
snn-mlir
Short Description
Open-source MLIR dialect for Spiking Neural Networks. Compile NIR models to dependency-free binaries for any CPU or MCU. All contributors welcome.
Source Code URL (GitHub/GitLab)
https://github.com/INTERA-GROUP/snn-mlir
Documentation/Website URL
https://snn-mlir.readthedocs.io/en/latest/
PyPI Package Name (if applicable)
No response
Programming Language
Python, C++
License
Apache License 2.0 WITH LLVM-exception
Key Dependencies
nir
Field of Application
Compilers, Embedded systems,
Capabilities
Maintainer(s)
Alejandro G. Gener - Intera-group
Detailed Overview
Training an SNN today is well-supported. Deploying it on real hardware is not. snn-mlir bridges that gap: it takes any trained SNN exported to the NIR standard and compiles it into a self-contained, dependency-free binary that runs on any C-capable target.
The compiler is built as an out-of-tree MLIR dialect. A single type-polymorphic IR covers both float and quantized (i8/i32) deployments, and the reference CPU lowering produces plain C with no runtime dependencies. Quantization is automatic and optional and the pipeline handles scale alignment across layers. Any NIR-compatible framework feeds directly into it: snnTorch, LAVA-DL, Norse, Nengo, Sinabs, and more.
It serves two audiences. Neuromorphic researchers who want to move a trained model to hardware without carrying a Python simulation stack. And compiler or hardware engineers building custom accelerators who need a standard IR to target instead of defining their own. The SNN dialect gives them that, and writing a new backend is a matter of one MLIR lowering pass.