Commit Graph

429 Commits

Author SHA1 Message Date
Umut
465b4b95bb chore: remove seeder selection messages 2022-09-14 12:37:42 +02:00
Quentin Bourgerie
dbfde466bc feat(python): Add compilation feedback to the python bindings 2022-09-14 10:03:25 +02:00
Quentin Bourgerie
f4673e8276 feat(compiler): First draft or compilation feedback 2022-09-14 10:03:25 +02:00
rudy
48bf6e2696 feat(optimizer): report or warn using global p-error 2022-09-12 17:22:38 +02:00
Umut
41c9f86803 feat: create encrypted signed integer type 2022-09-09 17:38:21 +03:00
rudy
e5d9cb1af3 fix: display the reason when the linker can't be called and fix the root cause 2022-09-08 12:09:06 +02:00
rudy
deef4486ba fix: negative value have full complement 2 noise
Revert ae9a04cd56
2022-09-06 15:27:20 +02:00
youben11
661d33c2b6 feat: keep std bsk and conv to fourier when needed 2022-09-06 07:18:34 +01:00
youben11
942b41d07c fix: destroy glwe secret key after use 2022-09-06 07:18:34 +01:00
Quentin Bourgerie
30df69366d enhance(python-bindings): Expose the option to set or not the v0 strategy of the optimizer. 2022-09-01 10:37:00 +02:00
Mayeul@Zama
eb4b0753dc enhance(runtime): Move to the official concrete-core-ffi release 0.2.0-rc2
Co-authored-by: Mayeul@Zama <mayeul.debellabre@zama.ai>
Co-authored-by: Quentin Bourgerie <bourgerie.quentin@gmail.com>
2022-08-30 18:08:47 +02:00
Ayoub Benaissa
393d1617eb fix: add linking options for MacOS
Starting from Mac 11 (Big Sur), it appears we need to add -L
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib -lSystem for the
sharedlib to link properly.i
2022-08-26 10:45:15 +01:00
Quentin Bourgerie
d9c9ecbf0b fix(manp): Use the active bits to square a the constant in the 2-norm computation to allow more program to be analyzed 2022-08-25 09:46:51 +02:00
Quentin Bourgerie
f69c8dfaba fix: Fix decoding of encrypted integer above 30 bits 2022-08-25 09:46:51 +02:00
Quentin Bourgerie
4bd8665655 fix(security): Update security curves 2022-08-24 20:46:31 +02:00
Quentin Bourgerie
c08a06ed8e chore: Just rename configuration variable to enable the dataflow runtime 2022-08-24 11:35:05 +02:00
Quentin Bourgerie
9257404f5f fix(python-bindings): Support np.array with dtype upt to 64 bits 2022-08-19 14:15:21 +02:00
Quentin Bourgerie
d647bc735f fix: Now the maximum precision is 16bits 2022-08-16 08:40:14 +02:00
Quentin Bourgerie
5492ed01eb feat: plug the compiler pipeline with the optimizer for 16 bits eint 2022-08-16 08:40:14 +02:00
rudy
f3933aeddc feat(optimizer): connect to new entry point supporting woppbs 2022-08-16 08:40:14 +02:00
Antoniu Pop
93802d128b fix(dfr-compiler): clone memref task arguments using identity maps for serialization. 2022-08-12 16:35:11 +02:00
Quentin Bourgerie
8cd3a3a599 feat(compiler): First draft to support FHE.eint up to 16bits
For now what it works are only levelled ops with user parameters. (take a look to the tests)

Done:
- Add parameters to the fhe parameters to support CRT-based large integers
- Add command line options and tests options to allows the user to give those new parameters
- Update the dialects and pipeline to handle new fhe parameters for CRT-based large integers
- Update the client parameters and the client library to handle the CRT-based large integers

