Optimizing SSD-Resident Graph Indexing for High-Throughput Vector Search
Weichen Zhao, Yuncheng Lu, Yao Tian, Hao Zhang, Jiehui Li, Minghao Zhao, Yakun Li, Weining Qian

TL;DR
VeloANN enhances SSD-resident graph indexing for vector search by optimizing data layout and runtime to significantly improve throughput and latency, approaching in-memory performance with minimal memory use.
Contribution
The paper introduces VeloANN, a novel SSD-based graph index system employing locality-aware data placement, asynchronous runtime, and buffer management to boost performance and efficiency.
Findings
Up to 5.8x throughput improvement over state-of-the-art SSD systems.
Achieves 0.92x the throughput of in-memory systems with only 10% memory.
Reduces latency by up to 3.25x compared to existing disk-based solutions.
Abstract
Graph-based approximate nearest neighbor search (ANNS) methods (e.g., HNSW) have become the de facto state of the art for their high precision and low latency. To scale beyond main memory, recent out-of-memory ANNS systems leverage SSDs to store large vector indexes. However, they still suffer from severe CPU underutilization and read amplification (i.e., storage stalls) caused by limited access locality during graph traversal. We present VeloANN, which mitigates storage stalls through a locality-aware data layout and a coroutine-based asynchronous runtime. VeloANN utilizes hierarchical compression and affinity-based data placement scheme to co-locate related vectors within the same page, effectively reducing fragmentation and over-fetching. We further design a record-level buffer pool, where each record groups the neighbors of a vector; by persistently retaining hot records in memory,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Data Storage Technologies · Parallel Computing and Optimization Techniques · Network Packet Processing and Optimization
