Skip to content

investigate and address heuristics perf wrt specific dataset #171

Description

@nvzm123
Image

Reproducer:

  1. Check out latest main branches of cuvs and cuvs-lucene
  2. upload dataset alpha-123 (please ping me for access -- note requires NVIDIA access -- note alpha-123 is not the real name of dataset)
  3. run with automatic heuristics

This should reproduce the green line with poor search latency performance.

My hypothesis: I suspect the intrinsic dimension of the manifold within 1536d dataset isn't large enough to produce a preponderance of hub-vectors to account for the fact that we are running the benchmark on a baselayer-only graph.

What is apparent from extra tests: when I bypass the automatic heuristics with my own custom parameters, I get even worse search latency performance than the performance achieved by the automatic heuristics when I set cagraHnswLayers=1, but then the search-latency performance gradually increases until we basically match the expected search-latency at cagraHnswLayers=6.

Question: why can't we just increase the number of cagraHnswLayers while using the automatic heuristics?
Answer: we hit the "not enough KNN neighbors" RAFT errors when we try to increase the number of cagraHnswLayers above 1 (note: I typically see that behavior when nProbes is too low or nLists is too high)

Note: FAISS implements both of their CAGRA to HNSW conversions differently from cuvs-lucene, so this might only be an issue with cuvs-lucene?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions