From 60c0db0f21d4e106837259e9299a6a1d72730ff9 Mon Sep 17 00:00:00 2001 From: Amir Sadoughi Date: Tue, 24 Sep 2024 16:20:51 -0700 Subject: [PATCH] Increment next release, v1.9.0 --- CHANGELOG.md | 68 ++++++++++++++++++++++++++++++++++++++----- CMakeLists.txt | 2 +- faiss/Index.h | 2 +- faiss/python/setup.py | 2 +- 4 files changed, 63 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d289ec2f6..22289ebfd5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,16 +1,67 @@ # Changelog All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), -and this project DOES NOT adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) -at the moment. +## [Unreleased] -We try to indicate most contributions here with the contributor names who are not part of -the Facebook Faiss team. Feel free to add entries here if you submit a PR. +## [1.9.0] - 2024-10-04 +### Added +- Add AVX-512 implementation for the distance and scalar quantizer functions. (#3853) +- Allow k and M suffixes in IVF indexes (#3812) +- add reconstruct support to additive quantizers (#3752) +- introduce options for reducing the overhead for a clustering procedure (#3731) +- Add hnsw search params for bounded queue option (#3748) +- ROCm support (#3462) +- Add sve targets (#2886) +- add get_version() for c_api (#3688) +- QINCo implementation in CPU Faiss (#3608) +- Add search functionality to FlatCodes (#3611) +- add dispatcher for VectorDistance and ResultHandlers (#3627) +- Add SQ8bit signed quantization (#3501) +- Add ABS_INNER_PRODUCT metric (#3524) +- Interop between CAGRA and HNSW (#3252) +- add skip_storage flag to HNSW (#3487) +- QT_bf16 for scalar quantizer for bfloat16 (#3444) +- Implement METRIC.NaNEuclidean (#3414) +- TimeoutCallback C++ and Python (#3417) +- support big-endian machines (#3361) +- Support for Remove ids from IVFPQFastScan index (#3354) +- Implement reconstruct_n for GPU IVFFlat indexes (#3338) +- Support of skip_ids in merge_from_multiple function of OnDiskInvertedLists (#3327) +- Add the ability to clone and read binary indexes to the C API. (#3318) +- AVX512 for PQFastScan (#3276) -## [Unreleased] ### Changed -- Previously, when moving indices to GPU with coarse quantizers that were not implemented on GPU, the cloner would silently fallback to CPU. This version will now throw an exception instead and the calling code would need to explicitly allow fallback to CPU by setting a flag in cloner config. +- faster hnsw CPU index training (#3822) +- Some small improvements. (#3692) +- First attempt at LSH matching with nbits (#3679) +- Set verbosoe before train (#3619) +- Remove duplicate NegativeDistanceComputer instances (#3450) +- interrupt for NNDescent (#3432) +- Get rid of redundant instructions in ScalarQuantizer (#3430) +- PowerPC, improve code generation for function fvec_L2sqr (#3416) +- Unroll loop in lookup_2_lanes (#3364) +- Improve filtering & search parameters propagation (#3304) +- Change index_cpu_to_gpu to throw for indices not implemented on GPU (#3336) +- Throw when attempting to move IndexPQ to GPU (#3328) +- Skip HNSWPQ sdc init with new io flag (#3250) + +### Fixed +- FIx a bug for a non-simdlib code of ResidualQuantizer (#3868) +- assign_index should default to null (#3855) +- Fix an incorrectly counted the number of computed distances for HNSW (#3840) +- Add error for overflowing nbits during PQ construction (#3833) +- Fix radius search with HSNW and IP (#3698) +- fix algorithm of spreading vectors over shards (#3374) +- Fix IndexBinary.assign Python method (#3384) +- Few fixes in bench_fw to enable IndexFromCodec (#3383) +- Fix the endianness issue in AIX while running the benchmark. (#3345) +- Fix faiss swig build with version > 4.2.x (#3315) +- Fix problems when using 64-bit integers. (#3322) +- Fix IVFPQFastScan decode function (#3312) +- Handling FaissException in few destructors of ResultHandler.h (#3311) +- Fix HNSW stats (#3309) +- AIX compilation fix for io classes (#3275) + ## [1.8.0] - 2024-02-27 ### Added @@ -288,7 +339,8 @@ by conda install -c pytorch faiss-gpu cudatoolkit=10.0. - C bindings. - Extended tutorial to GPU indices. -[Unreleased]: https://github.com/facebookresearch/faiss/compare/v1.8.0...HEAD +[Unreleased]: https://github.com/facebookresearch/faiss/compare/v1.9.0...HEAD +[1.9.0]: https://github.com/facebookresearch/faiss/compare/v1.8.0...v1.9.0 [1.8.0]: https://github.com/facebookresearch/faiss/compare/v1.7.4...v1.8.0 [1.7.4]: https://github.com/facebookresearch/faiss/compare/v1.7.3...v1.7.4 [1.7.3]: https://github.com/facebookresearch/faiss/compare/v1.7.2...v1.7.3 diff --git a/CMakeLists.txt b/CMakeLists.txt index ae75fc17f2..c4fea46a3d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,7 +46,7 @@ rapids_cuda_init_architectures(faiss_c_library) endif() project(faiss - VERSION 1.8.0 + VERSION 1.9.0 DESCRIPTION "A library for efficient similarity search and clustering of dense vectors." HOMEPAGE_URL "https://github.com/facebookresearch/faiss" LANGUAGES ${FAISS_LANGUAGES}) diff --git a/faiss/Index.h b/faiss/Index.h index f57140ec47..1773758628 100644 --- a/faiss/Index.h +++ b/faiss/Index.h @@ -17,7 +17,7 @@ #include #define FAISS_VERSION_MAJOR 1 -#define FAISS_VERSION_MINOR 8 +#define FAISS_VERSION_MINOR 9 #define FAISS_VERSION_PATCH 0 // Macro to combine the version components into a single string diff --git a/faiss/python/setup.py b/faiss/python/setup.py index b1ae4b1be2..46cacc0514 100644 --- a/faiss/python/setup.py +++ b/faiss/python/setup.py @@ -74,7 +74,7 @@ """ setup( name='faiss', - version='1.8.0', + version='1.9.0', description='A library for efficient similarity search and clustering of dense vectors', long_description=long_description, url='https://github.com/facebookresearch/faiss',