mirror of
https://github.com/zama-ai/concrete.git
synced 2026-02-09 20:25:34 -05:00
This has been generated using linalg tools, then put in their appropriate locations. This is intended as a workaround since linalg doesn't support tensors of custom types yet. Any conversion using this added operation should be able to use the default operation from linalg when it starts supporting tensor of custom types.
Building the compiler
Install MLIR following https://mlir.llvm.org/getting_started/ Use commit c2415d67a564
Install pybind11:
pip install pybind11
Build concrete library:
git clone https://github.com/zama-ai/concrete_internal
cd concrete_internal
git checkout compiler_c_api
cd concrete-ffi
RUSTFLAGS="-C target-cpu=native" cargo build --release
Generate the compiler build system, in the build directory
export LLVM_PROJECT="PATH_TO_LLVM_PROJECT"
export CONCRETE_PROJECT="PATH_TO_CONCRETE_INTERNAL_PROJECT"
make build-initialized
Build the compiler
make concretecompiler
Test the compiler
#TODO: let cmake set this PATH
export LD_LIBRARY_PATH="path_to_concrete-compiler/compiler/build/lib/Runtime/"
make test
Run the compiler
./build/src/concretecompiler