Arthur Meyre
18b9fd4464
chore(ci): re-enable mistakenly disabled AVX512 for integers
2023-11-16 14:18:30 +01:00
Arthur Meyre
eace0bfb85
chore(ci): spread tests between two CI machines/workflow for faster runtime
2023-11-16 14:18:30 +01:00
Arthur Meyre
61c8eadd58
chore(ci): update Makefile for semver trick compatibility
...
- adding the tfhe package as a dependency is currently causing issues with
Cargo because of unified feature resolution it seems, it needs an
additional version specifier to disambiguate which package we are referring
to, an issue exists on their end but I don't think a fix is to be expected
soon https://github.com/rust-lang/cargo/issues/12891
- commiting this to main and then backporting the relevant pieces to 0.4.x
2023-11-10 15:35:38 +01:00
David Testé
e11c3d7b7c
chore(ci): add signed integer benchmarks to the CI
2023-10-25 09:14:00 +02:00
tmontaigu
0085ceb97b
chore(ci): set node version
2023-10-20 10:24:50 +02:00
tmontaigu
e44c38a102
chore(ci): tell nvm to use node version 20 in wasm parallel tests
2023-10-18 19:04:27 +02:00
Arthur Meyre
41c20e22f5
chore(ci): enable AVX512 for integer and multi bit integer tests
2023-10-17 10:28:14 +02:00
Mayeul@Zama
a9b09ecc45
feat(c_api): add compact integer safe deserialization
2023-10-13 14:18:44 +02:00
Mayeul@Zama
492d348138
test(serialization): run tests in CI
2023-10-05 09:15:58 +02:00
David Testé
a029bd878e
chore(ci): fix file exclusion for coverage reports
2023-09-26 08:58:36 +02:00
David Testé
400e7930b6
chore(ci): fix options typos for new tarpaulin version
2023-09-26 08:58:36 +02:00
David Testé
8ecf8879fb
chore(ci): add end-of-file newline checks recipe
2023-09-20 09:39:50 +02:00
David Testé
48aab9d494
chore(ci): add boolean layer to code coverage
2023-09-15 11:00:23 +02:00
David Testé
bf434be347
chore(ci): exclude unwanted files from coverage
2023-09-14 13:32:09 +02:00
David Testé
cd68a3bd1c
chore(ci): execute clippy all-targets on benchmark code
...
The use of internal-keycache feature is mandatory to ensure clippy
is building against benchmark code.
2023-09-13 11:49:33 +02:00
David Testé
2a8ebb81d8
chore(ci): fix trivium test recipes
2023-09-13 09:09:39 +02:00
David Testé
0080caf95d
chore(ci): add code coverage workflow
...
Coverage is performed and then data are sent to Codecov to handle
reports.
2023-09-13 09:09:03 +02:00
David Testé
c26238533b
chore(ci): add key cache keys generation for coverage
2023-09-13 09:09:03 +02:00
David Testé
ca229e369b
chore(ci): add make recipe for shortint test coverage
...
Tarpaulin is the cargo module used to test coverage.
2023-09-13 09:09:03 +02:00
Arthur Meyre
bc129ba0ed
chore(csprng): add dieharder test suite
2023-09-11 13:05:33 +02:00
Arthur Meyre
462834a12e
chore(tfhe): use concrete-csprng 0.4.0 allows to use stable for M1/M2 macs
2023-09-11 13:05:33 +02:00
Arthur Meyre
ebeee1d6f8
chore(ci): add concrete-csprng to the CI
2023-09-11 13:05:33 +02:00
David Testé
5a3652f398
chore(ci): add clippy target for trivium application
2023-09-08 16:49:27 +02:00
David Testé
65749cb39b
chore(bench): benchmark shortint ops against multi-bit parameters
2023-08-30 13:31:46 +02:00
David Testé
304932a861
chore(tfhe): refactor keycache in its own crate
...
The general parts of shortint keycache has been moved to its own
crate. This enable boolean layer to get access to traits without
having to import shortint::keycache module.
2023-08-10 16:42:40 +02:00
David Testé
59181d4717
chore(ci): add workflow to check security of parameters sets
...
Cryptographic parameters sets security is checked automatically
with a lattice estimator. The first step is to collect all the
parameters that need to be checked in in a file with a format
understable by Sagemath. Second, a lattice estimator is run in
a Sage script. Each parameters set is run against two attacks and
then security level is estimated from that.
These steps have been put into a GitHub workflow to perform
automatic checks.
Co-authored-by: Ben <ben.curtis@zama.ai >
2023-08-10 16:42:40 +02:00
Arthur Meyre
6a56af0b07
chore(ci): add a command to just build docs to see how it looks like
...
- add a target to lint doc building to replace the previous doc target
- adapt the top lib configuration for broken links to go from deny to warn
2023-07-28 11:52:01 +02:00
David Testé
10b1305e66
chore(ci): fast integer benchmarks to run on each push in main
2023-07-27 12:52:31 +02:00
David Testé
f5fab4db99
chore(bench): run groups of benchmarks using env variable
2023-07-26 09:36:29 +02:00
Arthur Meyre
1455da273d
chore(ci): remove auto retry for wasm tests
...
- the pipe was masking the potential error test
2023-07-17 14:16:00 +02:00
Arthur Meyre
228f85d843
chore(tfhe): remove dbg! macro calls and add a Makefile check for it
2023-07-13 19:45:15 +02:00
Arthur Meyre
3cfee104cb
chore(ci): forward profile to shortint and integer test scripts
2023-07-10 09:34:10 +02:00
Arthur Meyre
59ef915095
chore(ci): fix C API build system to manage profiles other than release
2023-07-10 09:34:10 +02:00
David Testé
e52bc09db5
chore(ci): add integer benchmarks with multi-bit parameters
2023-06-29 15:30:19 +02:00
twiby
5f635e97fa
feat(apps): add Trivium application of TFHE
2023-06-23 16:01:40 +02:00
Arthur Meyre
7ea13715ee
chore(ci): run example tests
2023-06-22 11:57:27 +02:00
Petar Ivanov
1d817c45d5
chore(makefile): add experimental deterministic FFT target for the C API
...
`Duration` is only needed when `experimental-force_fft_algo_dif4` is
set. We add a cfg directive to avoid a compiler warning.
2023-06-15 16:14:11 +03:00
David Testé
c4a73f4f44
chore(ci): use correct relative path to wasm bench directory
...
Parsing program is using tfhe/ as working directory. Thus providing
a relative path starting with tfhe/ would result to an error while
trying to walk the directory.
2023-06-14 09:32:36 +02:00
David Testé
18ed2e29a1
chore(ci): create fast feedback unit test profile
...
This is done to get quick feedback to developpers in a Pull Request.
It tests shorint level with only three sets of parameters. Integer
level is tested with only the default operations with two sets of
parameters.
This profile will be automatically triggered on each push in a
pull request. Conversely the full suite of test will also be
triggered automatically but once the review is approved.
2023-06-12 15:19:56 +02:00
Arthur Meyre
9e307a8945
chore(hlapi): add example to measure CPK and CCTL sizes
...
This also includes key generation time in WASM web client side
2023-06-12 11:41:21 +02:00
Arthur Meyre
2b83a1fec0
chore(ci): add a parser to output csv files for integer benchmarks
...
- will simplify "just to see" benchmarks output parsing to share when
iterating on performance work
2023-06-09 14:27:49 +02:00
Arthur Meyre
3508019cd2
feat(core): Add Compact Public Key
...
- Based on "TFHE Public-Key Encryption Revisited "
https://eprint.iacr.org/2023/603.pdf
Co-authored-by: tmontaigu <thomas.montaigu@laposte.net >
2023-06-07 19:47:50 +02:00
Arthur Meyre
2f6c1cf0b5
chore(ci): add docs alias make target for doc
2023-06-07 14:18:49 +02:00
David Testé
08c264f193
chore(ci): put wasm tests in their own workflow
...
This is mostly done to avoid failure on AWS tests (core, boolean,
shortint, ...) workflow due to flaky tests in WASM.
2023-06-06 14:02:52 +02:00
Arthur Meyre
d1cb55ba24
chore(tfhe): add multi bit shortint and integer tests
...
- default tests do not run multi bit PBS as it's not yet deterministic
- only radix parallel currently use multi bit pbs in integer
- remove determinism checks for some unchecked ops
- 4_4 multi bit parameters are disabled for now as they seem to introduce
too much noise
2023-06-02 16:00:28 +02:00
tmontaigu
d4ff1f5595
feat(wasm): add parralellism in wasm API and add wasm for HLAPI
...
Co-authored-by: David Testé <david.teste@zama.ai >
2023-06-02 11:13:12 +02:00
David Testé
799291a1f0
docs(tfhe): format sha256_bool and add make recipes to run it
2023-05-25 00:22:01 +02:00
David Testé
ddb3451087
docs(tfhe): format dark market example add make recipe to run it
2023-05-24 23:30:26 +02:00
David Testé
d79b1d9b19
docs(tfhe): format regex_engine and add make recipes to run it
2023-05-24 22:11:53 +02:00
tmontaigu
1ec7e4762a
feat(integer): make wopbs compile on wasm
...
The goal here is just to make the code compile
and not allow js api to generate wopbs key yet.
2023-05-15 22:06:36 +02:00