Commit Graph

65 Commits

Author SHA1 Message Date
Mayeul@Zama
50a2f1602a chore: remove ComplexityModelClone 2022-10-19 16:59:07 +02:00
rudy
e7f888ca70 chore(cuts): remove lasts pre-cuts + simplify cuts for atomic_pattern 2022-10-19 16:19:05 +02:00
rudy
a4a1f4b112 feat(wop-pbs): use cache for circuit boostrap and private packing switch 2022-10-19 14:47:13 +02:00
Mayeul@Zama
c5dad8ffdb feat(optimizer): add gpu parameter constraints 2022-10-18 18:53:53 +02:00
rudy
1f15162b39 feat: dot weights are signed 2022-10-05 19:54:07 +02:00
Mayeul@Zama
8ec0d4f3bd feat(optimizer): improve repeat_p_error speed 2022-10-04 10:29:00 +02:00
Mayeul@Zama
48962811b9 chore(optimizer): make cache not static 2022-10-03 16:36:14 +02:00
rudy
5a2ddccc6f fix: flapping test due to cache 2022-10-03 11:49:41 +02:00
rudy
af3ee10ff8 fix: persistent cache, missing rewind between read and write 2022-09-28 10:13:17 +02:00
Mayeul@Zama
3c1c0ca951 feat(optimizer): improve p_error precision
internally use p_error instead of p_success
2022-09-22 15:15:33 +02:00
rudy
06c8bdfce0 fix: disable cache write on macos 2022-09-21 09:45:00 +02:00
Mayeul@Zama
860c96ef46 refactor(optimizer): remove restart_at
fix new clippy lints
2022-09-19 15:10:52 +02:00
rudy
48e43c5762 chore: clarify no luts optimization and cuts 2022-09-19 15:10:52 +02:00
rudy
e2fa88aec2 feat: adding a persistent cache for decompositions per macro parameters 2022-09-16 12:29:18 +02:00
rudy
c1e9f97fee chore(deps): use concrete-npe repo 2022-09-16 10:13:47 +02:00
Mayeul@Zama
8f61988f18 feat(optimizer): distinguish CRT precisions 2022-09-13 11:58:38 +02:00
Mayeul@Zama
8c064ff72f fix(wop-pbs): fix complexity formula 2022-09-13 11:58:38 +02:00
rudy
320e3c1963 fix: dag with 1 tlu layer were sub-optimized assuming multi-layer in cuts 2022-08-31 16:25:39 +02:00
Mayeul@Zama
915cbe6647 style: remove useless #[allow(lint)] 2022-08-31 14:29:08 +02:00
rudy
ef1264a2fd fix(v0-parameters): the restart_at was not checked correctly 2022-08-31 14:18:06 +02:00
Mayeul@Zama
d310561136 feat(complexity): add Gpu complexity
refactor: computing_cost module
style: regroup search space parameters
style: use config struct to regroup parameters
2022-08-30 12:48:56 +02:00
rudy
bf6bdcfec2 fix: bug converting manp to variance factor 2022-08-22 11:29:25 +02:00
rudy-6-4
fc6120ed74 fix: accept higher than 16bits and move to classical when no tlu (#135)
this make levelled only circuit working without crt.

Co-authored-by: Quentin Bourgerie <bourgerie.quentin@gmail.com>
2022-08-19 13:59:08 +02:00
Quentin Bourgerie
efc3a85c66 fix: Return the crt_decomposition from the optimizer 2022-08-16 15:26:18 +02:00
rudy
af8296e6d2 feat(dag): avoid a copy on comment when possible 2022-08-16 14:58:40 +02:00
rudy
b7c148257b feat(dag): compute global p-error after the local one is optimized
Resolves zama-ai/products#302
2022-08-12 15:00:19 +02:00
rudy
517ab218dc feat(dag): support dot broadcast
this is to facilitate a test with many multiplication
2022-08-12 15:00:19 +02:00
Quentin Bourgerie
4fffc26bbc fix: Don't let the optimizer to be to optimistic, up to 16 bits we didn't have yet a solution (#131) 2022-08-12 10:32:18 +02:00
rudy
ba15b8d8aa feat: woppbs compiler entry point 2022-07-19 18:10:34 +02:00
rudy
75b2f76d78 fix(woppbs): fix fatal noise estimate 2022-07-11 15:40:14 +02:00
rudy
170ce8d725 fix(dag): tensorized lut are now counted as several lut 2022-07-04 18:11:15 +02:00
Mayeul@Zama
1707549139 fix: complexity to convert ggsw to fft in wop pbs 2022-07-04 11:29:10 +02:00
Samuel Tap
8237138c78 feat(securityLevel): supporting 80, 96, 112, 128, 144, 160, 176, 192, 256 2022-06-28 10:25:13 +02:00
Samuel Tap
ca578a9c12 feat(securityLevel): security weights in hmap 2022-06-28 10:25:13 +02:00
Mayeul@Zama
b446d3124d feat(pareto): add benchmark for pareto computation 2022-06-27 15:38:30 +02:00
rudy
b4821b4b8c feat(woppbs): use pareto_blind_rotate/pareto_keyswitch routines, 4x speedup 2022-06-27 12:09:04 +02:00
rudy
8775cc0be3 fix(woppbs): handle complexity tie for lower error rate and better reproducibility 2022-06-22 17:21:05 +02:00
Samuel Tap
0ab7ace9ac feat: fft noise for glwe in [1, 6] 2022-06-22 11:39:47 +02:00
rudy
cffe5e4ab0 feat(cpp): expose dag optimization 2022-06-21 17:19:36 +02:00
rudy
d220eb4009 feat: multiprecision, allow precision change in lut 2022-06-20 18:09:12 +02:00
rudy
b3e3a10f22 feat: precision specific noise summary 2022-06-20 13:56:15 +02:00
rudy
d6a6ee6290 chore(woppbs): cut optimize_one in two macro/micro
this is a first step to use pareto_blind_rotate, pareto_keyswitch
2022-06-17 00:20:44 +02:00
Mayeul@Zama
0b621adfb1 fix(clippy): fix nightly clippy warnings 2022-06-16 13:30:23 +02:00
Mayeul@Zama
585c17a163 store precomputation in the macro-parameters loops as vecs 2022-06-16 11:26:05 +02:00
rudy
5d5f7a4016 feat(woppbs): make code more readable, reexpress some cuts (x4 speed) 2022-06-16 10:18:34 +02:00
rudy
b44bd6cbfe feat: x8 faster wop, better cache usage 2022-06-16 10:09:25 +02:00
rudy
b628cd64fb feat: initial experimental wop-pbs 2022-06-16 09:44:29 +02:00
rudy
8f2c21ddbe feat: dag + solo key optimization 2022-06-09 16:00:26 +02:00
Mayeul@Zama
bc52e3cd21 fix(naming): rename optimise optimize 2022-05-24 18:58:44 +02:00
Mayeul@Zama
2d88eda5eb chore(cpp): remove c interface 2022-05-23 15:38:27 +02:00