Commit Graph

255 Commits

Author SHA1 Message Date
Arthur Meyre
0af91911c3 fix: accept other comparison functions for the new per cell checks in tests 2021-12-24 16:07:44 +01:00
jfrery
9e938ddfff feat: add missing pieces for relu6 2021-12-24 12:30:14 +01:00
Arthur Meyre
2c8dbce3e0 chore: fix auto-merged PR 2021-12-24 09:43:41 +01:00
IceTDrinker
31ae92a5db chore: test slow compiler
- fix CI scripts for the current compiler releases
- add keycache system
2021-12-23 15:15:22 +01:00
jfrery
65be1b0818 feat: use signed weights in compile_torch_model 2021-12-23 11:24:02 +01:00
Arthur Meyre
2dc070dd4b fix: correct matmul reshapes for 1D cases
- add tests for these cases with non square 2D matrices
2021-12-21 10:39:16 +01:00
Umut
4e6c57766a refactor: improve isclose used in quantization tests 2021-12-20 12:19:06 +03:00
Arthur Meyre
31a3bdcf2e fix: allow signed matmuls
closes #957
2021-12-20 09:32:27 +01:00
Arthur Meyre
94b9d83cbb feat: support 1D vectors in MatMul
closes #948
2021-12-15 09:47:50 +01:00
Umut
c8ec2a2340 feat(mlir): implement mlir conversion of reshape and flatten 2021-12-14 12:54:24 +03:00
Arthur Meyre
987f67b64c chore: fix test for dot with signed constants
closes #1123
2021-12-08 19:17:10 +01:00
Umut
cad7d67e22 feat(mlir): implement MLIR conversion for clear @ encrypted 2021-12-08 17:49:12 +03:00
Arthur Meyre
a9a8cdb223 feat: easily print and draw NPFHECompiler underlying OPGraph
closes #1075
2021-12-06 16:17:52 +01:00
Umut
5aad8c50ac test: create check_array_equality fixture 2021-12-06 16:44:32 +03:00
Arthur Meyre
a0c26315ea chore: make check_is_good_execution a fixture and fix flaky tests using it
closes #1061
2021-12-03 17:43:11 +01:00
Umut
222635200b feat(tracing): add shape property to base tracer 2021-12-03 15:08:12 +03:00
Arthur Meyre
500d46a552 chore: disable flaky test 2021-12-03 12:10:08 +01:00
Arthur Meyre
c7255dfd66 feat: update compile_torch_model to return compiled quantized module
closes #898
2021-12-03 10:32:04 +01:00
jfrery
bf70396340 fix: increase the input data range to fix error when only one weight per layer 2021-12-03 09:24:00 +01:00
Arthur Meyre
48aaed9ee8 refactor: disallow tuple input in inputset for 1-input functions
- handle the case properly once we add tuple support in #772

closes #971
2021-12-02 11:59:42 +01:00
jfrery
54c0bc6e87 test: disable flaky tests 2021-12-01 10:48:41 +01:00
Umut
1b5785e058 feat(extensions): add and test support for negative direct table lookups 2021-12-01 12:09:10 +03:00
Arthur Meyre
8b0a793cda feat: create torch-like API part deux
- add function to get the FHECircuit

closes #233
2021-12-01 09:36:47 +01:00
Benoit Chevallier-Mames
edefde9189 feat: adding a compile_torch_model function
refs #898
2021-11-30 16:24:21 +01:00
Arthur Meyre
e111891a41 test: more signed TLUs cases
closes #1014
2021-11-30 11:45:15 +01:00
jfrery
1625475897 feat: end-to-end compilation of a torch model 2021-11-30 11:30:13 +01:00
Arthur Meyre
13b9ff96f0 feat: create torch-like APIs part 1
- work on generating OPGraph with a torch-like API

refs #233
2021-11-30 11:06:46 +01:00
Umut
ac74e94e13 feat(mlir): implement mlir conversion of constant indexing 2021-11-30 12:40:34 +03:00
Umut
926597c3f6 feat(debugging): implement printing subgraphs within the graph during printing 2021-11-30 12:40:23 +03:00
jfrery
dfc762c2e2 feat: add QuantizedReLU6 as a supported activation function 2021-11-26 16:55:52 +01:00
Arthur Meyre
f53d374d1f feat: support TLUs with signed input
- this is done with an absolute ugly hack

closes #923
refs #1001
2021-11-25 12:01:40 +01:00
Benoit Chevallier-Mames
39b168dfd5 fix: fix issues for certain form of functions
Table which was created contained too large values, for cells which were never accessed
closes #949
2021-11-24 17:14:59 +01:00
Benoit Chevallier-Mames
33064efc06 chore: fix flaky tests
closes #997
2021-11-24 09:48:02 +01:00
Benoit Chevallier-Mames
ec396effb2 chore: seed torch as much as possible
closes #877
2021-11-24 09:47:37 +01:00
Arthur Meyre
60d8079303 feat: add clip support
closes #965
closes #983
closes #984
2021-11-23 17:08:24 +01:00
Arthur Meyre
f1ed07d580 refactor(tracing): add generic tracing functions for generic functions
- remove nearly duplicated code when tracing GenericFunction for unary and
binary operators

refs #965
2021-11-23 13:55:37 +01:00
Arthur Meyre
ba6207e71e refactor: remove workaround for scalar and tensors operations in tests
- add Float16 for ldexp which sometimes returns float16 in numpy

closes #908
2021-11-23 12:25:53 +01:00
Benoit Chevallier-Mames
446dfaf834 chore: let us use dtype=np.uint8 if we want
closes #986
2021-11-23 09:20:05 +01:00
Umut
7e65af3906 fix(representation): set correct output type for dot product 2021-11-23 10:22:17 +03:00
Umut
1d77816aa3 refactor(mlir): implement support for operations between tensors and scalars using string processing hacks 2021-11-23 10:22:17 +03:00
Arthur Meyre
a77c369daf feat: accept non tuple inputs ininputset for 1-parameter functions
closes #952
2021-11-22 13:38:17 +01:00
Benoit Chevallier-Mames
0fd8da8789 chore: fix a test
refs #885
2021-11-19 15:08:50 +01:00
Benoit Chevallier-Mames
247327b277 chore: fix #951 by making sure the dot product is never too large.
closes #951
2021-11-19 10:17:27 +01:00
Arthur Meyre
8a27525a64 refactor: separate some compilation steps to prepare torch-like API work
refs #233
2021-11-19 10:06:07 +01:00
jfrery
aa60d8ace6 fix: test_quantized_layer 2021-11-18 19:23:27 +01:00
Benoit Chevallier-Mames
2fdf22bf4e test(execution): add correctness tests of ndarray operators
closes #931
2021-11-18 18:16:33 +01:00
jfrery
a5b1d6232e feat: add signed intergers quantization 2021-11-18 17:21:28 +01:00
Benoit Chevallier-Mames
4c6e1661ec feat(tracing): add support for more arithmetic operators, when one input is a constant
refs #218
refs #751
2021-11-18 13:46:14 +01:00
Arthur Meyre
507ccd05c5 feat: static post training quantization and quantization module 2021-11-18 10:31:45 +01:00
Benoit Chevallier-Mames
bfa309a455 test: add tests with dot and negative tensors
refs #891
2021-11-18 09:55:22 +01:00