Thomas Montaigu
614ca52749
feat(CompressedXofKeySet): impl key gen of ClientKey
...
This adds the implemention of the ClientKey generation
that respects the threshold specs, some points are:
* 2 random generators are used one for everything public (masks)
the other for everything private (private keys and noise).
These generators are seeded once.
* binary secret keys are generated using
`fill_slice_with_random_uniform_binary_bits` and support pmax param
2025-11-25 10:24:25 +01:00
Guillermo Oyarzun
28ea0bc086
fix(gpu): force uint64 when calculating lwe chunksize
2025-11-25 09:52:16 +01:00
Arthur Meyre
48cc709cf9
test(core): add exhaustive decomposition test on several levels
...
- also add a verification that recomposition works in the previously added
edge case test
2025-11-24 18:40:36 +01:00
David Testé
6141ad2eee
chore(bench): fix bench prefix pattern for hlapi ops
...
To follow the standard used by other HLAPI benchmarks and ease parsing for data_extractor.
2025-11-24 17:56:10 +01:00
Nicolas Sarlin
580e545b14
chore(wasm): install wasm bindgen before using wasm pack
2025-11-24 15:58:01 +01:00
David Testé
0b98ef98fc
chore(ci): handle inputs vars safely in python script
2025-11-24 14:03:08 +01:00
David Testé
b0393c0acb
chore(bench): run scalar ops in integer deduplicated cpu bench
2025-11-24 14:03:08 +01:00
David Testé
87bea9dcf1
chore(ci): remove 2m40 p-fail from core_crypto array generation
2025-11-24 14:03:08 +01:00
David Testé
b3c3647530
chore(ci): add workflow to update documentation benchmark tables
...
This new workflow can trigger all the required benchmarks needed
to populate benchmarks tables in documentation.
It also can generate SVG tables and store them as artifacts.
Optionally, it can open a pull-request to update the current
tables in documentation.
2025-11-24 14:03:08 +01:00
David Testé
3c76dd8cad
chore(ci): small fixes on data_extractor filename generation
...
This is done to ease automated SVG tables for tfhe-rs public documentation.
2025-11-24 14:03:08 +01:00
David Testé
a75b5107ff
chore(docs): change svg benchmark table names
...
This is done to ease automated table generation through continuous integration pipeline.
2025-11-24 14:03:08 +01:00
Enzo Di Maria
32b1a7ab1d
refactor(gpu): unchecked_match_value_or to backend
2025-11-24 13:50:15 +01:00
David Testé
184f40439e
chore(ci): use env to handle inputs securely in python script
2025-11-24 12:19:53 +01:00
Agnes Leroy
1ed8710868
chore(gpu): fix sanitizer script
2025-11-24 09:42:55 +01:00
David Testé
97214f801e
chore(ci): teardown build instance only if setup has run
...
In case of a re-run attempt, if one asks for only failing jobs to
be re-run (e.g. MacOS job on GitHub hosted runner) and the
previous attempt was successful regarding setup-build-teardown,
then we would try to teardown again an instance already gone.
This would cause an error in the CI.
By checking the 'github.run_attempt' number, we ensure that we run
the teardown only if the setup has occurred during the same run
attempt.
2025-11-21 17:16:14 +01:00
David Testé
25a8bbfd89
chore(ci): make slack notify fail in case of error on teardown
...
On instance teardown we want to be informed of any failure to
avoid having zombies running due to Slack notify action error
being silenced.
2025-11-21 17:15:58 +01:00
David Testé
ef1e091ce2
chore(ci): put slack variables in global env for builds
...
Without them, we are unable to perform Slack notification.
2025-11-21 17:15:58 +01:00
Enzo Di Maria
1a7efbc21b
fix(gpu): constant number of blocks for outputs of match_value
2025-11-21 15:56:54 +01:00
Guillermo Oyarzun
02312e23ea
fix(gpu): fix pbs128 selection for small num samples
2025-11-21 10:57:14 +01:00
Agnes Leroy
e5742e63e9
chore(gpu): add compute-sanitizer run on H100
2025-11-21 09:15:04 +01:00
Agnes Leroy
bc0a4fb0d6
chore(gpu): add classical pbs tests to HL API, complement missing tests, classical in long run
2025-11-21 09:15:04 +01:00
Enzo Di Maria
c6709a82c0
refactor(gpu): match_value to backend with multiple streams
2025-11-20 17:11:15 +01:00
Agnes Leroy
0f5e538f9a
chore(gpu): add better panic when calling old compression functions
2025-11-20 17:06:06 +01:00
David Testé
58378b7972
chore(bench): add dedicated targets for aes cuda benchmarks
2025-11-20 16:58:06 +01:00
Arthur Meyre
9b5df143cb
chore: update dp_ks_pbs128_packingks test to take metaparameters
2025-11-20 16:03:50 +01:00
Arthur Meyre
cbac102a0d
chore: update dp_ks_ms test to take metaparameters
2025-11-20 16:03:50 +01:00
Arthur Meyre
0da331590c
chore: update cpk_ks_ms test to take metaparameters
...
- also added a seemingly missing sanity check for cpk_ks_ms
2025-11-20 16:03:50 +01:00
Arthur Meyre
e5a15b33d9
chore: fix incorrect number in seed_bytes for rerand noise check test
...
- has no impact on correctness of test, in addition the size of the array
would have been the same due to integer division
2025-11-20 16:03:50 +01:00
Arthur Meyre
d68645c493
chore: update br_rerand_dp_ks_ms test to take metaparameters
2025-11-20 16:03:50 +01:00
Arthur Meyre
a72de66744
chore: update br_dp_packing_ms test to take metaparameters
2025-11-20 16:03:50 +01:00
Arthur Meyre
1b924fa872
chore: update br_dp_ks_ms test to take metaparameters
2025-11-20 16:03:50 +01:00
Arthur Meyre
560f595620
chore: remove temporary test param
2025-11-20 16:03:50 +01:00
Mayeul@Zama
f4665886ee
fix(integer): fix StaticUnsignedBigInt cast into u128
2025-11-20 15:40:39 +01:00
Beka Barbakadze
80cacbd079
feat(gpu): add boolean bitops in cuda backend
2025-11-20 14:56:21 +01:00
tmontaigu
1b17cfc0f8
chore(c-api): add missing docs for some C function
...
Add explanations on the fact that config and config buider
do not need to be freed/
2025-11-20 14:46:54 +01:00
David Testé
a5c248566d
chore(ci): run parameters_check workflow if files change
2025-11-20 12:36:21 +01:00
David Testé
eb2cf19d10
chore(ci): install rust toolchain for parameters checks
...
This is needed since our AWS EC2 image doesn't embed Rust toolchain.
2025-11-20 11:01:37 +01:00
David Testé
4928efcca8
chore(ci): remove check on secret availability for params checks
...
This is needed only when the triggering event is pull_request and PR comes from an external contributor.
2025-11-20 11:01:37 +01:00
Nicolas Sarlin
edb435bd46
chore: update msrv to 1.91.1
2025-11-20 09:29:37 +01:00
David Testé
071e70c037
chore(bench): fix benchmark id pattern for aes and aes256
2025-11-19 17:23:05 +01:00
Arthur Meyre
19c2146b2d
chore: remove redundant log2/powf in params_to_file.rs
2025-11-19 12:59:26 +01:00
David Testé
c5bac7994a
chore(ci): fix typos in newly checked ci folder
2025-11-19 11:51:02 +01:00
David Testé
bdef5b358e
chore(ci): ignore only specific files in ci folder
...
The whole ci/ folder was ignored, that would cause issue regarding search capability in some IDE.
2025-11-19 11:51:02 +01:00
Arthur Meyre
4229523c50
chore: add artificial intelligence contribution guidelines
2025-11-19 10:43:34 +01:00
Nicolas Sarlin
ac6178fd35
chore(zk): add batched mode for verification pairings
2025-11-19 09:24:13 +01:00
David Testé
893c321e60
chore(ci): update repositories before any other apt operation
...
This is done to avoid failure on dependencies' installation.
2025-11-18 14:13:02 +01:00
David Testé
51139e6e82
chore(ci): use builds result to pass branch protection
...
Instance teardown might fail regardless the result of build
commands. To make CI green in pull-request we need to check the
result of the build commands instead of the whole workflow result.
Doing so ensure a PR could pass branch protection rules even if
the teardown fails.
2025-11-18 11:44:56 +01:00
David Testé
5ce068642e
chore(ci): replace workflow name in cpu weekly bench
2025-11-18 11:42:10 +01:00
David Testé
5c2fe133e1
chore(ci): use explicit boolean checking on scheduled cpu bench
...
It seems that boolean output set by user is not coerced into
boolean type by the runner. Rather it checks if the string
associated ("true" or "false") is not empty.
2025-11-18 11:42:10 +01:00
David Testé
d12bbd848c
chore(ci): fix op_flavor generation for weekly cpu bench
...
Sub-workflow is supposed to handle comma-separated values not an array.
2025-11-18 11:42:10 +01:00