feat(cuda): add a new fft algorithm.

- FFT can work for any polynomial size, as long as twiddles are provided.
 - All the twiddles fit in the constant memory.
 - Bit reverse is not used anymore, no more sw1 and sw2 arrays in constant memory.
 - Real to complex compression algorithm is changed.
 - Twiddle initialization functions are removed.
This commit is contained in:
Beka Barbakadze
2023-01-27 14:20:07 +04:00
committed by bbarbakadze
parent bd9cbbc7af
commit 3cd48f0de2
11 changed files with 4150 additions and 8905 deletions

View File

@@ -5,9 +5,6 @@
extern "C" {
void cuda_initialize_twiddles(uint32_t polynomial_size, void *v_stream,
uint32_t gpu_index);
void cuda_convert_lwe_bootstrap_key_32(void *dest, void *src, void *v_stream,
uint32_t gpu_index,
uint32_t input_lwe_dim,