Intel HEXL for FPGA
Intel Homomorphic Encryption FPGA Acceleration Library, accelerating the modular arithmetic operations used in homomorphic encryption.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
intel::hexl::fpga::Device Class Reference

Class Device. More...

#include <fpga.h>

Public Member Functions

 Device (const cl_device_id &device, Buffer &buffer, std::shared_future< bool > exit_signal, uint64_t coeff_size, uint32_t modulus_size, uint64_t batch_size_dyadic_multiply, uint64_t batch_size_ntt, uint64_t batch_size_intt, uint32_t debug)
 
 ~Device ()
 
void run ()
 

Detailed Description

Class Device.

Device Constructor

Parameters
[in]devicechoice between emulation and FPGA
[in]buffermemory blob where objects are stored
[in]exit_signalflag signaling data available
[in]coeff_sizepolynomial coefficient size
[in]modulus_sizemodulus size
[in]batch_size_dyadic_multiplybatch size for the multiplication operation
[in]batch_size_nttbatch size for the NTT operation
[in]batch_size_inttbatch size for the INTT operation
[in]debugflag indicating debug mode

run function to launch the operation on the FPGA

Constructor & Destructor Documentation

intel::hexl::fpga::Device::Device ( const cl_device_id &  device,
Buffer buffer,
std::shared_future< bool >  exit_signal,
uint64_t  coeff_size,
uint32_t  modulus_size,
uint64_t  batch_size_dyadic_multiply,
uint64_t  batch_size_ntt,
uint64_t  batch_size_intt,
uint32_t  debug 
)
intel::hexl::fpga::Device::~Device ( )

Member Function Documentation

void intel::hexl::fpga::Device::run ( )

The documentation for this class was generated from the following file: