quiccir
is an out-of-tree MLIR dialect.
This dialect provides operators and types that can be lowered to library calls to use the spectral operators in QuICC.
It implements
- a
opt
-like tool to operate on quiccir - a self contained library to JIT the computational graph of the non linear terms needed in QuICC
quiccir
depends on LLVM 17 and MLIR and assuming they are installed the to $LLVM_ROOT
one can build quiccir
as follows
mkdir build && cd build
cmake -G Ninja .. -DMLIR_DIR=$LLVM_ROOT/lib/cmake/mlir -DQUICCIR_BUILD_TEST=OFF
To build and launch the tests, there is an additional dependency on lit
, for instance
mkdir build && cd build
cmake -G Ninja .. -DMLIR_DIR=$LLVM_ROOT/lib/cmake/mlir \
-DLLVM_EXTERNAL_LIT=$LLVM_BUILD/bin/llvm-lit -DQUICCIR_BUILD_TEST=ON
cmake --build . --target check-quiccir
To build the documentation from the TableGen description of the dialect operations, run
cmake --build . --target mlir-doc