Using concrete-fft and avx512 in TFHE-rs & Optimized parameters for larger integer.

Hi everyone,

I am wondering if there is a way to use “concrete-fft” and “avx512” options as in TFHE-rs benchmark.
Or are they default options?

I am asking because of the huge gap between the benchmark and the reported run-time (~100 times slower) on my machine (Intel Xeon Silver 4114 CPU 2.20GHz).
I think the gap is way larger than the gap between the machines.

By the way, I am looking at the paper Parameter Optimization & Larger Precision for (T)FHE, but cannot find the optimized parameters in the recent release (and in git repo) of TFHE-rs. Are you going to put those parameters into TFHE-rs? I have lots of interest in large integer LUTs.

Hello @H_Choe !

Did you run the code with --release flag ?

For avx 512 you need to use the nightly-avx512 feature and use a nightly toolchain.

@jbo will tell you more on the parameter side :slight_smile:

Hey H_Choe,

The parameter sets of the paper are not directly given in the THFE-rs release because we prefer ensuring a lower error probability (1/2^40) with the lib (whereas in the paper, the error is bounded by 1/2^13.9). However, you can easily change the parameters by hand, to put the ones from the paper instead!

Note that the current parameter sets associated to the WoPBS needs to be clean up . We are working on this, so next releases might be helpful to you :slight_smile:

Did you manage to solve your performance issue?

Hello @IceTDrinker and @jbo,

Thank you for replying.

With the release flag, it looks much better. Thank you!
I will try with nightly-avx, as soon as I get to know how to.

I will also try with the parameters in the paper.
@jbo Are the parameters given in table 2 enough for reproducing the results?

For most of the results, it should be enough. Some of the benchmarks had required some specific implem (notably about the hybrid integers, that are not currently in the main branch).

If needed, we can share with you this working branch.