[论文解读] F1: A Fast and Programmable Accelerator for Fully Homomorphic Encryption (Extended Version)
F1 是首个可编程的 FHE 加速器,能够以高吞吐量执行完整的 FHE 程序,显著超越软件并实现实时安全云推断。
Fully Homomorphic Encryption (FHE) allows computing on encrypted data, enabling secure offloading of computation to untrusted serves. Though it provides ideal security, FHE is expensive when executed in software, 4 to 5 orders of magnitude slower than computing on unencrypted data. These overheads are a major barrier to FHE's widespread adoption. We present F1, the first FHE accelerator that is programmable, i.e., capable of executing full FHE programs. F1 builds on an in-depth architectural analysis of the characteristics of FHE computations that reveals acceleration opportunities. F1 is a wide-vector processor with novel functional units deeply specialized to FHE primitives, such as modular arithmetic, number-theoretic transforms, and structured permutations. This organization provides so much compute throughput that data movement becomes the bottleneck. Thus, F1 is primarily designed to minimize data movement. The F1 hardware provides an explicitly managed memory hierarchy and mechanisms to decouple data movement from execution. A novel compiler leverages these mechanisms to maximize reuse and schedule off-chip and on-chip data movement. We evaluate F1 using cycle-accurate simulations and RTL synthesis. F1 is the first system to accelerate complete FHE programs and outperforms state-of-the-art software implementations by gmean 5400x and by up to 17000x. These speedups counter most of FHE's overheads and enable new applications, like real-time private deep learning in the cloud.
研究动机与目标
- 动机:说明需要对 Fully Homomorphic Encryption (FHE) 的硬件加速,以实现实际可用的安全卸载的必要性。
- 设计一个可编程的 FHE 加速器,使其能够执行完整的 FHE 程序,而不仅仅是基本运算。
- 通过显式管理的内存层次结构和静态调度,最小化数据移动并最大化复用。
- 开发专用的向量功能单元,针对 FHE 基元(模运算、NTT、自同构)进行定制。
- 通过 RTL/14nm-12nm 实现以及逐时钟周期精确仿真来证明可行性,并显示出显著的加速。
提出的方法
- 提出一种带有专用 FHE 功能单元(模加/乘、NTT、自同构)的宽向量处理器架构。
- 使用剩余数系统(RNS)使算术宽度保持在 32 位通道,并实现宽系数运算。
- 采用静态、类似 VLIW 的调度,具有分布式控制和解耦的数据移动,以最大化吞吐量并最小化阻塞。
- 实现显式管理的片上 scratchpad 存储器(64 MB)以及带快速片上网络的高带宽片外内存,以隐藏延迟。
- 开发一种新型编译器,执行三阶段调度:高层操作排序、片外数据移动调度,以及逐时钟周期、组件级别的调度。
- 通过逐时钟周期仿真和 14nm/12nm 工艺的 RTL 合成进行评估,以量化性能和面积。
实验结果
研究问题
- RQ1一个加速器如何实现可编程以执行完整的 FHE 程序(不仅仅是原语),覆盖如 BGV、CKKS、GSW 等不同 FHE 方案?
- RQ2哪些体系结构选择(内存层次、静态调度、向量化 FUs)能在尽量减少数据移动的同时为 FHE 工作负载实现最高吞吐量?
- RQ3对于代表性的 FHE 工作负载,可实现的可编程 FHE 加速器相对于最先进的软件实现的加速是多少?
- RQ4F1 设计如何处理密钥切换和自同构的主要成本,以及为了重用和带宽效率所需的数据管理策略?
主要发现
- F1 在基准测试中对最先进的软件 FHE 实现实现了 1,200× 到 17,000× 的加速。
- 在 14nm/12nm 工艺下的 RTL 和综合实现产生 36 tera-ops/s 的 32-bit 模块运算,64 MB 片上存储,以及 1 TB/s 的内存带宽。
- F1 可以运行完整的 FHE 程序,使云端实现实时深度学习推理等应用(例如将 20 分钟的推理缩短到 240 ms)。
- 性能受数据移动限制,F1 通过显式管理的内存层次结构和解耦的数据移动来缓解。
- 该架构采用静态调度,配合大量高吞吐向量单元和精心设计的片上网络来高效地为这些单元提供数据。
- F1 使用相同的原语单元支持多种 FHE 方案(BGV、CKKS、GSW),实现算法多样性。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。