Skip to content

Full CKKS Bootstrapping, NEON Backend, and Major Backend Performance Upgrades

Latest

Choose a tag to compare

@Pro7ech Pro7ech released this 09 Jul 15:01
a83d789
  • Adds the full leveled-CKKS evaluation stack, including scale-agnostic BSGS polynomial evaluation, slot-domain linear transformations, homomorphic DFT, EvalMod, and the complete CKKS bootstrapping pipeline.

  • Introduces a new AArch64 NEON backend through poulpy-cpu-arm, bringing accelerated Poulpy support to ARM platforms while preserving backend-generic scheme wiring.

  • Delivers major performance improvements across AVX, AVX-512, IFMA, NTT, convolution, VMP, and CKKS multiplication paths, with several kernels seeing multi-x speedups.

  • Generalizes core evaluation infrastructure around reusable prepared operands, streamed-vs-resident execution paths, packed LWE matrices, and backend-generic automorphism and convolution APIs.

  • Renames the multi-prime NTT backend families to the clearer <primes>x<bits> scheme, e.g. NTT120 → NTT4x30 and NTT126 → NTT3x42.

  • Expands benchmarking and documentation, including new design notes for polynomial evaluation, linear transformations, bootstrapping, backend architecture, and implementation specifications.

See the full changelog for detailed API changes, backend-specific optimizations, benchmarks, tests, and documentation updates.