Skip to content

v2.9.0 - CPU

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 10 Jan 07:14
· 9 commits to main since this release
0b99d90

Summary

Concrete v2.9.0 introduces several enhancements, new features, and fixes. Highlights include:

  • Python 3.12 support: This version is fully compatible with Python 3.12 for both CPU and GPU releases.
  • Improved interoperability with TFHE-rs:
    • Added support for more data types, including signed integers and tensors.
    • TFHE-rs safe serialization features are now utilized to seamlessly import and export ciphertexts.
    • Modules are now supported in the TFHE-rs interoperability bridge.
  • Backend update: Concrete v2.9.0 uses the latest version of TFHE-rs (v0.10.0) as the backend for both CPU and GPU, benefiting from all its latest performance and feature improvements.

In addition to these key updates, this release includes further enhancements, optimizations, and bug fixes, as outlined below.

What's Changed

New Features

  • TFHE-rs data type support:
    • Added support for 8-bit signed integers in TFHE-rs (#1112).
    • Added support for TFHE-rs tensors (#1130).
  • Optimization features:
    • Introduced virtual circuit optimization (#1145).
    • Added ability to configure custom parameter restrictions in the optimizer (#1120, #1125).
  • Modules in TFHE-rs bridge: Extended interoperability to support modules (#1188).

Improvements

  • Backend updates: Updated CPU and GPU backends to the latest TFHE-rs version (v0.10.0) (#1154).
  • Python 3.12 support: Fully supports Python 3.12 (#1114, #1126).
  • Performance enhancements:
    • Added options to run module function evaluations concurrently (#1144).
    • Reduced memory usage during serialization (#1166, #1175).
  • Extended security: Added 132-bit security curves (#1174).
  • Refactoring: Simplified low-level API to streamline C++ Python bindings and expose more fine-grained objects (#1078).
  • Documentation: Added examples demonstrating TFHE-rs interoperability (#1151, #1190).

Fixes

  • TFHE-rs interoperability:
    • Supported higher bit-width for Concrete computations (#1136).
    • Utilized TFHE-rs safe serialization for improved interoperability (#1103, #1154).
  • Noise handling: Improved noise propagation in the optimizer (#1104).

Other changes

Resources