youben11
15b4aac0a1
feat(rust): support keygen, encryption, execution
2022-12-02 14:03:02 +01:00
Mayeul@Zama
28594db536
chore(compiler): fix c++11-narrowing
2022-11-14 14:04:46 +01:00
Quentin Bourgerie
cf9a36c197
feat(compiler/runtime): Support the pbs for crt encoding (enable apply_lookup_table up to 16bits)
2022-10-07 09:16:19 +02:00
Andi Drebes
a7051c2c9c
enhance(client/server): Add support for scalar results
...
This patch adds support for scalar results to the client/server
protocol and tests. In addition to `TensorData`, a new type
`ScalarData` is added. Previous representations of scalar values using
one-dimensional `TensorData` instances have been replaced with proper
instantiations of `ScalarData`.
The generic use of `TensorData` for scalar and tensor values has been
replaced with uses of a new variant `ScalarOrTensorData`, which can
either hold an instance of `TensorData` or `ScalarData`.
2022-10-04 14:40:40 +02:00
Andi Drebes
8255d3e190
fix(compiler): Add support for clear result tensors with element width != 64 bits
...
Returning tensors with elements whose width is not equal to 64 results
in garbled data. This commit extends the `TensorData` class used to
represent tensors in JIT compilation with support for signed /
unsigned elements of 8/16/32 and 64 bits, such that all clear text
tensors with up to 64 bits can be represented accurately.
2022-10-04 14:40:40 +02:00
rudy
cb2c9ef6bf
feat: accept no evaluation keys
2022-09-26 14:43:25 +02:00
Quentin Bourgerie
f4673e8276
feat(compiler): First draft or compilation feedback
2022-09-14 10:03:25 +02:00
youben11
661d33c2b6
feat: keep std bsk and conv to fourier when needed
2022-09-06 07:18:34 +01:00
Mayeul@Zama
eb4b0753dc
enhance(runtime): Move to the official concrete-core-ffi release 0.2.0-rc2
...
Co-authored-by: Mayeul@Zama <mayeul.debellabre@zama.ai >
Co-authored-by: Quentin Bourgerie <bourgerie.quentin@gmail.com >
2022-08-30 18:08:47 +02:00
Quentin Bourgerie
8cd3a3a599
feat(compiler): First draft to support FHE.eint up to 16bits
...
For now what it works are only levelled ops with user parameters. (take a look to the tests)
Done:
- Add parameters to the fhe parameters to support CRT-based large integers
- Add command line options and tests options to allows the user to give those new parameters
- Update the dialects and pipeline to handle new fhe parameters for CRT-based large integers
- Update the client parameters and the client library to handle the CRT-based large integers
Todo:
- Plug the optimizer to compute the CRT-based large interger parameters
- Plug the pbs for the CRT-based large integer
2022-08-12 16:35:11 +02:00
Antoniu Pop
9f1ac8a4e4
fix(dfr): add guard assert for not returning empty EvaluationKeys when on root node.
2022-08-04 17:06:09 +01:00
Antoniu Pop
fbca52f4a0
feat(dfr): add memory management for futures and associated data.
2022-08-04 17:06:09 +01:00
Antoniu Pop
954b2098c6
feat(runtime): enable distributed execution.
2022-08-04 17:06:09 +01:00
youben11
f4166a4973
docs: use consistent style for comment blocks
...
prefix comment blocks with ///
2022-07-07 16:11:19 +01:00
Mayeul@Zama
928a44d243
chore(ci): enforce ending files with a newline
2022-06-16 17:04:25 +02:00
youben11
1354759884
chore: rename refs to main branch
2022-06-09 09:19:06 +01:00
Umut
b052157fae
refactor: separate runtime context from public arguments
2022-05-30 10:19:14 +03:00
youben11
843dd0eb5b
feat(python): seriliaze client parameters
2022-05-02 10:16:39 +02:00
youben11
e9345b3859
feat: serialize public result w/ python bindings
2022-04-22 15:53:26 +01:00
youben11
d9d35c1023
refactor: use unique_ptr consistently for PublicArguments
2022-04-15 15:25:25 +01:00
Quentin Bourgerie
0d376bc559
enhance(compiler): template result of typed vector from PublicResult
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
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
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
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
Mayeul@Zama
73bb1c03d8
enhance(compiler): fix warnings
...
remove unused signature, functions, variable
remove pessimizing-moves
add cast before comparison
2022-03-15 18:14:35 +01:00
Mayeul@Zama
ca8d4fb110
feat(compiler): use engine concrete C API
...
remove ConcreteToConcreteCAPI and ConcreteUnparametrize passes
2022-03-15 18:14:35 +01:00
Mayeul@Zama
cee07d2440
fix: rename LweSecretKeyParam.size dimension
2022-03-15 18:14:35 +01:00
rudy
8b71e9d476
feat(Clientlib): separate client encryption and server computation
...
Resolve #200
2022-02-24 15:50:18 +01:00
Quentin Bourgerie
4e8a9d1077
enhance(runtime): Fix the runtime tools to handle the ciphertext bufferization and the new compiler concrete bufferized API
2022-02-17 15:53:23 +01:00
Quentin Bourgerie
c8b45cc853
style(compiler/client): fix the naming LweSize to LweDimension for key size
2022-02-17 15:53:23 +01:00
youben11
2009ee1c94
chore: changing ref to repo after its renaming
...
also formatting and update the check_license script to match that
2022-01-06 12:40:10 +01:00
Antoniu Pop
84f01f78d6
fix(runtime/DFR): create only one BSK clone per thread and deallocate.
2022-01-04 12:43:33 +01:00
rudy
b8bd38dd6c
feat(compiler): Output client parameters when compile to a library
...
close #198
2022-01-03 17:57:16 +01:00