youben11
690b4f75c5
feat(python): support loop parallelization
...
Remove hard checks on parallelization support, we allow compilation
unconditionally of the support for parallel execution
2022-04-04 12:48:48 +01:00
youben11
01f6a334ff
chore: remove macos workaround for linking runtimelib
2022-04-04 11:52:23 +01:00
youben11
ec7d1232f1
feat: add runtimeLib link for library compilation
...
runtime library will be linked to compiled library
2022-04-04 11:52:23 +01:00
youben11
bd6e8c7bbc
fix: go back one additional directory
...
package has been refactored adding compiler/ under concrete/
2022-04-04 09:15:31 +01:00
youben11
78def04fe5
refactor: rename [jit|library]lambdasupport to [jit|library]support
2022-04-04 09:15:31 +01:00
youben11
999ab4e5ea
refactor: recreate the Python API using wrappers
...
All Cpp objects are now wrapped, and calls are being forwarded after
strict type checking for avoiding weird behaviors.
The same Cpp API is now exposed to Python
2022-04-04 09:15:31 +01:00
youben11
b55f931d7b
ci: enable python formatting check
2022-04-04 09:15:31 +01:00
youben11
51308058c1
chore: format python code with black
2022-04-04 09:15:31 +01:00
Antoniu Pop
51d4d044cb
fix(build): refactor DFRuntime build and link in ConcretelangRuntime instead.
2022-04-01 20:39:16 +01:00
Antoniu Pop
0e38e0a48c
feat(parallelization): enable OpenMP/loop parallelism as a compilation target independently of HPX/DFR.
2022-04-01 20:39:16 +01:00
Mayeul@Zama
b76839b8c9
fix(cmake): fix cmake dependencies
2022-03-30 17:20:20 +02:00
Mayeul@Zama
9ccced7d93
fix(cmake): unify tablegen headers generation dependencies
2022-03-30 17:20:20 +02:00
rudy
2c4d399575
feat(KeySetCache): use a artifacts to store the cache
2022-03-30 10:11:38 +02:00
youben11
11a1ea38b4
fix: disable exceptions on termination
...
termination was actually called everytime the interpreter was exiting,
and non-parallel packages have been throwing exception because of that
2022-03-28 13:42:18 +01:00
youben11
ad79aa627f
fix: don't pass ref to runtimeLibPath
...
We were keeping a reference to the path which led to its use after the
string was freed
2022-03-28 13:42:18 +01:00
youben11
d1da6ce05f
fix: detect early when parallelization isn't supported
2022-03-28 13:42:18 +01:00
youben11
ed2e27695f
fix: pass built options instead of using default
2022-03-28 13:42:18 +01:00
Quentin Bourgerie
254b4dc530
enhance(compiler): Enable deallocation pass to free temporary buffers
2022-03-28 09:41:54 +02:00
Quentin Bourgerie
fc51b1d2ab
fix(compiler): Activate the loop parallelism in ConcreteToBConcrete when the option is set
2022-03-28 09:41:27 +02:00
youben11
77356fa374
feat: lower FHELinalg.transpose to linalg.generic
2022-03-24 16:04:57 +01:00
youben11
4e64b9e12a
feat: support FHELinalg.transpose in MANP
2022-03-24 16:04:57 +01:00
youben11
3a4723a0b8
feat: add FHELinalg.transpose operation
2022-03-24 16:04:57 +01:00
Quentin Bourgerie
c70ef1dcda
fix(support): Use shared_ptr intead of raw ptr on JitLambdaSupport that allows the JitLambda to be used after that the compilation result is freed
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
2373a67592
fix(python): Re-enable parallelize options after rebasing
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
0d376bc559
enhance(compiler): template result of typed vector from PublicResult
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
52aa18a848
fix(python): Actually use the given lambda support
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
1422b575d0
fix(compiler): Remove custom llvm pipeline as it's not used
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
cc1e74d923
cleanup(compiler): Remove JitCompilerEngine
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
1620259807
cleanup(capi/python-bindings): Remove reference to JitCompilerEngine
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
5b83b700d2
enhance(compiler): Expose a compilation options instead of just the funcname
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
1b984f5119
cleanup(python): Cleanup python bindings after refactoring of CompilerEngine
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
8867d313ee
feat(python): Expose Jit and Library compiler support
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
f8968eb489
enhance(compiler/support): Refactor lambda support to have fatorized supoort for both lib and jit lambda
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
44b1e5bab2
fix(clientlib): Allow tensor with dimensions equals to 0
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
1ffd480d07
cleanup(compiler/jit): Removing dead code since the preparation of arguments has been factorized thanks the EncryptedArguments
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
0d1f041323
refactor(jit): Use PublicArguments instead of JitLambda::Argument to call the lambda (uniform calling to ServerLambda and JitLambda)
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
8a52cdaaf5
fix(client/server): Fix of clear scalar
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
82741868f1
refactor(client/server): Rename encrypted_scalars_and_sizes_t o TensorData as it can be used for any kind of tensor
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
5e8d2e7986
cleanup(clientlib): Remove ClientParameters serialization
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
cb5b89545c
fix(server): Dirty free allocated memref by the mlir program
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
e72101f5c7
fix(compiler): Delete target machine when no more in use (prevent leak in compilation)
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
73da7da81c
enhance(client/server): Don't decrypt directly from istream use a intermediate container to represent public result
2022-03-24 11:00:36 +01:00
Quentin Bourgerie
6aaaeb8d3f
enhance(compiler): Update v0 parameters table, that enable 8 bits
2022-03-22 12:38:58 +01:00
Quentin Bourgerie
8961be33d2
fix(compiler): Remove the 7bits restriction on compiler side, it's the optimizer that known the truth
2022-03-22 12:38:58 +01:00
youben11
bb289b6191
fix: link clientlib to concrete
2022-03-17 16:15:02 +01:00
youben11
18f0ad77e7
fix: use new dfr api
2022-03-17 16:15:02 +01:00
Antoniu Pop
337a9bb5c2
fix(dfr): add runtime termination call on compiler main exit.
2022-03-17 16:15:02 +01:00
Antoniu Pop
27318ff29a
fix(runtime): disable main wrapping and provide _dfr_terminate new termination call for the runtime.
2022-03-17 16:15:02 +01:00
youben11
44ebd426f9
feat: setup init/termination of parallel execution in python
2022-03-17 16:15:02 +01:00
Antoniu Pop
2f31edef7f
fix(runtime): add initialization guard to avoid double initialization/finalization of the runtime.
2022-03-17 16:15:02 +01:00