During this first part of the project, we have been working mainly on three main points. We first had to select the most appropriate encryption scheme for our purpose. The two main schemes, namely CKKS and TFHE, feature pros and cons that make this choice far from trivial. While several reviews comparing both counterparts may be found in the literature, unsurprisingly none covers the specifics of an ERC project. Hence, we have been working toward a fair comparison considering our focus. After careful evaluation, both theoretical by our cryptographer and empirical by our research engineers, and not without many hours of discussion, we finally decided that CKKS is the choice of the project, since it shall potentially expose further parallelism and performance at batched workloads at the expense of memory consumption, which is inherently designed to be addressed during the project. We are currently finalising a review article that will discuss the CKKS versus TFHE schemes from HomE’s point of view.
Unfortunately, we found no open-source inference engine equipped with state-of-the-art techniques. This led us to engage in developing our own. HomE’s inference engine, to be released and open sourced very soon, will not only equip state-of-the-art techniques, but also novel methodology that we are cooking. With this, we expect our software to become a reference in the world of homomorphically-encrypted deep learning inference, attracting not only researchers and users, but also contributors and collaborators.
On a third major action, we have been developing, jointly with ETH Zurich, novel methodology to implement NTT -the core operation in the homomorphically-encrypted cyphertext- in processing-in-memory (PIM) devices, providing highly efficient operations in the memory device, hence saving data movements and consequently energy consumption. We plan to integrate this feature, along with that on top of other devices, in the next stage of development of HomE’s inference engine.