Andi Drebes
ddebedd1d6
refactor(compiler): Make function getV0Parameter return a pointer to a constant
...
The function `getV0Parameter()` returns a pointer to a static array,
which is not intended to be mutable. Reflect this in the return type
of the function.
2021-09-28 11:35:58 +02:00
Andi Drebes
6a76177a47
refactor(compiler): Move JIT functionality to separate source file
2021-09-28 11:35:58 +02:00
Andi Drebes
b9e2690823
refactor(compiler): Replace LOG_{VERBOSE,ERROR} macros with C++-style streams
...
Replace the macros `LOG_VERBOSE` and `LOG_ERROR` with C++-style
streams retrieved through `log_verbose()` and `log_error()`. This
aligns with the `MLIR` infrastructure and avoids pollution of the
global namespace through a common header file in subsequent
refactoring commits splitting the functionality of `src/main.cpp` into
multiple files.
2021-09-28 11:35:58 +02:00
Quentin Bourgerie
b4776a619d
test(compiler): Reenable 7 bits test, we should change how the test are done to take care of the probability of exactness
2021-09-27 13:37:11 +02:00
Quentin Bourgerie
0f93fa1dcc
fix(compiler/parameters): new parameters for v0 (p=0.99993 for 1-6 and 0.95 for 7)
2021-09-27 13:37:11 +02:00
Quentin Bourgerie
7454c30485
fix(compiler/parameters): Update parameters
2021-09-27 13:37:11 +02:00
Quentin Bourgerie
d9be22c1b1
fix(compiler/runtime): decode with integers
2021-09-27 13:37:11 +02:00
Quentin Bourgerie
3a254bcb87
fix(compiler): Integrate the security estimator to compute variances
2021-09-20 13:46:08 +02:00
Quentin Bourgerie
8cc0af1220
fix(compiler): Add a pass to unparametrize LowLFHE ciphertext to remove unrelized_convesrion_cast for linalg bufferization
2021-09-09 20:35:28 +02:00
youben11
746d991af6
refactor: ins forward decl w generic ty @pass-init
...
Insert forward declarations with generic types at pass initialization.
More docs for all the pass for lowering LUT
2021-09-09 20:35:28 +02:00
youben11
3893ad39bb
fix: divide and round to decode decrypted ct
...
Doing a right shift will ommit the bits that can be used to round to the
nearest integer
2021-09-09 20:35:28 +02:00
youben11
c6b1480cc6
feat: generate runtime context at Argument creation
2021-09-09 20:35:28 +02:00
youben11
8aee5dd5c3
chore(runtime): link concrete statically with runtime lib
2021-09-09 20:35:28 +02:00
Quentin Bourgerie
d03adbd7dc
enhance(compiler): Add options for verbose passes
2021-09-08 11:44:51 +02:00
Quentin Bourgerie
de7129fe8e
feat(compiler/llvm-pipeline): Bufferize linalg and convert to loops
2021-09-08 11:44:51 +02:00
Quentin Bourgerie
697d4033e1
fix(compiler): typo
2021-09-06 10:26:40 +02:00
Quentin Bourgerie
af0789f128
enhance(compiler/runtime): Add runtime tools to handle tensor inputs and outputs
2021-09-06 10:26:40 +02:00
Quentin Bourgerie
bc975d904e
feat(compiler): introduce bufferization passes in lowering pipeline to llvm
2021-09-06 10:26:40 +02:00
Quentin Bourgerie
19704b4b13
fix(compiler/lowlfhe): Use the lwe ciphertext parameters to allocate instead of global fhe context
2021-08-24 16:29:04 +02:00
Quentin Bourgerie
67f0fc0f45
enhance(compiler): Introduce MidLFHE dag parametrization
2021-08-24 16:21:31 +02:00
Quentin Bourgerie
8057ee7553
refactor(compiler): Prepare the MidLFHE parameters injection
2021-08-24 16:21:31 +02:00
youben11
f948db1228
feat(python): CompilerEngine to compile and run
2021-08-18 17:38:46 +02:00
Quentin Bourgerie
8796754513
fix(compiler/lowlfhe): Fix wrong shift value for EncodeIntOp lowering
...
That's work before because we enfoce 6 as global constraint while our runJit tests are on 7 bits
2021-08-16 18:54:56 +02:00
Quentin Bourgerie
42f12b22da
fix(compiler): move the midlfhe to lowlfhe pass to the right place
2021-08-16 18:54:56 +02:00
Quentin Bourgerie
f45abce604
feat(compiler): More lowlfhe operators conversion to mlir std dialects
2021-08-16 18:54:56 +02:00
Quentin Bourgerie
03297fd50d
fix(compiler/lowlfhe): for the v0 give the lweSize of ciphertext as a global parameter of the lowering pass to concrete api call ( #62 )
2021-08-16 18:54:56 +02:00
Quentin Bourgerie
b22f585380
feat(compiler): First draft of lowering from LowLFHE to std with fct call ( #62 )
2021-08-16 18:54:56 +02:00
Quentin Bourgerie
d0877536ed
feat(compiler): First draft of client parameters generation, runtime support for encrypting and decrypting circuit gates, integration of fhe parameters for the v0 ( #65 , #66 , #56 )
2021-08-13 14:05:29 +02:00
youben11
4d3c7a68de
feat(compiler): MidToLowLFHE lowering
2021-08-12 13:48:51 +01:00
Quentin Bourgerie
b4e57984b1
feat(compiler): Add passes to lower mlir to mlir llvm ir and run jit and emit llvm code ( #63 )
2021-08-05 13:43:08 +01:00