Skip to content

Latest commit

 

History

History
70 lines (60 loc) · 3.76 KB

CHANGES.md

File metadata and controls

70 lines (60 loc) · 3.76 KB

Changes

Version 1.2.5

  • Adds experimental FFT-like (#104)
  • Adds big moduli tests for IFMA (#123)
  • Fixes HEXL's example build (#114)
  • Fixes IFMA/DQ logic error (#118)
  • Fixes pre-built CpuFeatures Error on Cmake 3.16 (#120)
  • Fixes 52-bit modulus issue #121 (#123)
  • Updates to documentation

Version 1.2.4

  • Adds experimental HEXL-FPGA compatibility for dyadic multiply and key switch (#109)
  • Adds vcpkg example of how to use previous hexl versions (#103)
  • Adds benchmarking montgomery multiplication (#94)
  • Moves to compiling with minimum C++ 17
  • Updates to documentation

Version 1.2.3

  • Fix to EltwiseReduceMod on AVX512-DQ processors (#86)
  • Update minimum CMake version to 3.13
  • Fixes 3rd-party dependency commits (#85)

Version 1.2.2

  • Fixes Barrett reduce native benchmark (#65)
  • Fixes 32 bit invntt (#73)
  • Fixes CMake 3.13 compilation (#67)
  • Added information of HElib integration to README (#63)
  • Added random number generator which generates a vector of specified size with random values drawn uniformly from [0, modulus) (#62)
  • Added random input values for benchmarks (#66)
  • Uses Generalized Barrett Reduction algorithm for EltwiseMultMod (#68)
  • Avoids memcpy operations on NTT (#72)
  • Added performance tips to README (#74)
  • Improves performance of Barrett Reduction (#75)

Version 1.2.1

  • Fixes a bug in AVX512 floating-point implementation of element-wise vector-vector modular multiplication (microsoft/SEAL#385)
  • Fixes a bug in the NTT default constructor (https://gitlab.com/palisade/palisade-development/-/issues/329)
  • Fixes a bug in the AVX512 NTT (#58)
  • Improves performance of EltwiseFMAModAVX512 on ICX (#42)
  • Improves performance of the native NTT
  • Adds reference implementations for the radix-4 NTT
  • Enables support for pre-built easylogging (#57)

Version 1.2.0

  • Large performance improvement in large (N >= 16384) AVX512 NTTs via recursive implementations
  • Slight performance improvements in AVX512IFMA NTT
  • Slight performance improvements in element-wise modular multiplication
  • Implement optimized AVX512DQ NTT for moduli < 32 bits
  • Expands public API to include number theory, NTT twiddle factors
  • Remove HEXL_DEBUG and HEXL_EXPORT options. The behavior now is to always export the cmake configuration files, and HEXL_DEBUG is enabled iff the CMAKE_BUILD_TYPE=Debug
  • Added pkgconfig support

Version 1.1.1

  • Fix Google benchmark branch to point to "main" instead of "master"

Version 1.1.0

  • Added vector-vector and vector-scalar EltwiseSubMod
  • Added vector-scalar version of EltwiseAddMod
  • Added generic 128-bit division for Windows build
  • Documentation hosted on a separate branch
  • Enabled custom allocator for NTT class
  • Fixed argument order in EltwiseReduceMod
  • Fixed build warnings on Windows and Mac

Version 1.0.1

  • Removed intel- prefix from headers and library name
  • Fixed CMake variables from 3rd party libraries from leaking
  • Fixed warnings when HEXL_DEBUG=ON