Revert cagra-hnswlib wrapper refactoring to allow overriding heuristics#2287
Open
achirkin wants to merge 1 commit into
Open
Revert cagra-hnswlib wrapper refactoring to allow overriding heuristics#2287achirkin wants to merge 1 commit into
achirkin wants to merge 1 commit into
Conversation
tfeher
requested changes
Jul 2, 2026
| cuvs_cagra<T, IdxT> cagra_wrapper{this->metric_, this->dim_, bps}; | ||
|
|
||
| // build the CAGRA index | ||
| cagra_wrapper.build(dataset, nrow); |
Contributor
There was a problem hiding this comment.
Let's assume that the dataset is large and the user only provides M and ef_construction parameters. We would want the benchmark to fall back to ACE if needed. hnsw::build() enables such fallback, but I think cagra::build() build does not. Let's look for an solution where the benchmark can also provide such fall-back if the user does not override the build algorithm.
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.
Bring back the ability to override CAGRA build parameters via index config for CAGRA-HNSW wrapper.
PR #1719 attempted to simplify the wrapper logic by using
hnsw::buildhelper.The helper uses CAGRA-HNSW heuristics to set up optimal CAGRA build parameters based on the passed HNSW parameters. Unfortunately, this makes it impossible to modify individual CAGRA build parameters via the configs, which is necessary for benchmarking the performance of the heuristics themselves.
This PR reverts the relevant files to bring back the old behavior.