Todo:
- Plug the optimizer to compute the CRT-based large interger parameters
- Plug the pbs for the CRT-based large integer
2022-08-12 16:35:11 +02:00
rudy
cc6c2576ec feat(optimizer): create optimizer dag and use it 2022-08-11 10:10:27 +02:00
rudy
bd3d462384 feat(multiprecision): enable real multiple precision computation 2022-08-11 10:10:27 +02:00
Quentin Bourgerie
534e683055 fix: Lowering from ConcreteToBConcrete of from_elements on ND tensor of Concrete.lwe_ciphertext 2022-08-09 10:26:32 +02:00
Antoniu Pop
a2ff61d1d7 cleanup(compiler): remove no longer needed function getAliasedUses. 2022-08-04 17:06:09 +01:00
Antoniu Pop
f9ce4d046b fix(testing-dfr): fix startup and ternimation call parameters to allow sequential test execution on root node when the runtime is instantiated for distributed execution. 2022-08-04 17:06:09 +01:00
Antoniu Pop
f541af8a8f fix(compiler): use ViewLikeOpInterface instead of checking specific op types. 2022-08-04 17:06:09 +01:00
Antoniu Pop
f051642f1f cleanup(compiler): rename getSizeInBytes function to match updated functionality. 2022-08-04 17:06:09 +01:00
Antoniu Pop
46b1dbcd34 cleanup(compiler): fix unused variable warning. 2022-08-04 17:06:09 +01:00
Antoniu Pop
20d19c2161 cleanup(dfr): remove unused key ids and unranked memref labels. 2022-08-04 17:06:09 +01:00
Antoniu Pop
da9dbcef1d feat(compiler): coarsen task granularity by aggregating lightweight operations. 2022-08-04 17:06:09 +01:00
Antoniu Pop
ba60d74da0 feat(dfr): add timing measurements. 2022-08-04 17:06:09 +01:00
Antoniu Pop
1bb3d04059 fix(dfr): broadcast evaluation keys early to avoid locking in HPX helper threads. 2022-08-04 17:06:09 +01:00
Antoniu Pop
fbca52f4a0 feat(dfr): add memory management for futures and associated data. 2022-08-04 17:06:09 +01:00
Antoniu Pop
b405a2daf2 fix(dfr): fix thread binding when running both HPX and OpenMP runtimes. 2022-08-04 17:06:09 +01:00
Antoniu Pop
eeb3ba8735 fix(compiler): add calls to enable either or both parts of the runtime based on compile options used. 2022-08-04 17:06:09 +01:00
Antoniu Pop
51d3959742 fix(dfr): remove runtime resume/suspend on entry/exit of function as currently unstable. 2022-08-04 17:06:09 +01:00
Antoniu Pop
49111dd295 fix(dfr): simplify runtime parametrization and fix implicit thread allocation policy. 2022-08-04 17:06:09 +01:00
Antoniu Pop
ae55e88435 feat(dfr): add default configuration file for HPX runtime. 2022-08-04 17:06:09 +01:00
Antoniu Pop
7410502e60 fix(dfr): simplify synchronization in work function registry. 2022-08-04 17:06:09 +01:00
Antoniu Pop
e36c7d3b55 feat(dfr): add environment variable option for using HPX configuration file path at initialization. 2022-08-04 17:06:09 +01:00
Antoniu Pop
615109d432 fix(dfr): simplify initialization and add namespaces where possible. 2022-08-04 17:06:09 +01:00
Antoniu Pop
460fbabbe0 feat(runtime): deactivate main wrapping by default and add explicit initialization/termination. 2022-08-04 17:06:09 +01:00
Antoniu Pop
bca85ea2b6 feat(compiler): delay the point where futures are waited on, when they are being synchronized back to their parent context, to the point of use. 2022-08-04 17:06:09 +01:00
Antoniu Pop
954b2098c6 feat(runtime): enable distributed execution. 2022-08-04 17:06:09 +01:00
Antoniu Pop
2cc8c69ff3 fix(compiler): make the insertForwardDeclaration utility function accept any OpBuilder for more generality. 2022-08-04 17:06:09 +01:00
Antoniu Pop
1df468a084 feat(runtime): increase the limit of task input parameters to 16. 2022-08-04 17:06:09 +01:00
youben11
ce9393070c fix: avoid tensor slices in conv operation
when lowering the linalg conv operation into scf, then bufferized, there
is a cast operation on an allocated buffer to the type of a
memref with different strides (casued by the slice). This incompatible
cast makes the lowering fails.
2022-08-04 11:19:18 +01:00
youben11
e52ccfc1a9 feat: support grouped conv2d 2022-08-04 11:19:18 +01:00