youben11
a59587d13d
feat(ci/concrete-python): ignore failures during release
...
we want to release whether a test failed, or a specefic packages
couldn't be built
2023-04-04 12:53:20 +01:00
youben11
7afaa2b82b
chore(frontend): remove license classifier
2023-04-04 12:53:20 +01:00
youben11
ead98ade69
feat(ci): release concrete-python on mac
...
support both M1 and x86 for 3.8, 3.9, and 3.10
2023-04-04 12:53:20 +01:00
Agnes Leroy
aa9147b5b7
bench(backend/gpu): reduce amount of inputs benchmarks in pbs
2023-04-03 17:49:33 +02:00
Pedro Alves
fb862e37e8
bench(backend/gpu): fixes a memory leakage and refactors the verification for the grid size of the low latency kernel
2023-04-03 17:49:33 +02:00
Agnes Leroy
74ded6c48b
bench(backend|gpu): fix low latency pbs bench
2023-04-03 17:49:33 +02:00
Agnes Leroy
32bcda3a93
bench(backend/cuda): restrict the number of inputs for large poly sizes
2023-04-03 17:49:33 +02:00
Pedro Alves
c236dffdd8
chore(backend/cuda): reduces memory consumption in the bootstrap benchmark
2023-04-03 17:49:33 +02:00
Agnes Leroy
d9652b8936
bench(ci): fix concrete-cuda benchmarks
2023-04-03 17:49:33 +02:00
rudy
9cacd4adff
fix(compiler): accept signed & tensorized tlu
2023-04-03 13:23:20 +02:00
youben11
e77c87993d
fix(ci): use OpenMP library from torch to avoid conflicts
...
read: https://discuss.python.org/t/conflicting-binary-extensions-in-different-packages/25332/8
2023-04-03 08:54:29 +02:00
youben11
4a2f552a08
feat(ci): use new MacOs machine on aws for concrete-python
2023-04-03 08:54:29 +02:00
Umut
87e8f5db02
feat(ci/frontend): add MacOS tests for concrete-python
2023-04-03 08:54:29 +02:00
Umut
e2ed5d1e59
fix(frontend/python): ignore errors during requirements artifact export
2023-04-03 08:54:29 +02:00
Umut
e9607395c4
fix(frontend/python): add bare concrete namespace to setup.py
2023-03-31 14:51:38 +02:00
Umut
8f90074958
feat(compiler): implement FHELinalg.round operation
2023-03-31 10:12:21 +02:00
Beka Barbakadze
adf7adffa3
feat(backend/cuda): add tests for fft in concrete-cuda. fix shared memory mode choosing bug, when compute capability was lower than 8.
2023-03-30 11:12:08 +02:00
rudy
86bec09225
fix(optimizer): dot better support for for broadcasting
...
needed for rounded over tensors
2023-03-30 09:48:58 +02:00
rudy
f596afb607
fix(compiler): more robust high global_p_error optimization
2023-03-30 09:31:08 +02:00
rudy
88ab4d0312
fix(optimizer): woppbs + global_p_error was not possible
2023-03-30 09:31:08 +02:00
David Testé
3e42b8b2fb
chore(ci): add concrete-cuda benchmarks using slab
2023-03-29 15:18:01 +02:00
Pedro Alves
dab31433d9
fix(backend): fix ci after 08e8012
...
Google benchmark is built twice due to the new bench infrastructure for
concrete-cuda, this commit fixes it by introducing
CONCRETE_CUDA_BUILD_TESTS and CONCRETE_CUDA_BUILD_BENCHMARKS options to skip
unecessary builds.
2023-03-29 14:36:35 +02:00
Umut
b6f1eb3d2f
chore(frontend/python): introduce nightly releases
2023-03-28 14:29:19 +02:00
Umut
4445985aab
chore(frontend/python): allow setting python to use in the makefile
2023-03-28 14:29:19 +02:00
Umut
371f2076f7
fix(compiler/bindings): update runtime library lookup to consider concrete-python as well
2023-03-28 14:29:19 +02:00
Pedro Alves
08e8012061
bench(backend): add a benchmark tool for concrete-cuda
2023-03-28 10:19:57 +02:00
aPere3
2728046ae7
chore(compiler): allows unsecure keyset caches to be generated
...
For debugging purpose, add a cmake variable that allows to generate
unsecure keycaches, that allows tracing ops to show the message in the
ciphertext body.
2023-03-28 09:15:04 +02:00
Quentin Bourgerie
8b4dc7be82
chore(concrete-cpu): Use concrete-fft nightly when nightly features is enable to use avx512
2023-03-28 08:50:33 +02:00
Umut
0b9c2a0a3e
chore(frontend/python): create nightly release workflow
2023-03-27 16:21:33 +02:00
Umut
5e2349839a
chore(frontend/python): pin development dependencies to avoid future CI failures
2023-03-27 16:21:33 +02:00
Umut
18c2a894a5
fix(frontend/python): set extension modules in setup.py
2023-03-27 16:21:33 +02:00
Umut
43a9c499e1
chore(frontend/python): disable S311 lint in tests as it's a false positive
2023-03-27 16:21:33 +02:00
Umut
f0a1122d23
chore(frontend/python): allow filtering tests using markers in make pytest target
2023-03-27 16:21:33 +02:00
Umut
d9313f350a
test(frontend/python): use dataflow marker in appropriate tests
2023-03-27 16:21:33 +02:00
Umut
382282736e
chore(frontend/python): add dataflow marker to pytest
2023-03-27 16:21:33 +02:00
Umut
ee6da15732
fix(frontend/python): disable dataflow parallelization by default
2023-03-27 16:21:33 +02:00
Umut
805f3702d7
chore(frontend/python): add concurrency control to test linux test workflow
2023-03-27 16:21:33 +02:00
Mayeul@Zama
0b86167310
chore(ci): be more strict on commit messages
2023-03-27 11:39:23 +02:00
Agnes Leroy
df5f1837fc
test(compiler): add test for N = 16384 on GPU
2023-03-24 15:29:43 +01:00
Andi Drebes
d1781e0901
refactor(compiler): Remove unused header files from TensorOpsToLinalg.cpp
2023-03-24 11:06:51 +01:00
Andi Drebes
488877ac0b
test(compiler): Add tests for batching of TFHE operations
...
Re-introduce the previously deleted batching tests for BConcrete as
tests for TFHE with the addition of a new test, checking that
non-batchable operands generated by pure operations are hoisted.
2023-03-24 11:06:51 +01:00
Andi Drebes
fa5c09a52b
feat(compiler): Run batching pass after conversion to TFHE
...
With TFHE operations becoming batchable, the batching pass must now be
run after the conversion to TFHE,and TFHE parametrization, but before
any further lowering.
2023-03-24 11:06:51 +01:00
Andi Drebes
9cd238db82
refactor(compiler): Separate TFHE parametrization into its own pipeline stage
2023-03-24 11:06:51 +01:00
Andi Drebes
fdb4594a2b
feat(compiler): Add lowering path for batched TFHE operations to Concrete
2023-03-24 11:06:51 +01:00
Andi Drebes
b495f9dd5c
feat(compiler): Make TFHE.keyswitch_glwe and TFHE.bootstrap_glwe batchable
2023-03-24 11:06:51 +01:00
Andi Drebes
b24709a1ec
feat(compiler): Batching: Hoist non-batchable operands produced by pure ops
...
The batching pass only creates a batched version of a batchable
operation if all of its non-batchable operands are defined out ouf the
outermost loop the iterating over the values of the batchable operand.
This change also allows for operations to be batched if the
non-batachable operands are generated by operations, which are pure
and thus hoistable out of the outermost loop.
2023-03-24 11:06:51 +01:00
Andi Drebes
3309615d7b
fix(compiler): Batching: Bail out if batchable operand is not produced by an op
...
An early test for a batchable operation checks whether the batchable
operand is produced by a `tensor.extract` operation and bails out if
this is not the case. However, the use of `llvm::dyn_cast<T>()` directly
on the defining operation of the batchable operand causes an attempt
to cast a null value for an operand which is not produced by an
operation (e.g., block arguments).
Using `llvm::dyn_cast_or_null<T>()` fixes this issue.
2023-03-24 11:06:51 +01:00
Andi Drebes
a0e5628a88
refactor(compiler): Remove implementation of batching interface from all Concrete operations
2023-03-24 11:06:51 +01:00
Andi Drebes
dafb33414d
refactor(compiler): Mark TFHE operations as side-effect free
2023-03-24 11:06:51 +01:00
Quentin Bourgerie
67e2518df9
chore(compiler): Build rust libraries with target-feature
2023-03-23 15:54:30 +01:00