Umut
51f5ed9484
feat(frontend-python): improve indexing error messages
2023-09-20 13:53:33 +02:00
Umut
73f01468e7
feat(frontend-python): support dynamic table lookups
2023-09-20 13:53:33 +02:00
Umut
4827e9e62c
chore(frontend-python): remove optimization goal from z3 as it's extremely slow for big graphs
2023-09-20 09:12:27 +02:00
Umut
2327c15511
chore(frontend-pyton): remove single precision tests from linux ci
2023-09-19 15:28:08 +02:00
Umut
ca7d9f7567
chore(frontend-python): increase retries of execution of complex operations
2023-09-19 15:28:08 +02:00
Umut
fcf3de296c
chore(frontend-python): reduce global p error for tests
2023-09-19 15:28:08 +02:00
Umut
e0979140b7
chore(frontend-python): don't use key cache for randomly generated tests
2023-09-19 15:28:08 +02:00
Umut
df19543454
chore(frontend-python): remove key cache after tests in ci
2023-09-19 15:28:08 +02:00
Umut
8b689a5894
feat(frontend-python): make bitwise operations multi precision
2023-09-19 15:28:08 +02:00
Umut
ff8bd3860e
fix(frontend-python): only use comparison strategies for encrypted-encrypted comparisons
2023-09-19 15:28:08 +02:00
rudy
90e62f551b
feat(optimizer): multi-params, key sharing
2023-09-19 12:13:25 +02:00
Umut
5d3e4bb2d6
chore(compiler): decrease p_error for a flanky test
2023-09-18 12:42:50 +02:00
Alexandre Péré
d28bf3767b
feat(compiler): adds support for dynamic luts in fhelinalg
2023-09-18 12:42:50 +02:00
Umut
9af73a5fbe
docs(frontend-python): update outdated warning in simulation docs
2023-09-18 10:45:07 +02:00
youben11
d16ce818e1
docs(compiler): build latest docs
v2.3.0
2023-09-12 14:51:53 +01:00
Nikita Frolov
73a992f0a6
refactor(compiler): generalize noise calculation in FHE/FHELinalg
...
Instead of having one `getSQManp` implementation per op with a lot of repetition, the noise
calculation is now modular.
- Ops that implements`UnaryEint`/`BinaryInt`/`BinaryEint` interfaces share the operand noise
presence check.
- For many scalar ops no further calculation is needed. If it's not the case, an op can override
`sqMANP`.
- Integer operand types lookups are abstracted into `BinaryInt::operandIntType()`
- Finding largest operand value for a type is abstracted into `BinaryInt::operandMaxConstant`
- Noise calculation for matmul ops is simplified and it's now general enough to work for
`matmul_eint_int`, `matmul_int_eint` and `dot_eint_int` at once.
2023-09-12 14:51:53 +01:00
Bourgerie Quentin
d71201ff8c
fix(compiler): Use FHE.zero_tensor instead of bufferization.alloc_tensor as alloc_tensor explictly has a alloc semantic, so it cannot be eliminated by dce
2023-09-11 15:08:49 +02:00
rudy
f4099936e2
fix(compiler): ci, format_cpp.sh, bug + better message
2023-09-11 14:19:08 +02:00
aPere3
1e726a50ed
feat(compiler): add support for dynamic luts in compiler.
2023-09-11 10:29:59 +02:00
Alexandre Péré
083ab1103f
chore(compiler): moves EncryptMulToDoubleTLU includes
2023-09-11 10:29:59 +02:00
aPere3
b58821b1d1
chore(compiler): refactor e2e tlu tests to use dynamic lut.
2023-09-11 10:29:59 +02:00
rudy
229bbc2327
fix(compiler): do not optimize llvm twice
2023-09-08 15:26:24 +02:00
rudy
74c4a7eae5
fix(compiler): check minimal lwe size
2023-09-08 14:26:32 +02:00
rudy
dc0a3d8a2e
feat(optimizer): levelled circuit, no power of two constraint
2023-09-08 14:26:32 +02:00
rudy
be77fb26b8
feat(compiler): bench, cifar-16
2023-09-08 10:03:42 +02:00
rudy
4907577b1c
feat(compiler): bench, llm, big mat mul
2023-09-08 10:03:42 +02:00
rudy
a28a7bf397
feat(compiler): bench, activate levelled ops
2023-09-08 10:03:42 +02:00
Umut
f358a79018
docs(frontend-python): fix issues in comparisons tutorial
2023-09-07 10:17:59 +02:00
rudy
4244ae3b41
fix(compiler): explicit global_p_error disable high error warning
2023-09-07 09:20:37 +02:00
Umut
87d92ff08e
fix(frontend-python): use correct path for mlir locations
2023-09-06 11:51:03 +02:00
Umut
fe6d15da34
fix(frontend-python): convert specified insecure key cache to str only if it's a path
2023-09-06 11:51:03 +02:00
Umut
26c3619b2e
chore(frontend-python): add pytest-randomly to make random tests reproducible
2023-09-06 11:51:03 +02:00
Umut
c9611c0289
feat(frontend-python): make comparisons multi precision
2023-09-06 11:51:03 +02:00
Umut
afed78a46e
fix(frontend-python): force kwargs for configuration options
2023-09-06 11:51:03 +02:00
Umut
1841836a39
fix(frontend-python): parse parameter selection strategy if it's string in the constructor
2023-09-06 11:51:03 +02:00
Umut
7be4dcecb9
refactor(frontend-python): move maximum tlu bit width constant to configuration
2023-09-06 11:51:03 +02:00
Umut
781f003292
chore(frontend-python): add missing trailing comma to trace method of tracer
2023-09-06 11:51:03 +02:00
Umut
b404b5c97c
fix(frontend-python): add missing class properties to "assign bit widths" graph processor
2023-09-06 11:51:03 +02:00
Umut
cfb6dfb6ab
fix(frontend-python): add missing type hints to "assign bit widths" graph processor constructor
2023-09-06 11:51:03 +02:00
youben11
41e1fdf1f8
refactor(frontend): change location format
2023-09-04 09:22:28 +01:00
youben11
530bacb2e3
refactor(compiler): clean statistic passes
2023-09-04 09:22:28 +01:00
youben11
4e8b9a199c
feat(compiler): allow forcing encoding from python
2023-09-01 10:29:08 +01:00
youben11
cba3847c92
feat(compiler): setting v0 parameters from py bindings
2023-09-01 10:29:08 +01:00
youben11
9e8c44ed00
feat(compiler/python): expose memory usage in bindings
2023-08-29 15:47:25 +01:00
youben11
54089186ae
refactor(compiler): reorganize passes and add memory usage pass
2023-08-29 15:47:25 +01:00
youben11
d88b2c87ac
feat(compiler): compute memory usage per location
2023-08-29 15:47:25 +01:00
rudy
7782f4e967
fix(optimizer): woppbs, cost model, cmux tree size x2
2023-08-28 14:47:54 +02:00
Ayoub Benaissa
c4686c3631
fix(compiler): lower fhe.zero to either scalar or tensor variant based on encoding
...
When using crt encoding, some fhe.zero op results will be converted to tensors (crt encoded eint), so should be converted to tfhe.zero_tensor operations instead of tfhe.zero
2023-08-11 18:23:29 +01:00
Beka Barbakadze
471ebc080b
feat(backend-gpu): implement integer multiplication, including test and benchmark
2023-08-11 12:54:18 -03:00
Umut
6277af57e6
fix(frontend-python): fix flanky dot conversion tests
2023-08-11 11:22:54 +02:00