FIDESlib: A Fully-Fledged Open-Source FHE Library for Efficient CKKS on GPUs
Carlos Agull\'o-Domingo (1), \'Oscar Vera-L\'opez (1), Seyda Guzelhan (2), Lohit Daksha (2), Aymane El Jerari (3), Kaustubh Shivdikar (4), Rashmi Agrawal (2), David Kaeli (3), Ajay Joshi (2), Jos\'e L. Abell\'an (1) ((1) Universidad de Murcia, (2) Boston University

TL;DR
FIDESlib is an open-source GPU-accelerated CKKS FHE library that significantly outperforms CPU-based implementations, enabling practical privacy-preserving machine learning in cloud environments.
Contribution
It introduces the first fully GPU-optimized CKKS FHE library compatible with OpenFHE, featuring high-performance kernels and multi-GPU support.
Findings
70x faster bootstrapping than AVX-optimized OpenFHE
Superior scalability across various GPU systems
Robust benchmarking and testing framework
Abstract
Word-wise Fully Homomorphic Encryption (FHE) schemes, such as CKKS, are gaining significant traction due to their ability to provide post-quantum-resistant, privacy-preserving approximate computing; an especially desirable feature in Machine-Learning-as-a-Service (MLaaS) cloud-computing paradigms. OpenFHE is a leading CPU-based FHE library with robust CKKS operations, but its server-side performance is not yet sufficient for practical cloud deployment. As GPU computing becomes more common in data centers, many FHE libraries are adding GPU support. However, integrating an efficient GPU backend into OpenFHE is challenging. While OpenFHE uses a Hardware Abstraction Layer (HAL), its flexible architecture sacrifices performance due to the abstraction layers required for multi-scheme and multi-backend compatibility. In this work, we introduce FIDESlib, the first open-source server-side CKKS…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
