Skip to content

Conversation

@ldematte
Copy link
Contributor

@ldematte ldematte commented Nov 5, 2025

Backports the following commits to 9.2:

CuVSResourcesManager has the purpose of controlling access to resources to ensure a correct level of parallelism (allowing more than 1 GPU thread, but having a reasonable upper bound) and controlling the amount of GPU memory needed to prevent CUDA out-of-memory errors.

This PR extends the memory control part by introducing different strategies for memory accounting ("real", based on API calls to the device, and "tracking", which remembers the amount of memory requested during acquisition) and different estimations based on the CAGRA graph build algorithm.

The former will allow us to use pooled memory (where the amount of available memory will be different from the free device memory), the latter to use the IVFPQ CAGRA graph build algorithm for larger datasets.
@ldematte ldematte added :Search Relevance/Vectors Vector search >non-issue auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) backport Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch labels Nov 5, 2025
@elasticsearchmachine elasticsearchmachine merged commit 729ef41 into elastic:9.2 Nov 5, 2025
34 checks passed
@ldematte ldematte deleted the backport/9.2/pr-137588 branch November 5, 2025 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) backport >non-issue :Search Relevance/Vectors Vector search Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch v9.2.2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants