Update dependency faiss-cpu to v1.14.3#350
Open
red-hat-konflux[bot] wants to merge 1 commit into
Open
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## main #350 +/- ##
=======================================
Coverage 52.61% 52.61%
=======================================
Files 10 10
Lines 745 745
=======================================
Hits 392 392
Misses 353 353
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
7c57d45 to
dc11256
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==1.12.0→==1.14.3==1.12→==1.14.3Release Notes
facebookresearch/faiss (faiss-cpu)
v1.14.3Compare Source
Added
261d8f2Add IVFSQTurboQSearchParameters to init.pyi stub (#5304)684a32dAdd manual Faiss nightly workflow dispatch (#5300)10b6b2aAdd MetalIndexIVFFlat with IVF scan/merge kernels and expanded top-k support (#5202)74d3619TurboQuant in ScalarQuantizer: full Algorithm 2 (QJL stage) with SIMD and optimizations (#5170)5066009Add Python HNSW tutorial (#5260)3cff0f4Add Sapphire Rapids optimizations for ScalarQuantizer (L2, IP) (#5173)46ef80dSupport IndexIDMap/IndexIDMap2 in reverse_index_factory (#5266)420158bAdd VPOPCNTDQ-based HammingComputer for Sapphire Rapids+ (#5183)d8f1c27Implement NEON-based FINE_SIZE=2 specializations for Index2LevelDecoderImpl and IndexPQDecoder (#5262)0951b53Support user provided blas library (#5189)215740eSVS static vamana support (#5224)d24ad6eAdd is_similarity mode to HNSW (#5246)aa332cdImplement NEON-based FINE_SIZE=2 specializations for Index2LevelDecoderImpl and IndexPQDecoder (#5255)5d9aae6Add faiss-gpu pip wheel packaging (#5131)6f1cf64Add VPOPCNTDQ-based RaBitQ kernel for Sapphire Rapids+ (#5149)Changed
262fc3cRe-enable musllinux wheels for faiss-cpu (#5299)1cdc370Run CI on push to main to refresh ccache cache (#5291)379ee75Reserve VisitedTableSet capacity to avoid rehashes during HNSW search (#5290)6513a24Enable Metal by default on Apple machines (#5280)fe46c3cValidate bool fields during deserialization (#5279)480f917Type imbalance_factor and wire the .pyi stub into the buck build (#5269)e60baebTemplatize search_from_candidate_unbounded for VisitedTable devirtualization (#5270)c000190Accelerate ScalarQuantizer::QT_bf16 with AVX512-BF16. (#4889)7504fc8Upgrade CUVS Version to 26.06 (#5240)d12683cfacebook-unused-include-check in IndexBinaryIVF.cpp (#5263)99d9013facebook-unused-include-check in distances_simd.cpp (#5264)2f0368bfacebook-unused-include-check in hamming_avx2.cpp (#5265)0c72755Remove unused include of platform_macros.h in partitioning.cppe6b8f6dIndexHNSW: use HNSW::is_similarity for IP/similarity metrics + tests (#5226)c0575f2avoid runtime checks in VisitedTable (#5234)1cb7601Eliminate per-code denormalization in uniform SQ distance computation (#5166)f29d862RevertD106693: Implement NEON-based FINE_SIZE=2 specializations for Index2LevelDecoderImpl and IndexPQDecoderef96e3dUpdating CI to ROCm 7 (#5196)f5217d7facebook-unused-include-check in IndexBinaryHNSW.cpp (#5251)3e6ed99facebook-unused-include-check in IndexBinaryIVF.cpp (#5252)108868bReject null inner index in IDMap and BinaryFromFloat deserialization (#5239)a64b549Add IndexLattice r2 limit to cap decode-cache build cost (#5238)0993715faiss: Replace remaining get_single_code calls with ScopedCodes (#5248)910e435facebook-unused-include-check in hamming_avx2.cpp (#5242)d581f2fUse per-SIMD TU scan for standalone PQ (AVX2 gather inlining) (#5233)Fixed
20afed0make intentional cudaGetLastError() error-clears explicit ((void)) for clang21 -- fixes S674096 (#5302)e420e94Move partitioning shifts tables to .rodata to fix non-AVX2 import SIGILL (#5298)15bd823Fix cuVS nightly (#5273)17cc967Fix AVX512_SPR dispatch on AMD: require AVX512_FP16 CPUID (#5281)e69bfeeStabilize RaBitQ tests on AVX512_SPR by switching to cross-level equivalence (#5277)c4c6514Stub fixes: knn torch overload, ResidualCoarseQuantizer ctor, remove duplicate I/O defs (#5283)eb4c1eaFix Windows ARM64 (MSVC) build broken by NEON SIMD templatization (#5274)ab63238Install missing InvertedListScannerStats.h header (#5268)1405415Fix broken fbcode//faiss/tests:test_index_binary - test_replicas (test_index_binary.TestReplicasAndS (#5258)34eb989fix(python): int64 coercions for MapLong2Long + InvertedLists DOWNCAST chain (#5257)d492af4faiss: initialize ids_tab to -1 in Top1BlockResultHandler::begin_multiple (#5249)a4e417fFix: static SIMD dispatch falls to scalar for avx512_spr/avx512/arm_sve builds (#5057)3edc6e1Guard Panorama autovec pragmas against nvcc frontend (#5241)c7689c4Fix ODR violation in ScannerMixIn by adding SIMDLevel template parameter (#5148)ca87f41Open SIFT demo data in binary mode (#5213)v1.14.2Compare Source
Added
b7618faAdd SuperKMeans: faster k-means via ADSampling+PDX progressive pruning (#5168)66c9d08Add SuperKMeans foundations: math primitives, PDX layout, SIMD kernelsdc7afcfSupport SVSVamana as IVF coarse quantizer via index_factory (#5175)7a8e4ddCI: cross-compile for riscv64 with RVV dynamic dispatch (#5184)0320279Introduce RVV (#5156)417c53eAdd NoneSIMDLevel context manager for cross-level reference checks (#5158)46def46Enable SVS IVF Index in FAISS (#4801)585ba79Add pip install support via scikit-build-core + cibuildwheel (#4862)799bf3aIntroduce early stop facilities for IVF, attempt 2 (#5160)66cea52Add Metal GPU backend for Apple Silicon (IndexFlat) (#5144)17fd333Add database-parallel flat search for few-query workloads (#5000)c7f07bbAdd C++ per-SIMD-level tests for distance utility functions (#5154)0242758Add bit-exact RQ encode cross-level test (#5155)2f68a37Add per-SIMD-level tests for hamming.h utils + fix crosshamming bug (#5153)a7116edAdd TurboQuant (CPU) (#5049)11e5d39Add optional persistent locks to IndexHNSW for incremental adds (#5031)e82aa28Add OMP exception capture helpers and migrate IndexIVF (#5111)6299bffAdd QT_0bit to ScalarQuantizer for centroid-only IVF distance (#5079)3030fe0Add filtered search for cuVS indexes (#4858)f83ea51Support IVFRaBitQSearchParameters in RaBitQFastScan scanner (#5081)82a8235Add iterator callbacks for distance computation and heap admission (#5082)b068fd9Support IO_FLAG_MMAP_IFC on Darwin (#5058)113bf6cExpose fast_scan_code_size from non-IVF FastScan indices (#5077)786d993Expose a fast scan code size from fast scan indices (#5064)95f1e45OMP build diagnostics (#4842)c4ac852Add a balanced assignment function (#5050)8402a6bAdd unit tests for HNSW deserialization validation (#5033)1dc5e1fV2 enable specifying a subset of SIMD levels that are implemented at dispatching time. (#4959)e6f5c0cAdd SIMD dynamic dispatch migration guide (#4973)8177a3bAdd nvidia-smi diagnostic call (#4960)67fc664Add CappedInvertedLists for per-list size limiting (#4880)e57a893introduceSingleQueryResultCollectHandler(#4926)748c031HNSW: add prune_headroom to avoid O(n^2) pruning/locking, headroom test (#4847)1e4d227Introduce an early stop threshold for Kmeans (#4894)4a0fba1Add FastScanCodeScanner dispatch boundary with per-SIMD TUs (#4897)0fcba22Add sentinels to index format enums. (#4907)40480fbSupport limits on index deserialization loops — useful for tests (#4902)1e4544aAdd defaulted SIMDLevel template parameter to handler and scaler types (#4867)abdd37bAdd Pixi installation option to docs (#5214)Changed
9d5491aTemplatize SIMDResultHandler on SL, mark handle() final (#5223)b63f236Upgrade GitHub Actions CI from CUDA 12.6 to CUDA 13.2 (#5207)a9f5baaMove RISC-V fast_scan forwarders to dedicated impl-riscv.cpp (#5216)8932716Validate SVS storage_kind via shared helper at all deserialization read sites (#5204)bc490b5Make IVFPQSearchCagraConfig dtype fields settable from Python (#5191)ffd3727Update pattern for index factory string with SVSVamana (#5201)f37041dExtract Metal shaders to standalone .metal file with kernel wrapper class (#5167)d98364eperf: reserve() to avoid rehashing/reallocation (#5193)4eee3d7Add tolerance and assertion log to test_OIVFPQ (#5188)2322afdfaiss: parallelize post-BLAS reduction loop and end_multiple() in result handlers (#5185)967eda6Replace FAISS_ASSERT with FAISS_THROW_FMT for unsupported SVSStorageKind (#5182)715725dEnable verbose mode for TestPyPI publish step (#5181)5e12311Filter wheel artifacts before publishing to PyPI (#5179)28b2b66Inline PQ code distance kernels into scanner TUs (#5159)c41405dEnforce minimum training set size for ScalarQuantizer, check nullptr (#5141)44c1972Enable ccache in GitHub Actions cmake builds (#5157)e09de2dHarden compute_query_factors: add preconditions, handle aliasing, remove dead checks6a9936cHoist per-iteration vector allocations in IndexIVFRaBitQFastScan::compute_LUTc3460c9Convert binary index Hamming callers to dynamic dispatch (#5071)ecac651Convert hamming.cpp public API to dynamic dispatch (#5070)8d1b964Enable dynamic dispatch build on Windows (#5127)a25bcb1Rely on cuVS for default values (#5140)0622841Panorama Optimizations (#5041)f4338adParameterize existing tests with @for_all_simd_levels (#5134)9d56749Wire 512-bit QBS kernels into fast scan DD dispatch (#5075)bdf877ffacebook-unused-include-check in IndexNNDescent.cpp (#5132)632427ffbcode/faiss/invlists (#5048)e23c661Replace dispatch_HammingComputer with with_HammingComputer (#5126)ed7e1f2Hoist SIMD dispatch outside loops in 4 call sites (#5074)582246bRemove use of __AMDGCN_WAVEFRONT_SIZE macro with it being deprecated in ROCm 7 (#4619)2dff119Add braces around single-line control flow statementscc0c087Hoist SIMD dispatch out of approx_topk hot loops (#5073)18f93fdReplace SSE3 intrinsics in Index2Layer with portable scalar code (#5076)42765abOptimize RaBitQ FastScan LUT construction for high-dimensional data (#5110)ec5e70cOptimize multibit sign-bit unpacking in RaBitQ FastScan handlers (#5097)3f127eeThread qb/centered search params through FastScan LUT and handler (#5095)3c19c52Use std:: qualified math functions to avoid float-to-double promotion (#5088)48d2b0cReplace typedef with using declarations (#5086)e12debcRemove extra semicolons after inline member function definitions (#5085)5679d3aHNSW Cagra base-level entrypoint sampling parallel (#5068)c4efc42Remove bare simdlib type aliases from simdlib_dispatch.h (#5069)4a63c9eConvert partitioning to dynamic dispatch (#5062)f226be4Roll out @for_all_simd_levels to key test files (#5061)afd6949fbcode/faiss/impl/HNSW.cpp (#5059)658c434Replace bare assert() with FAISS_THROW_IF_NOT in core index files (#5052)364749eRe-enable ROCm runner for AMD GPU CI (#4854)faeac86Update outdated C++17 and Python 2 references (#5045)77e6028Use HTTPS for GitHub links in README (#5043)91843bdUse explicit ISA flags instead of -march/-mtune=sapphirerapids (#5034)acac823Merge .gitignore updates from faiss-gpu-cu132 into main (#4996)8d8881eMake distance_compute_blas_threshold dimension-aware (#5022)553c78bHNSW SIMD dispatch (#5015)499b488close the loop on ivf rabitq fast scan filter integration (#5026)aef066aSVS 0.3.0 (#4999)cc34603reuse unpack buffer in multibit IVFRaBitQFastScan refinement (#5003)d81584dUpdate Python type stubs: fix class hierarchy and add missing base classes (#5004)d1c432fConvert rabitq_simd.h to runtime SIMD dispatch (#4912)6bca961Convert distances_fused/ to runtime SIMD dispatch (#4911)04d0d56facebook-unused-include-check in distances_simd.cpp (#5013)7eb05f0facebook-unused-include-check in partition.cpp (#5012)7e04fa2Update Python type stubs (init.pyi) to match current API (#4998)db0e798Use omp_get_max_threads() for OpenMP thread count (#4991)9af8384Bump openblas from 0.3.30 to 0.3.32 in conda recipes (#4994)c048917Enable quieting FAISS warning "inverted lists not stored" (#4964)b2ddb46Loosen SVS findpackage version requirement (#4969)d8c3d26Upgrade to C++20 for CUVS (#4881)94f2b51Rename train() with queries to train_with_queries (#4955)02d609cUpgrade cuVS Version to 26.02 (#4945)55a47c9Upgrade cuVS Version to 26.02, switch various BUCK files over to 26.02 (#4788)0d147a7Make READVECTOR byte limit configurable (#4928)9962fbeHNSW: narrow critical section during add to avoid lock contention (#4915)b1feeb7Convert approx_topk and residual_quantizer_encode_steps to SIMDLevel dynamic dispatch (#4923)58a57e6Re-enable backwards compatibility tests for rabitq now that 1.14.1 released (#4924)5dcef18Refactor binary HNSW stats to use OpenMP reduction instead of destructor sync (#4910)d8c1a97move distances implementation into SIMD specific compile units (#4906)ea11f0eSwitch all search paths to FastScanCodeScanner and remove make_knn_handler (#4904)57190f9Wire RaBitQ search through FastScanCodeScanner dispatch (#4903)79e8acbParallelize compute_residuals in IndexIVFPQ (#4654)eddea2aExtract RaBitQ result handler to impl/fast_scan/ (#4895)734751aExtract PQ4 kernels to includable headers in impl/pq_4bit/ (#4868)bb298a2convert simdlib in distances_simd.cpp (#4884)8d8268cTemplatize simdlib types on SIMDLevel (#4866)c74809aImprove exception safety for the 'own_fields'/allocation pattern (#4864)c6cf004uselevelbut not0in neighbor_range(i, level, &begin, &end) (line 198) (#5005)Fixed
cb69d7cFix Dq=None crash and np.empty nondeterminism in search_preassigned wrappers (#5221)5c92c5cFix flaky test_hnsw smoke test by increasing efSearch (#5222)8d3cc92Fix clone_index null return for IndexRowwiseMinMax (#5220)ff1d543Fix python_unnecessary_generator_set_comprehension issues in faiss/tests/test_fastscan_filter.py (#5215)e235915Fix FastScan DD regression by threading SIMD level through kernel functions (#5210)172324aFix IDSelectorBitmap conversion to cuVS bitset (#5211)6bd749eFix IDSelector leak via SearchParameters.sel setter (#5208)6376bc3Fix CI: (cuVS) conda shards cache lock, (ARM) bump openblas, (SVS) fix LeanVec double-destruction (#5209)4b5a735Fix python_unnecessary_generator_set_comprehension issues in faiss/.../bench_fw/optimize.py (#5205)6789bf5Validate IndexIDMap id_map and inner-index ntotal consistency to prevent search-time null deref (#5203)f750815Pin MKL to <2026 to avoid soname mismatch with pytorch (#5192)bb2ce71Fix 7 broken tests (#5197)f323c0fFix backward compat test (#5195)23cd94cReduce BinaryCagra test parameters to prevent CI timeouts (#5194)85fc627Validate ProductQuantizer M*ksub during deserialization to prevent oversized allocations (#5187)6cef1bbFix cuVS and ROCm CI conda environment failures (#5180)4a471eePin conda <25.7 to fix Windows build (#5176)a9c0d41Work around GCC 12 miscompilation of AVX2 histogram (#5124)40a8cc0Fix lints associated with early stop facilities for IVF (#5172)1e69d5aFix peak-memory spike when loading IVF invlists via IO_FLAG_MMAP_IFC (#5122)9942229Fix add_sa_codes silently accepting non-int64 ids, corrupting stored labels (#5171)c5ddbc7c_api: fix IndexShards own_indices getter/setter name mismatch (#5165)8380e25Fix avx512 unit test (#5161)71448c0Fix issue with svs tests (#5162)6c70444Validate code_size during deserialization to prevent oversized allocations (#5151)9dbb81cSet own_fields after reading Index2Layer sub-quantizer during deserialization (#5147)01b22b4Fix memory leak warning for unordered_multimap in IndexIVFFlatDedup Python binding (#1667) (#5145)130fc24Fix flaky test (#5150)dfce6e9Fix OMP exception safety in IndexHNSW search (#5133)c627334Fix sa_decode offset bug and integer overflow in IndexRefine (#5143)1b4b995Fix implicit integer precision loss from 64-bit to 32-bit (#5091)b056894Fix miscellaneous lint warnings (#5093)ed11f28Fix broken fbcode//faiss/tests:test_contrib - test_checkpoint (test_contrib.TestBigBatchSearch) (#5139)277c53dFix PCA training bug and memory safety issues in VectorTransform.cpp (#5138)8312540Fix integer type truncation in IDSelectorBatch bloom filter mask (#5136)9cbc8daFix integer overflow and unbounded loop in Clustering.cpp (#5130)3c4056dFix race condition in HNSW::add_with_locks (#5129)6e64c5dBump GCC pin in faiss-gpu conda recipe to fix AVX2 SIMD miscompilation (#5125)58f6ebbAdd per-read byte limit to SVS ReaderStreambuf to prevent OOM from corrupt index data (#5118)817ecf9Validate inverted list entry sizes against deserialization byte limit (#5117)e6be162Validate VectorTransform dimension consistency during deserialization (#5115)6707eacAdd is_trained check to IndexIVF search and range_search to prevent querying untrained indexes (#5114)349df70Validate IndexHNSW2Level storage type during deserialization and search (#5113)edd6f3bReject null quantizer during IVF index deserialization ([#5112](httConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
To execute skipped test pipelines write comment
/ok-to-test.Documentation
Find out how to configure dependency updates in MintMaker documentation or see all available configuration options in Renovate documentation.