metagraph-dev / mlir-graphblas

MLIR tools and dialect for GraphBLAS

Home Page:https://mlir-graphblas.readthedocs.io/en/latest/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MLIR dialect for GraphBLAS + Python tools

Conda Version Build Status

Note that this code currently requires llvm-project@bd0cae6.

graphblas-opt

In order to build graphblas-opt, run python3 build.py from mlir_graphblas/src/. This will build graphblas-opt and run the tests for graphblas-opt. The built files will be stored in mlir_graphblas/src/build.

build.py does not rebuild from scratch by default. To perform a clean build, run python3 build.py -build-clean.

Linting with clang-format

Ensure that clang-format is available (install the clang-tools conda package) and run:

./run-clang-format.py -r mlir_graphblas/src/

If changes required, can make changes in place with

./run-clang-format.py -i -r mlir_graphblas/src/

Note about Transition

mlir-graphblas is transitioning away from lowering code targeting the SCF dialect and towards lowering code targeting linalg.generic. This process is happening in tandem with changes to the sparse-tensor dialect's lowering of linalg.generic with dynamically-shaped output. As a result, mlir-graphblas is temporarily pointing at the mlir-ac conda package which is built from a branch off the LLVM project code. Once these changes are merged into the main branch on LLVM, mlir-graphblas will be updated to target that. Until then, we will be out of sync with the LLVM project.

About

MLIR tools and dialect for GraphBLAS

https://mlir-graphblas.readthedocs.io/en/latest/

License:Apache License 2.0


Languages

Language:Python 37.6%Language:C++ 36.3%Language:MLIR 22.6%Language:Cython 3.2%Language:CMake 0.2%Language:Shell 0.0%