Commit Graph

256 Commits

Author SHA1 Message Date
youben11
65e2e2f600 fix: correct reassociation in expand and collapse ops 2022-03-02 09:55:54 +01:00
Umut
d06e0c0a59 feat: enhance matmul operation to support 1-D and N-D inputs 2022-03-01 18:06:40 +03:00
Antoniu Pop
f3fca58efc fix(runtime): add missing assert on context BSK. 2022-02-28 21:00:48 +00:00
Antoniu Pop
05059e8165 fix(ClientLib): correct the RuntimeContext in the argument list. 2022-02-28 21:00:48 +00:00
Antoniu Pop
8ee456315e fix(compiler): fix code generated for library header. 2022-02-28 21:00:48 +00:00
Antoniu Pop
ebb719cf60 fix(compiler): generate PIC code by default to allow generating shared libraries. 2022-02-28 21:00:48 +00:00
rudy
8b71e9d476 feat(Clientlib): separate client encryption and server computation
Resolve #200
2022-02-24 15:50:18 +01:00
youben11
e82360a9fe feat: support lowering of convolution end to end 2022-02-24 09:44:26 +01:00
youben11
86379096df feat: lower FHELinalg.conv2d to linalg
This is currently lowering to our custom linalg conv operation, since
linalg ops doesn't support custom types. But as linalg will support
custom types in the future, we may want to lower to the native linalg op
instead
2022-02-24 09:44:26 +01:00
youben11
6d2f853c07 feat: support Conv2d in MANP 2022-02-24 09:44:26 +01:00
youben11
3668b2d73a feat: add a Conv2d operation in FHELinalg 2022-02-24 09:44:26 +01:00
youben11
78596f899f feat: add generated linalg conv operation
This has been generated using linalg tools, then put in their
appropriate locations. This is intended as a workaround since linalg
doesn't support tensors of custom types yet. Any conversion using this
added operation should be able to use the default operation from linalg
when it starts supporting tensor of custom types.
2022-02-24 09:44:26 +01:00
Quentin Bourgerie
61fefde35a fix(compiler): Compilation gcc7 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
a068a728d3 chore(compiler): Fix missing dependencies in the build system 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
9627864d23 enhance(testlib): Fix the runtime testlib tools to handle the ciphertext bufferization and the new compiler concrete bufferized API 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
4e8a9d1077 enhance(runtime): Fix the runtime tools to handle the ciphertext bufferization and the new compiler concrete bufferized API 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
8a9cce64e3 enhance(compiler): Add custom finalize bufferize pass to handle memref.tensor_load op 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
626493dda7 enhance(compiler): Lower from Concrete to BConcrete and BConcrete to C API call 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
b3368027d0 refactor(compiler): Move FHELinalg.zero to FHE.zero_tensor and add zero and sero_tensor in TFHE and Concrete dialects 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
3330b2f855 fix(compiler): Take care of program with no input when creating client parameters 2022-02-17 15:53:23 +01:00
Quentin Bourgerie
1f3944047f feature(compiler): Introduce the BConcrete Dialect 2022-02-17 15:53:23 +01:00
Umut
20a89b7b42 feat: implement concat operation 2022-02-15 16:52:07 +03:00
Umut
a1818a3fd9 feat: implement advanced sum operation 2022-02-08 17:49:58 +03:00
Antoniu Pop
dddad849c7 enhance(compiler): add --parallelize-loops and --parallelize-dataflow compile flags in addition to --parallelize which enables both. 2022-02-03 10:59:12 +00:00
Antoniu Pop
35e6966f95 enhance(dfr/runtime): throttle the number of HPX worker threads when using OpenMP for loop parallelism within tasks. 2022-02-03 10:59:12 +00:00
Antoniu Pop
ec633d57f6 fix(compiler): predicate OpenMP loop parallelization of Linalg on the --parallelize flag. 2022-02-03 10:59:12 +00:00
Quentin Bourgerie
f52965e22f enhance(compiler): Lower linalg to parallel loops and instantiare parallel loops with openmp 2022-02-03 10:59:12 +00:00
Antoniu Pop
260768e9af enhance(dfr): use linker wrapping of main in addition to start/stop; enable DFR+OpenMP. 2022-02-03 10:59:12 +00:00
Umut
4203e86998 feat: implement basic sum operation 2022-02-01 12:18:56 +03:00
youben11
71cccc6a89 fix(mac): add options for required libraries 2022-01-24 17:02:25 +00:00
youben11
faa0abea3e fix: use appropriate cmd for dynamic lib generation
macos and linux require a different cmd
2022-01-24 17:02:25 +00:00
youben11
2926ea6a5e fix: use appropriate type for optimizingTransformer func
the call does return an `std::function` and was being referenced using
an `llvm::function_ref`, which apparently with some optim on Mac was
referncing bad memory location
2022-01-24 17:02:25 +00:00
Umut
8198a79deb feat: introduce maximum bit width constant, use it where appropriate, export it in python bindings 2022-01-24 17:26:37 +03:00
Andi Drebes
39b80bd5b2 fix(compiler): Remove unused variables in TFHEGlobalParametrization.cpp 2022-01-07 12:03:13 +01:00
Andi Drebes
7062052ca6 fix(compiler): Remove unused variables in lib/Dialect/TFHE/IR/TFHEOps.cpp 2022-01-07 12:03:13 +01:00
Andi Drebes
ce9d86014d fix(compiler): Force same signedness of integers in _verifyGLWEIntegerOperator 2022-01-07 12:03:13 +01:00
Andi Drebes
d83a462e20 fix(compiler): Fix initialization order in constructor of MaxMANPPass 2022-01-07 12:03:13 +01:00
Andi Drebes
0b73586178 fix(compiler): Fix initialization order in constructor of MANPAnalysis 2022-01-07 12:03:13 +01:00
Andi Drebes
258480dab6 fix(compiler): Remove unused variable in lib/Dialect/FHE/Analysis/MANP.cpp 2022-01-07 12:03:13 +01:00
Andi Drebes
94f160eef1 fix(compiler): Remove unused variables in lib/Dialect/FHE/IR/FHEOps.cpp 2022-01-07 12:03:13 +01:00
Andi Drebes
498505c2f8 fix(compiler): Remove unused variable err in lib/ClientLib/KeySet.cpp 2022-01-07 12:03:13 +01:00
Andi Drebes
0284e06016 fix(compiler): Remove unused variable err in lib/Runtime/context.cpp 2022-01-07 12:03:13 +01:00
Quentin Bourgerie
4ecae140ca doc(compiler): Enhance FHE Dialect documentation 2022-01-06 18:07:19 +01:00
youben11
2009ee1c94 chore: changing ref to repo after its renaming
also formatting and update the check_license script to match that
2022-01-06 12:40:10 +01:00
rudy
58e02fd035 feat(Testlib): lib for testing libs generated by concretecompiler
Closes #201
2022-01-05 09:29:57 +01:00
Antoniu Pop
8f71c331d4 fix(runtime): formatting. 2022-01-04 12:43:33 +01:00
Antoniu Pop
93835e0106 fix(runtime): move deallocation of key clones in context destructor. 2022-01-04 12:43:33 +01:00
Antoniu Pop
066a3d4e17 fix(runtime): remove strucutred binding as incompatible with C++ standard version. 2022-01-04 12:43:33 +01:00
Antoniu Pop
9deaa1400e chore: add missing license header. 2022-01-04 12:43:33 +01:00
Antoniu Pop
84f01f78d6 fix(runtime/DFR): create only one BSK clone per thread and deallocate. 2022-01-04 12:43:33 +01:00