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
Classes | Namespaces | Enumerations | Functions | Variables
fpga.h File Reference
#include <atomic>
#include <condition_variable>
#include <deque>
#include <future>
#include <memory>
#include <mutex>
#include <thread>
#include <unordered_map>
#include <vector>
#include "CL/opencl.h"

Go to the source code of this file.

Classes

struct  intel::hexl::fpga::moduli_info_t
 Struct moduli_info_t. More...
 
struct  intel::hexl::fpga::Object
 Struct Object. More...
 
struct  intel::hexl::fpga::Object_NTT
 Struct Object NTT Stores the Number Theoretic Transform parameters. More...
 
struct  intel::hexl::fpga::Object_INTT
 Struct Object INTT Stores the Inverse Number Theoretic Transform parameters. More...
 
struct  intel::hexl::fpga::Object_DyadicMultiply
 struct Object_DyadicMultiply Stores the parameters for the multiplication More...
 
class  intel::hexl::fpga::Buffer
 Struct Buffer Structure containing information for the polynomial operations. More...
 
struct  intel::hexl::fpga::FPGAObject
 Parent Struct FPGAObject stores the blob of objects to be transfered to the FPGA. More...
 
struct  intel::hexl::fpga::FPGAObject_NTT
 Struct FPGAObject_NTT stores the NTT blob of objects to be transfered to the FPGA. More...
 
struct  intel::hexl::fpga::FPGAObject_INTT
 Struct FPGAObject_INTT stores the INTT blob of objects to be transfered to the FPGA. More...
 
struct  intel::hexl::fpga::FPGAObject_DyadicMultiply
 Struct FPGAObject_DyadicMultiply Stores the multiplication blob of objects to be transfered to the FPGA. More...
 
class  intel::hexl::fpga::Device
 Class Device. More...
 
class  intel::hexl::fpga::DevicePool
 Class DevicePool. More...
 

Namespaces

 intel
 
 intel::hexl
 
 intel::hexl::fpga
 

Enumerations

enum  intel::hexl::fpga::DEV_TYPE { intel::hexl::fpga::NONE = 0, intel::hexl::fpga::EMU, intel::hexl::fpga::FPGA }
 enum DEV_TYPE Lists the available device mode: CPU, emulation mode, FPGA More...
 

Functions

void intel::hexl::fpga::attach_fpga_pooling ()
 attach_fpga_pooling Attach a device to this thread More...
 
void intel::hexl::fpga::detach_fpga_pooling ()
 detach_fpga_pooling Detach a device from this thread More...
 

Variables

__extension__ typedef unsigned
__int128 
intel::hexl::fpga::fpga_uint128_t