Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use of IVF with HNSW32 coarse quantizer #243

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

abhinavdangeti
Copy link
Member

Bringing back the coarse quantizer into use per observations Aditi recorded earlier. A slight adjustment now is to deploy it only over a vector count of 100000.

Bringing back the coarse quantizer into use per observations
Aditi recorded earlier. A slight adjustment now is to deploy
it only over a vector count of 100000.
@abhinavdangeti
Copy link
Member Author

@metonymic-smokey would you share the numbers you have comparing the considered index classes for this doc count at the unit level.

@metonymic-smokey
Copy link
Member

metonymic-smokey commented May 16, 2024

Numbers from go-faiss unit level testing -

nq = 100, k = 100

256 dims

nvecs QPS without HNSW QPS with HNSW
200k 425 311
500k 257 244
1M 170 145

512 dims

nvecs QPS without HNSW QPS with HNSW
1M 75 62

1024 dims

nvecs QPS without HNSW QPS with HNSW
1M 20 15

2048 dims

nvecs QPS without HNSW QPS with HNSW
200k 14 5
500k 11 5
1M 9 4

These numbers were prior to the latest go-faiss PRs being merged.
I'm not sure that 100k is a high enough number to use the coarse quantiser and the number should depend on the dims too since it's most effective for high dims.

@abhinavdangeti
Copy link
Member Author

Hmm, but per the numbers you've shared it seems even at higher dims the QPS seems to fall with the coarse quantizer?

@abhinavdangeti abhinavdangeti changed the title MB-60943: Use of IVF with HNSW32 coarse quantizer Use of IVF with HNSW32 coarse quantizer Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants