Homomorphic Encryption (HE) enables users to securely outsource both the storage and computation of sensitive data to untrusted servers. Not only does HE offer an attractive solution for security in cloud systems, but lattice-based HE systems are also believed to be resistant to attacks by quantum computers. However, current HE implementations suffer from prohibitively high latency. For lattice-based HE to become viable for real-world systems, it is necessary for the key bottlenecks - particularly polynomial multiplication - to be highly efficient. In this paper, we present a characterization of GPU-based implementations of polynomial multiplication. We begin with a survey of modular reduction techniques and analyze several variants of the widely-used Barrett modular reduction algorithm. We then propose a modular reduction variant optimized for 64-bit integer words on the GPU, obtaining a 1.8x speedup over the existing comparable implementations. Next, we explore the following GPU-specific improvements for polynomial multiplication targeted at optimizing latency and throughput: 1) We present a 2D mixed-radix, multi-block implementation of NTT that results in a 1.85x average speedup over the previous state-of-the-art. 2) We explore shared memory optimizations aimed at reducing redundant memory accesses, further improving speedups by 1.2x. 3) Finally, we fuse the Hadamard product with neighboring stages of the NTT, reducing the twiddle factor memory footprint by 50%. By combining our NTT optimizations, we achieve an overall speedup of 123.13x and 2.37x over the previous state-of-the-art CPU and GPU implementations of NTT kernels, respectively.
翻译:(HE) 使用户能够安全地将敏感数据的储存和计算速度数据外包给不可信的服务器。 HE 不仅能为云系统的安全提供有吸引力的解决方案,而且基于 lattice 的 HE 系统也被认为对量子计算机的攻击具有抗力。 然而,目前He 的安装存在令人望高的悬浮。 以 lattice 为基础的 HE 要在现实世界系统上变得可行,关键瓶颈—— 特别是多式倍增—— 就必须非常高效。 在本文中,我们介绍了基于 GPU 的多式倍增功能的特征。 我们首先调查了模块削减技术并分析了广泛使用的 BRT 模块削减算法的几种变种。 然而,我们随后提出了一个模块削减变式的变种,在 GPUPE 上优化了64 位整数, 在现有的可比执行系统上取得了1.8x 速度。 其次,我们探索了以下GPU.13 的多式倍增益的改进,目标是优化拉特和通量:1) 我们展示了2D级的双向、多式双向、多式的降级化技术, 在NTBTLTL3 的升级的升级,在NTLTFMT的升级的升级的升级的升级,在前的升级的升级的升级的升级的升级的升级的升级,在前的升级的升级的升级的升级的升级的升级,在1,在1x的升级的升级的升级的升级的升级的升级,在1x的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级,在1x的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级,最后的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的升级的