Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Berke-Ates authored Sep 20, 2023
1 parent 5067939 commit b448d87
Showing 1 changed file with 20 additions and 2 deletions.
22 changes: 20 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,26 @@ MLIR-DaCe is a project aiming to bridge the gap between control-centric and data
By bridging these two groups of IRs, it allows the combination of control-centric and data-centric optimizations in optimization pipelines.
In order to achieve this, MLIR-DaCe provides a data-centric dialect in MLIR to connect the MLIR and DaCe frameworks.

## Building
This setup assumes that you have built LLVM and MLIR in `$BUILD_DIR` and installed them to `$PREFIX`. To build and launch the tests, run
## Building MLIR
If you have already MLIR built you can skip to [Building MLIR-DaCe](#building-mlir-dace).
Keep in mind that there are no guarantees for commits other than the one in the submodule.

First clone with submodules:
```sh
git clone --recurse-submodules https://github.com/spcl/mlir-dace
cd mlir-dace
```

Then build MLIR with:
```sh
cd llvm-project
mkdir build && cd build
cmake -G Ninja ../llvm -DLLVM_ENABLE_PROJECTS="mlir" -DLLVM_TARGETS_TO_BUILD="host" -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DLLVM_ENABLE_LLD=ON -DLLVM_INSTALL_UTILS=ON
```

## Building MLIR-DaCe
This setup assumes that you have built LLVM and MLIR in `$BUILD_DIR` and installed them to `$PREFIX`. If you built using the directions in [Building MLIR](#building-mlir), replace both with `llvm-project/build/`.
To build and launch the tests, run
```sh
mkdir build && cd build
cmake -G Ninja .. -DMLIR_DIR=$PREFIX/lib/cmake/mlir -DLLVM_EXTERNAL_LIT=$BUILD_DIR/bin/llvm-lit
Expand Down

0 comments on commit b448d87

Please sign in to comment.