|
Intel HEXL for FPGA
Intel Homomorphic Encryption FPGA Acceleration Library, accelerating the modular arithmetic operations used in homomorphic encryption.
|
Struct FPGAObject_NTT stores the NTT blob of objects to be transfered to the FPGA. More...
#include <fpga.h>
Public Member Functions | |
| FPGAObject_NTT (const cl_context &context, uint64_t coeff_count, uint64_t batch_size) | |
| ~FPGAObject_NTT () | |
| void | fill_in_data (const std::vector< Object * > &objs) override |
| void | fill_out_data (uint64_t *coeff_poly) override |
Public Member Functions inherited from intel::hexl::fpga::FPGAObject | |
| FPGAObject (const cl_context &context, uint64_t n_batch) | |
| virtual | ~FPGAObject ()=default |
| void | recycle () |
Public Attributes | |
| uint64_t * | coeff_poly_in_svm_ |
| uint64_t * | root_of_unity_powers_in_svm_ |
| uint64_t * | precon_root_of_unity_powers_in_svm_ |
| uint64_t * | coeff_modulus_in_svm_ |
| uint64_t | n_ |
Public Attributes inherited from intel::hexl::fpga::FPGAObject | |
| const cl_context & | context_ |
| int | tag_ |
| uint64_t | n_batch_ |
| std::vector< Object * > | in_objs_ |
Additional Inherited Members | |
Static Public Attributes inherited from intel::hexl::fpga::FPGAObject | |
| static std::atomic< int > | g_tag_ |
Struct FPGAObject_NTT stores the NTT blob of objects to be transfered to the FPGA.
fill_in_data
| [in] | vector | of objects fill_out_data |
| [out] | vector | of polynomial coefficients |
coeff_poly_in_svm vector of polynomial coefficients root_of_unity_powers_in_svm twiddle factors precon_root_of_unity_powers_in_svm inverse twiddle factors coeff_modulus_in_svm_ polynomial coefficients modulus n polynomial size
|
explicit |
| intel::hexl::fpga::FPGAObject_NTT::~FPGAObject_NTT | ( | ) |
|
overridevirtual |
Implements intel::hexl::fpga::FPGAObject.
|
overridevirtual |
Implements intel::hexl::fpga::FPGAObject.
| uint64_t* intel::hexl::fpga::FPGAObject_NTT::coeff_modulus_in_svm_ |
| uint64_t* intel::hexl::fpga::FPGAObject_NTT::coeff_poly_in_svm_ |
| uint64_t intel::hexl::fpga::FPGAObject_NTT::n_ |
| uint64_t* intel::hexl::fpga::FPGAObject_NTT::precon_root_of_unity_powers_in_svm_ |
| uint64_t* intel::hexl::fpga::FPGAObject_NTT::root_of_unity_powers_in_svm_ |
1.8.5