Commit Graph

297 Commits

Author SHA1 Message Date
Umut
56085204e6 feat: add support for np.ones_like and np.zeros_like 2022-05-17 13:43:15 +03:00
youben11
4d22dec705 fix: make sure path to keyset cache is set when enabling the cache 2022-05-16 17:25:13 +01:00
Umut
c9bb05df82 feat: simplify (un)serialization of public args/result 2022-05-16 16:12:29 +03:00
Umut
d94812b234 feat: fuse subgraphs with multiple variable inputs of which has the same lca 2022-05-16 14:30:09 +03:00
Umut
90c95e380c feat: implement client server architecture 2022-05-16 10:34:12 +03:00
youben11
9bd587695f feat: add client parameters to debug artifacts 2022-05-11 08:03:40 +01:00
youben11
e90a9f1a55 chore: update black to 22.3.0 2022-05-11 08:03:40 +01:00
Umut
eebb29c10f fix: allow fusing where the input to subgraph is not fusable 2022-05-10 11:21:25 +03:00
Umut
6662b71dfe feat: support library compilation and serialization 2022-05-06 11:16:43 +03:00
Umut
ffe26aadcb refactor: move configuration and artifacts to compile and trace methods 2022-04-29 11:10:14 +03:00
Umut
cc726154b6 feat: add fork method to configuration to easily change a small setting 2022-04-29 11:10:14 +03:00
Umut
6fe148e72b refactor: rename compilation artifacts to debug artifacts 2022-04-29 11:10:14 +03:00
Umut
a5961a7008 refactor: rename compilation configuration to configuration 2022-04-29 11:10:14 +03:00
Umut
ffbcdabab0 feat: make virtual compilation unsafe 2022-04-27 12:00:40 +03:00
youben11
840a9c2c20 feat: support tracing/eval of ONNX Conv
- 1D, 2D, and 3D convolutions
- conversion to MLIR is supported only for 2D convolution
- not full support yet: still limitations on group and other params
2022-04-27 08:18:14 +01:00
Umut
85cbd38021 feat: add virtual option to compile to simulate fhe without compiling 2022-04-25 10:22:30 +03:00
youben11
824e034084 refactor: add concrete.onnx mod with previous conv2d
the module is meant to contain machine learning operations as defined by
ONNX
2022-04-13 13:10:53 +01:00
Umut
a17d0c66ca fix: update only int64 astype warning to ignore floating point types 2022-04-08 16:52:16 +03:00
Umut
ce7646f102 feat: introduce explicit encrypt/decrypt/run api 2022-04-08 12:09:44 +03:00
Umut
72c13c54be refactor: rename run method of the circuit to encrypt_run_decrypt 2022-04-08 12:09:44 +03:00
Umut
ba33d42762 feat: implement transpose 2022-04-08 12:09:44 +03:00
Umut
c45b9ffa43 feat: rewrite tests 2022-04-08 12:09:44 +03:00
Umut
3239a147e6 chore: remove the old implementation and its tests 2022-04-08 12:09:44 +03:00
youben11
2e831e4415 feat: introduce new API to encrypt/run/decrypt separetely
Also introduce new compilation options for parallel execution
bump concrete-compiler to 0.6.0 which support loop parallelization
2022-04-07 10:10:56 +03:00
Umut
431e55a235 chore: remove long running 8-bit tests 2022-03-31 23:38:55 +03:00
youben11
dd69ccc241 test: reduce negative LUT tests
tests started to take a long time
2022-03-29 19:14:41 +03:00
Umut
d19514bb97 feat: add support for 8-bit integers 2022-03-29 19:14:41 +03:00
youben11
a9d2733230 test: test transpose correctness 2022-03-29 19:14:41 +03:00
youben11
a2955d29ea feat: add support for numpy.transpose compilation 2022-03-29 19:14:41 +03:00
Umut
b71cbc8ecb feat: mimic the exact numpy behavior for matmul 2022-03-08 11:40:57 +03:00
youben11
98bec17050 feat: add convolution extension
extend the current tracing and compilation with convolution, which
should compile to the FHELinalg.conv2d operation from the compiler
2022-03-01 15:16:09 +01:00
Arthur Meyre
19c78e6dad refactor: make float fusing deterministic
- consider having a an OrderedSet class instead of using dicts for it

closes #1438
2022-02-28 12:04:35 +03:00
Umut
4bb5a54d6e fix(compilation): work around slicing limitations 2022-02-18 11:05:46 +03:00
Umut
99f52acd98 feat: add support for numpy.sum and numpy.concatenate 2022-02-17 13:24:22 +03:00
Umut
f88e0dfc89 refactor: remove ml related functionality, small bug fixes 2022-01-19 17:30:06 +03:00
Umut
4b647b108d fix(compilation): use proper variable input constructor during lookup table generation 2022-01-10 16:08:10 +03:00
Arthur Meyre
d8a64f25b8 chore: fix test for matmul correctness
- bit-width could get too high, rename input_range to be clearer on bounds
- fix bounds that seemed to want to use a set number of bits but being off
by one (e.g. 4 -> 3 as 0-3 is the range for a 2 bits integer)

closes #1352
2022-01-10 10:56:23 +01:00
jfrery
4a8c0c3d4d fix: flaky test in 3-FC 2022-01-07 09:43:38 +01:00
Arthur Meyre
e2fc523596 chore: rename package 2022-01-05 14:12:23 +01:00
IceTDrinker
a48f8cb4f1 chore(deps): bump compiler to 2022-01-04T16:08:11Z
- disable PR automerge on compiler update (too risky)
- change init file to be a namespace package
- remove version.py (infos can still be retrieved through package meta)
this avoids potential conflicts with other packages we release
- various fixes for compiler compatibility

closes #1272
2022-01-04 19:18:26 +01:00
Arthur Meyre
e522f22ce8 chore: rename package
- poetry lock required to update package name
- related Makefile and licenses update to keep consistency (will be removed
once the PyPi package is available)
- modified compile_torch_model to only accept datasets with one input
mypy error with better numpy typing hints appeared

closes #1252
2022-01-04 09:12:18 +01:00
Arthur Meyre
11c38efa1e test: add dot tests with non program inputs args
- also fix some inputsets which had wrongly shaped inputs
2021-12-24 17:49:30 +01:00
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