Quentin Bourgerie
bb728959ec
chore: Integrate concrete-optimizer CI
2023-03-07 16:46:31 +01:00
Quentin Bourgerie
c20726e487
chore: Refactor the ci in order to dispatch dependeding of file changes
2023-03-07 14:40:32 +01:00
Quentin Bourgerie
ea46bd70bb
chore: Fix compiler CI
2023-03-07 09:08:29 +01:00
Quentin Bourgerie
6cd9fa6eff
chore: concrete-optimizer is no more build by make
2023-03-06 17:19:39 +01:00
Quentin Bourgerie
2f9c7da6c6
chore: Fix test and build compiler with the new monorepo layout
2023-03-06 17:17:29 +01:00
David Testé
556ff1249b
chore(ci): rename some worflow secrets
2023-03-06 14:01:51 +01:00
David Testé
24457bd3e8
chore(ci): change private ssh key secret name
2023-03-06 14:01:51 +01:00
David Testé
5beb13b435
chore(ci): move ci directory to to repository root
2023-03-06 14:01:51 +01:00
Quentin Bourgerie
86422cf2d5
chore: Integrate concrete-optimizer in the mono-repo
2023-03-06 13:55:27 +01:00
Quentin Bourgerie
7f4bdfd557
chore: Move concrete-optimizer to the concrete mono repo
2023-03-06 13:53:48 +01:00
Quentin Bourgerie
203393056b
chore: Move to the mono-repo layout
2023-03-06 13:34:22 +01:00
Quentin Bourgerie
a279cbe88e
chore: Move llvm-project in third_party
2023-03-06 10:50:21 +01:00
Quentin Bourgerie
06d3c316e7
chore: Move concrete-cpu backend to the concrete mono repository
...
The main contributors of concrete-cpu are
Co-authored-by: Mayeul@Zama <mayeul.debellabre@zama.ai >
Co-authored-by: sarah <sarah.elkazdadi@zama.ai >
2023-03-03 16:20:18 +01:00
Quentin Bourgerie
f65d6e0b44
chore: Integrate 'integrate-concrete-compiler' into the mono-repo
2023-03-03 09:26:10 +01:00
Quentin Bourgerie
f975415e86
chore: Integrate concrete-compiler to the mono-repo
2023-03-03 09:20:01 +01:00
Quentin Bourgerie
ac2f761a79
chore: Project setup
2023-03-02 10:06:11 +01:00
Quentin Bourgerie
a62b3b1d74
refactor: Integrate concrete-cpu and remove concrete-core
...
Co-authored-by: Mayeul@Zama <mayeul.debellabre@zama.ai >
2023-03-02 09:26:31 +01:00
rudy
9c784a2243
fix(ci): prepare_release, GLIBC_VER was not used
2023-03-01 11:52:45 +01:00
rudy
e399d1fed8
fix(ci): prepare_release, macos, bad wheel path
2023-02-28 11:52:29 +01:00
rudy
9c0a686a78
fix: optimizer conversion for addMaxpool2d
2023-02-28 10:04:10 +01:00
rudy
19bc9b2933
fix(ci): prepare_release, typo on PATH
2023-02-28 09:17:10 +01:00
aPere3
15f07addc7
fix(concrete-compiler): abort compilation on first error
...
To prevent infinite compilation in case of potential circular
includes
2023-02-27 10:59:28 +01:00
Mayeul@Zama
220d733e98
chore(cmake): use HPX_INCLUDE_DIRS for ConcretelangRuntime only
2023-02-27 10:56:35 +01:00
rudy
00b9ebc60a
fix: benchmark use the encoding field
2023-02-27 10:54:57 +01:00
Quentin Bourgerie
7ac6a97c85
chore(ci): Fix benchamrk on main as inputs are not setup for automatic merge benchmark
2023-02-24 11:27:55 +01:00
Quentin Bourgerie
7070eff562
chore(ci): Fix benchmark workflow
2023-02-24 10:17:28 +01:00
youben11
f2c1dc6392
fix: set client parameters with correct chunked int options
...
were set with default values
2023-02-22 10:50:26 +01:00
Quentin Bourgerie
4e0f0fa5b0
fix(manp): Fixing computation of negative constant
2023-02-21 18:04:13 +01:00
youben11
2e5f92b6b8
refactor: remove BConcrete dialect
...
- no more Concrete ciphertext/plaintext types: they are represented using standard MLIR types (int/tensor)
- Technically BConcrete was renamed to Concrete, and old Concrete was
removed
- TFHE -> Concrete now takes into account the conversion of tensor of
ciphertext into tensors of an additional dimension (LWE dim)
- Bufferization now works in Concrete
- Old Concrete optimization were moved to TFHE
- Concrete is now the dialect that lowers to CAPI calls
- TFHE -> Concrete now uses OpConversionPattern and is much cleaner in
terms of type conversion
- Disabled tests for batching, as there was something weird about it:
batchable operations implemented in Concrete but pass run in FHELinalg
2023-02-21 16:16:55 +01:00
Umut
d8eafabd22
feat: implement manual manp calculation for FHE.mul_eint
2023-02-21 14:25:26 +01:00
Umut
bc69c87d62
feat: implement maxpool2d operation
2023-02-21 14:25:26 +01:00
Alexandre Péré
56bdb05be3
feat(concrete-compiler): implement a new round operator in the fhe dialect
2023-02-20 08:57:30 +01:00
Quentin Bourgerie
3175d2ec85
chore: fix typo in benchmark workflow
2023-02-17 15:17:25 +01:00
Quentin Bourgerie
8fab9a4038
chore: select benchmark name in benchmark workflow
2023-02-17 15:06:15 +01:00
Quentin Bourgerie
0307227431
tests: Add cifar_8bits benchmark
2023-02-17 14:46:27 +01:00
Quentin Bourgerie
4a3c33b60a
tests: Remove unsigned prefix to have the same reference than before
2023-02-17 14:08:34 +01:00
Alexandre Péré
52ad40c9cf
feat(concrete-compiler): adds a tracing op in all dialects.
2023-02-17 09:04:42 +01:00
Andi Drebes
5d3af16617
test(compiler): Add check for omp.parallel after lowering a parallelizable FHELinalg op
...
This test ensures that at least one parallel region is generated for
an FHELinalg operation that is guaranteed to result in a parallel loop
when `concretecompiler` is invoked with `--parallelize`.
2023-02-14 09:53:02 +01:00
Andi Drebes
fc02bb5cd8
fix(compiler): Copy attributes when reinstantiating scf.for ops
...
The switch to reinstantiating conversion patterns for the conversion
from FHE to TFHE in commit 73fd6c5fe7
caused all attributes of `scf.for` operations to be dropped during the
conversion. This included the custom attribute `parallel`, which is
exploited further down the compilation pipeline to generate parallel
code. As a result, the performance of end-to-end benchmarks dropped
significantly.
This patch copies all attributes of `scf.for` operations upon
reinstantiation, which solves the performance regression.
2023-02-14 09:53:02 +01:00
Antoniu Pop
3ab10c8d3f
fix(GPU runtime): fix BS & KS GPU allocation and synchronization, avoid re-allocation of KSK.
2023-02-14 08:22:15 +00:00
rudy
717c8c815f
fix: ci macos test
2023-02-13 09:20:25 +01:00
youben11
59d35619a8
feat: lower and exec boolean mux
2023-02-09 09:43:48 +01:00
youben11
d0ae2563fa
test: add chunked eint e2e tests
2023-02-07 12:27:01 +01:00
youben11
7e60f87141
refactor: remove chunked_eint
...
the pass transforming operations on chunked_eint will operate now on
eint
2023-02-07 12:27:01 +01:00
youben11
bb87d29934
feat: support chunked integer during enc/dec/exec
2023-02-07 12:27:01 +01:00
youben11
d41d14dbb8
feat: lower FHE.add on eint64 to ops on smaller chunks
...
this is a first commit to support operations on U64 by decomposing them
into smaller chunks (32 chunks of 2 bits). This commit introduce the
lowering pass that will be later populated to support other operations.
2023-02-07 12:27:01 +01:00
aPere3
fb680340f9
feat(concrete-compiler): add new ciphertext multiplication operator
2023-02-06 11:30:31 +01:00
rudy
117e15cc05
fix: build python package during build
2023-02-06 09:36:29 +01:00
rudy
a01fab0a90
feat: Makefile, python-package target
2023-02-06 09:36:29 +01:00
rudy
37421774a0
fix: python package requires wheel
2023-02-06 09:36:29 +01:00