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.
翻译:完全基因加密( FHE) 允许在加密数据上进行计算, 从而安全地卸载计算到不可信的服务。 尽管它提供了理想的安全性, FHE在软件中执行时费用昂贵, 但是在软件中执行时, FHE 要比在未加密数据上计算慢4到5级, 其规模比计算慢。 这些间接费用是FHE 广泛采用的主要障碍。 我们提供了F1, 第一个 FHE 加速器, 即能够执行完整的 FHE 程序。 F1 建立在对 FHE 计算特点的深入建筑分析的基础上, 显示加速的机会。 F1 是宽的广视频处理器, 具有对FHE 原始人具有高度专业化的新功能, 例如模块算术、 数字理论变换和结构变换。 这个组织提供了如此多的计算量, 使得数据移动成为了瓶颈。 因此, F1 主要是设计来尽量减少数据移动。 F1 硬件提供了明确的管理存储等级和机制, 以便从执行中解调数据移动。 一个新型编译器利用这些新机制, 通过FHE1 和FHE1 IM1 快速化程序来将F- 和F- hex- AS- AS- AS- bex 的系统 的系统的系统完整的系统- 和 FI- silent- hyal- hex- simal- hex- hex- hex- sy- hex- s- s- hex- hex- sal- sal- sal- fal- 和 Fx- helvical- sal- fal- faldaldal- 和 Fx- sal- ax- ax- sil- sal- sal- sal- ax- ax- 和 Fx- 和 Fx- sal- a- 的系统- smal- sal- sal- a- 和 Fal- 的系统- 和 Fal- commod- commod- 和 Fal- fal- sal- fal- fal- fal- s- fal- s- s- sal- sal- hel- fal- commoction- 和 Fal- s-