buddy-mlir  by buddy-compiler

MLIR compiler framework for deep learning co-design

Created 5 years ago
705 stars

Top 48.4% on SourcePulse

GitHubView on GitHub
Project Summary

Buddy-MLIR is an MLIR-based compiler framework designed for a co-design ecosystem, bridging domain-specific languages (DSLs) to domain-specific architectures (DSAs). It targets engineers and researchers seeking to streamline the development and deployment of specialized hardware accelerators.

How It Works

The project leverages MLIR's infrastructure to build a unified compiler toolchain. It enables the translation of high-level DSLs into optimized code for specific hardware architectures (DSAs), facilitating deep hardware-software co-design. This approach aims to provide flexibility and performance by targeting diverse architectures.

Quick Start & Requirements

  • Primary install/run: Requires cloning the repository, initializing Git submodules, and setting up a Python environment (conda recommended).
  • Prerequisites: LLVM/MLIR dependencies, flatbuffers-compiler, libflatbuffers-dev, libnuma-dev, and Python 3. The build process involves cmake and ninja for LLVM/MLIR/CLANG and buddy-mlir itself.
  • Build Targets: Supports host, RISCV, and optionally NVPTX for NVIDIA GPUs with CUDA runner enabled.
  • Environment: PYTHONPATH must be configured to include LLVM/MLIR and buddy-mlir Python packages.
  • Python Packages: Wheels for x86_64 and riscv64 can be built using scripts/release_wheel_manylinux.sh.
  • Links: Examples documentation is available
Health Check
Last Commit

2 days ago

Responsiveness

Inactive

Pull Requests (30d)
19
Issues (30d)
1
Star History
15 stars in the last 30 days

Explore Similar Projects

Starred by Yineng Zhang Yineng Zhang(Inference Lead at SGLang; Research Scientist at Together AI), Gabriel Almeida Gabriel Almeida(Cofounder of Langflow), and
13 more.

iree by iree-org

0.4%
4k
MLIR-based compiler and runtime toolkit for machine learning models
Created 6 years ago
Updated 1 day ago
Feedback? Help us improve.