This cleanup function frees the data for the multi-bit PBS on GPU
contained in pbs_buffer for 64-bit inputs.
This cleanup function frees the data for the low latency PBS on GPU
contained in pbs_buffer for 32 or 64-bit inputs.
Perform the addition of two u64 input LWE ciphertext vectors.
Perform the addition of a u64 input LWE ciphertext vector with a u64 input plaintext vector.
Copy number_of_cts LWE ciphertext represented with 64 bits in the standard domain from the
GPU to the CPU gpu_index using the stream v_stream. All ciphertexts must be
concatenated.
Copy number_of_cts LWE ciphertext represented with 64 bits in the standard domain from the
CPU to the GPU gpu_index using the stream v_stream. All ciphertexts must be
concatenated.
Copy a multi-bit bootstrap key src represented with 64 bits in the standard domain from
the CPU to the GPU gpu_index using the stream v_stream. The resulting bootstrap key
dest on the GPU is an array of uint64_t values.
Copy a bootstrap key src represented with 64 bits in the standard domain from the CPU to
the GPU gpu_index using the stream v_stream, and convert it to the Fourier domain on the
GPU. The resulting bootstrap key dest on the GPU is an array of f64 values.
Create a new Cuda stream on GPU gpu_index
Destroy the Cuda stream v_stream
Free memory for pointer ptr on GPU gpu_index synchronously
Free memory for pointer ptr on GPU gpu_index asynchronously, using stream v_stream
Get the maximum amount of shared memory on GPU gpu_index
Get the total number of Nvidia GPUs detected on the platform
Perform keyswitch on a batch of 64 bits input LWE ciphertexts.
Allocate size memory on GPU gpu_index asynchronously
Copy size memory asynchronously from src to dest on the same GPU gpu_index using
the Cuda stream v_stream.
Copy size memory asynchronously from src on GPU gpu_index to dest on CPU using
the Cuda stream v_stream.
Copy size memory asynchronously from src on CPU to dest on GPU gpu_index using
the Cuda stream v_stream.
Copy size memory asynchronously from src on CPU to dest on GPU gpu_index using
the Cuda stream v_stream.
Perform the multiplication of a u64 input LWE ciphertext vector with a u64 input cleartext
vector.
Perform bootstrapping on a batch of input u64 LWE ciphertexts using the multi-bit algorithm.
Perform the negation of a u64 input LWE ciphertext vector.
Perform bootstrapping on a batch of input u64 LWE ciphertexts.
Synchronize all streams on GPU gpu_index
Synchronize Cuda stream
This scratch function allocates the necessary amount of data on the GPU for
the multi-bit PBS on 64-bit inputs into pbs_buffer.
This scratch function allocates the necessary amount of data on the GPU for
the low latency PBS on 64-bit inputs, into pbs_buffer. It also configures SM
options on the GPU in case FULLSM or PARTIALSM mode are going to be used.