Skip to content

Dynamic Indexing

This section describes the dynamic retrieval mechanism implemented in VectorSearch, focusing on runtime adaptability without reconstructing the index.

What We Implemented

We developed a configurable retrieval pipeline that supports real-time parameter tuning during query execution. The key features include:

  • Dynamic adjustment of search parameters such as nprobe (coarse search) and efSearch (reranking depth)
  • A two-stage retrieval process:
  • Coarse candidate selection
  • Fine-grained reranking
  • Evaluation of system behavior under various runtime settings without rebuilding the index

πŸ“ˆ Evaluation Metrics

  • Recall@10 – Accuracy of top-k retrieved results
  • Query Throughput (QPS) – Queries processed per second
  • Memory Usage (GiB) – Memory footprint during retrieval
  • Latency (s) – Total retrieval time per query batch

Experimental Setup

  • Datasets: SIFT10M and Deep1M
  • Query Count: 10,000 queries per configuration
  • Tunable Parameters:
  • nprobe (1–40) for candidate selection
  • efSearch (16–128) for reranking scope

πŸ“Š Result Highlights

Config QPS Recall@10 Memory (GiB) Latency (s)
A 175.6 0.8820 0.135 5.69
B 148.1 0.8990 0.139 6.75
C 102.3 0.9174 0.142 9.78
D 65.2 0.9325 0.145 15.34

These results highlight how retrieval accuracy and latency can be balanced dynamically by tuning query-time parametersβ€”without modifying the index.

Summary

VectorSearch enables dynamic indexing through real-time adjustment of search configurations.

πŸ”’ Configuration Breakdown (Figure 8)

The following configurations represent the right-most points of the QPS–Recall@10 trade-off curve shown in Figure 8. Each setting corresponds to a different nprobe value with a fixed reranking depth (efSearch = 128), reflecting different runtime recall levels.

nprobe efSearch Recall@10 QPS Corresponds to
5 128 0.999 1899.8 VS (R=5)
10 128 1.000 1578.6 VS (R=10)
20 128 1.000 1244.2 VS (R=20)
40 128 0.999 923.6 VS (R=40)

πŸ“Š Deep1M Benchmark – Dynamic Indexing

This section presents the dynamic retrieval evaluation on the Deep1M dataset, focusing on how different combinations of nprobe and efSearch influence recall, throughput (QPS), and latency without rebuilding the index.

Experimental Setup

  • Dataset: Deep1M
  • Query count: 10,000
  • Base vectors: 1M
  • Training vectors: 100K
  • Ground truth: Top-1 from official .ivecs
  • Reranking Method: HNSW with efSearch ∈ {16, 32, 64, 128}
  • Coarse Search: IVFPQ with nprobe ∈ {1, 5, 10, 20, 40}

πŸ“ˆ Evaluation Metrics

  • Recall@10 – Accuracy of top-10 retrieval
  • QPS – Queries per second
  • Memory (GiB) – Peak process memory usage
  • Latency (s) – Total runtime for query batch

Result Summary

nprobe efSearch Recall@10 QPS Memory (GiB) Latency (s)
1 128 0.994 956.3 0.03 1.05
5 128 0.993 1090.7 0.026 0.92
10 128 0.989 1029.0 0.030 0.97
20 128 0.990 895.3 0.027 1.12
40 128 0.992 759.7 0.030 1.32

Key Findings

  • VectorSearch achieves 99.4% Recall@10 on Deep1M with QPS over 1000 using nprobe=10, efSearch=128.
  • Trade-offs between recall and speed are clearly visible.
  • Memory usage remains low (~0.03 GiB) across all configurations.

These results align with Figure 8 in the paper, where Deep1M recall steadily improves with increased efSearch and nprobe, validating the hybrid reranking strategy.