CAGRA graph optimizer: clamp rev_graph_count #1987
Merged
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 fixes a potential out of bounds access.
While building the reverse graph, we count the number of potential edges in
rev_graph_count
raft/cpp/include/raft/neighbors/detail/cagra/graph_core.cuh
Lines 204 to 205 in 047bfb2
While we store only max
output_graph_degree
neighbors, therev_graph_count
can be larger thanoutput_graph_degree
. The loop that usesrev_graph
is updated to take this limit into account.