[论文解读] FAB: An FPGA-based Accelerator for Bootstrappable Fully Homomorphic Encryption
FAB 是一种基于 FPGA 的加速器,通过算法-架构协同设计,克服了内存带宽瓶颈,实现了高效、可自举的全同态加密(FHE),适用于实际参数集。与 CPU 相比,其在逻辑回归训练中实现了 456 倍的加速,与 GPU 相比实现了 6.5 倍的加速,优于以往的 FPGA 和 GPU 加速器,且性能媲美专用集成电路(ASIC),成本仅为 ASIC 的一部分。
FHE offers protection to private data on third-party cloud servers by allowing computations on the data in encrypted form. However, to support general-purpose encrypted computations, all existing FHE schemes require an expensive operation known as bootstrapping. Unfortunately, the computation cost and the memory bandwidth required for bootstrapping add significant overhead to FHE-based computations, limiting the practical use of FHE. In this work, we propose FAB, an FPGA-based accelerator for bootstrappable FHE. Prior FPGA-based FHE accelerators have proposed hardware acceleration of basic FHE primitives for impractical parameter sets without support for bootstrapping. FAB, for the first time ever, accelerates bootstrapping (along with basic FHE primitives) on an FPGA for a secure and practical parameter set. The key contribution of our work is to architect a balanced FAB design, which is not memory bound. To this end, we leverage recent algorithms for bootstrapping while being cognizant of the compute and memory constraints of our FPGA. We use a minimal number of functional units for computing, operate at a low frequency, leverage high data rates to and from main memory, utilize the limited on-chip memory effectively, and perform operation scheduling carefully. For bootstrapping a fully-packed ciphertext, while operating at 300 MHz, FAB outperforms existing state-of-the-art CPU and GPU implementations by 213x and 1.5x respectively. Our target FHE application is training a logistic regression model over encrypted data. For logistic regression model training scaled to 8 FPGAs on the cloud, FAB outperforms a CPU and GPU by 456x and 6.5x and provides competitive performance when compared to the state-of-the-art ASIC design at a fraction of the cost.
研究动机与目标
- 解决先前硬件加速器中因内存带宽受限而导致的 FHE 自举性能瓶颈问题。
- 设计一种基于 FPGA 的加速器,支持 CKKS FHE 的实际、安全参数集,包括完整的自举功能,而不同于以往仅支持小参数集的 FPGA 加速器。
- 通过将 FHE 算法与 FPGA 硬件约束协同设计,实现高性能与资源效率,避免因内存瓶颈导致的计算空闲时间。
- 在 FPGA 上实现端到端的安全机器学习工作负载——特别是支持完整自举的逻辑回归训练——性能可与 ASIC 相媲美。
- 证明一种平衡且内存高效的 FPGA 设计可超越通用 CPU 和 GPU,并在性能上媲美专用 ASIC,适用于可自举的 FHE。
提出的方法
- 采用最先进的自举技术,将 FHE 自举算法与 FPGA 约束协同设计,以最小化内存访问并最大化计算利用率。
- 实现仅 256 个功能单元的最小集合,用于模运算操作,并通过精心调度支持 FHE 原 primitive 的流水线与并行执行。
- 通过利用 Xilinx Alveo U280 FPGA 上的高带宽内存(HBM2),优化数据移动,同时通过高效的缓冲与数据重用,最大限度减少片上内存使用。
- 采用低时钟频率(300 MHz)以降低功耗与面积,同时通过高并行性与高效的调度机制维持吞吐量。
- 构建一个计算与内存紧密同步的平衡系统,避免以往 ASIC 加速器(如 F1 和 BTS)所面临的内存带宽瓶颈。
- 在云环境中将设计扩展至八块 FPGA,以评估大规模 FHE 工作负载下的多设备性能。
实验结果
研究问题
- RQ1基于 FPGA 的加速器能否在安全参数集下实现 CKKS FHE 的实用自举性能,从而克服先前 ASIC 中出现的内存带宽瓶颈?
- RQ2如何通过算法优化与架构协同设计,在 FPGA 上平衡 FHE 工作负载的计算与内存使用?
- RQ3FPGA 加速器在保持成本效益与可部署于公共云环境的前提下,能在多大程度上匹配或超越专用 ASIC 在可自举 FHE 上的性能?
- RQ4与 CPU 和 GPU 相比,FPGA 加速器在支持完整自举的端到端 FHE 逻辑回归训练中,性能提升有多大?
- RQ5FPGA 上的操作调度与内存管理技术能否消除在内存受限的 ASIC 加速器中常见的计算空闲问题?
主要发现
- 在单个 Xilinx Alveo U280 FPGA 上,FAB 在 300 MHz 下对全填充密文进行自举,相比最先进的 CPU 实现,性能提升 213 倍,相比 GPU 提升 1.5 倍。
- 在八块 FPGA 上扩展逻辑回归训练时,FAB 相比 CPU 实现提升 456 倍,相比 GPU 提升 6.5 倍,显著优于通用硬件。
- 尽管使用的是现成的 FPGA 硬件,FAB 的性能与最先进的 ASIC 设计在可自举 FHE 上具有可比性,且成本仅为 ASIC 的一小部分。
- 通过智能操作调度与对片上内存及 HBM2 带宽的高效利用,加速器成功避免了计算空闲时间,实现了内存带宽与计算资源的平衡。
- FAB 支持 CKKS FHE 的安全且实用的参数集,可实现端到端应用(如支持完整自举的逻辑回归训练),而此前的 FPGA 加速器仅支持小参数集。
- 该系统可部署于公共云环境,因为所有必需的软硬件组件均可在商用云 FPGA 平台中获得。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。