Quentin Bourgerie
af79774ae0
fix(compiler/tests/bench): Add optimizer strategy to the name of benchs and tests
2023-04-20 09:46:24 +02:00
Pedro Alves
681e3081e3
docs(backend-gpu): improve concrete-cuda docs regarding tests and benchmarks.
2023-04-18 08:47:44 -03:00
aPere3
50255cc908
fix(compiler): propagates oid when simplifying fhelinalg zero sums
2023-04-18 13:36:15 +02:00
aPere3
85c29c2e39
chore(compiler): move end-to-end linalg tests to fixtures
2023-04-18 13:36:15 +02:00
Mayeul@Zama
315c1a08e1
fix(backend-cpu): fix Security framework linking in tests
2023-04-18 09:54:42 +02:00
Mayeul@Zama
348fe028cf
feat(backend-cpu): use Apple secure enclave seeder on M1
2023-04-17 18:13:18 +02:00
Umut
fa0e246613
feat(frontend-python): support using booleans with LookupTable
2023-04-17 14:11:41 +02:00
Umut
93991dd082
docs(frontend-python): fix formatting of the warning on univariate documentation
2023-04-17 13:41:59 +02:00
Umut
d1aeae0e56
docs(frontend-python): improve the documentation of univariate extension
2023-04-17 12:59:41 +02:00
Pedro Alves
fa226e232f
feat(backend-gpu): refactor the Wop-PBS implementation to support a wider set of parameters
2023-04-17 09:45:17 +02:00
Quentin Bourgerie
065e4d7b40
test(compiler): Temporary remove batching check-test as it to invasive
2023-04-14 15:01:18 +02:00
aPere3
141efc8db2
bench(compiler): Add e2e benchmark for rounded PBS
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
0e59f66a64
fix(compiler): FHE.to_bool and FHE.from_bool is a no op and not reduce the noise to the base
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
edbdcdd7ec
fix(compiler/test): Fixing naming in end_to_end tests
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
3ada182c22
test(compiler): Enable dag-multi tests on all yaml tests
2023-04-14 15:01:18 +02:00
rudy
311ac8ce99
feat(compiler,ci): parallel tests
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
944f9f6fc2
fix(compiler/benchmark): Remove always optimizer display
2023-04-14 15:01:18 +02:00
rudy
9c3c72a176
fix(optimizer): multi, more than 2 partitions, optimize_macro use optimized fks instead of lower bound
2023-04-14 15:01:18 +02:00
rudy
dd34ef120b
fix(optimizer): multi, more than 2 partitions, some fks was not copied back
2023-04-14 15:01:18 +02:00
aPere3
0ba154fca8
test(compiler): add multi precision tests
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
955dea6fcd
feat(compiler/tests): Add verbose options to end_to_end_test
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
d388f08cc5
test(compiler): Fix check test
2023-04-14 15:01:18 +02:00
rudy
008eec658b
fix(optimizer,tests): sign extract is slower with slow ks
2023-04-14 15:01:18 +02:00
rudy
06b724ab50
feat(compiler/tests): rounded tests, add rounded tlu + tensorized
2023-04-14 15:01:18 +02:00
rudy
81fd9f3441
feat(optimizer): multi-parameters, use slow keyswitch until stabilized
2023-04-14 15:01:18 +02:00
rudy
9c68d132ca
feat(optimizer): multi-parameter entry point, single parameter solution for woppbs
2023-04-14 15:01:18 +02:00
rudy
d2a342fc84
feat(optimizer): multiparameters compiler entry point
2023-04-14 15:01:18 +02:00
rudy
3e05aa47a4
feat(optimizer): multiparameters optimization
2023-04-14 15:01:18 +02:00
rudy
361244abd0
feat(optimizer): symbolic variance constraints for multiparameters
2023-04-14 15:01:18 +02:00
rudy
104ec93881
feat(optimizer): symbolic variance for multi-parameter
2023-04-14 15:01:18 +02:00
rudy
38646b7559
feat(optimizer): dag partitionning based on p_cut
2023-04-14 15:01:18 +02:00
rudy
c6b5a6111b
feat(optimizer): display trait for op and dag
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
caaec449f5
fix(optimizer): Conversion between dag and circuit solution
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
142e0ed77e
feat(compiler): Integrate circuit solution optimization
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
953c202fe1
refactor(compiler): Propagate optimizer dag node identifier along the compilation pipeline
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
7d1c43bc47
feat(compiler/multi-parameters): Create a pass to apply the multi-parameter circuit solution of the optimize
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
f0ca5aa427
feat(optimizer): Add a dump function to the CircuitSolution for debugging
2023-04-14 15:01:18 +02:00
Quentin Bourgerie
53b68a215b
refactor(optimizer-cpp): Move CircuitSolution to a namespace en remove unecessary Box in optmize_multi
2023-04-14 15:01:18 +02:00
aPere3
cacffadbd2
feat(compiler): add support for multikey
...
This commit brings support for multiple secret keys in the TFHE
dialect. In particular, a parameterized `TFHE` circuit can now be
given as input, with any combination of (semantically valid) of
ks/bs/woppbs mixing different secret keys, and compiled down to a
valid executable function, with server keys properly looked up.
Secret keys are now stateful objects which can be:
-> none/unparameterized (syntax `sk?`): The keys are in state after
the lowering from the `FHE` dialect.
-> parameterized (syntax `sk<identifier, polysize, dimension>`): The
keys were parameterized, either by user or by the optimizer. The
`identifier` field can be used to disambiguate two keys with same
`polysize` and `dimension`.
-> normalized (syntax `sk[index]<polysize, dimension>`): The keys were
attached to their index in the list of keys in the runtime context.
The _normalization_ of key indices also acts on the ksk, bsk and pksk,
which are given indices in the same spirit now.
Finally, in order to allow parameterized `TFHE` circuit to be given
as input and compiled down to executable functions, we added a way to
pass the encodings that are used to encode/decode the circuit
inputs/outputs. In the case of a compilation from the `FHE` dialect,
those informations are automatically extracted from the higher level
informations available in this dialect.
2023-04-14 15:01:18 +02:00
aquint-zama
823ea618af
chore(common): fix README code snippet
2023-04-14 10:44:10 +02:00
aquint-zama
0372cf91e7
chore(common): add deprecation warning in README
2023-04-14 09:28:11 +02:00
aquint-zama
8c4912275c
chore(frontend/python): update kvdb tutorial
2023-04-14 09:28:11 +02:00
aquint-zama
c7689b6c78
chore(common): fix remaining numpy links
2023-04-14 09:28:11 +02:00
Mayeul@Zama
56d2d3e40d
chore(tools): add Makefile generated tests to .gitignore
2023-04-13 11:10:48 +02:00
Mayeul@Zama
84a3dd7a8d
chore(backend-cpu): use zig build
2023-04-13 11:09:54 +02:00
Mayeul@Zama
53fa78cfbd
chore(backend-cpu): simplify import in zig tests
2023-04-13 11:09:54 +02:00
rudy
25d5157f42
docs(optimizer): README.md, bad link
2023-04-13 09:49:00 +02:00
Umut
dbe9217937
chore(frontend-python): use top level readme in PyPI
2023-04-12 14:16:48 +02:00
youben11
882f411a63
chore(ci/compiler): move macos_x86 tests to aws
2023-04-12 11:44:15 +01:00
Ben
cb19989fe1
chore(tools): remove old files
v1.0.0
2023-04-12 12:03:01 +02:00