cuVS and Lucene: GPU-based Vector Search
summary
NVIDIA cuVS provides CUDA implementations for ANN and clustering and delivers a novel KAGRA graph built on GPU that batch-constructs indices far faster than CPU HNSW. Integration into Apache Lucene uses a JNI bridge to load and persist GPU-built indexes; benchmarks show 34x faster indexing at 99% recall on H100 and a case where eight H100s build ~2.5 TB of embeddings that would take ~a week on CPU, while common issues remain: merge/IO overhead, limited Lucene batch-query API, and ongoing latency/merge fixes.
AI-written summary · about
chapters (16)
- 0:00Introduction to GPU Vector Search
- 1:02What is Vector Search
- 3:57GPUs vs CPUs for Vector Search
- 5:21Introduction to cuVS
- 6:26cuVS and kAgra Algorithm
- 8:35Index Building on GPU vs CPU
- 10:42Benchmarking cuVS with Milvus
- 13:11Lucene cuVS Connector Overview
- 17:51Technical Implementation Details
- 20:22Benchmarking Results and Gaps
- 23:39Current Challenges and Overheads
- 26:48Query Performance Improvements
- 27:59Roadmap and Future Work
- 32:57Integration and Optimization Plans
- 36:30Resources and Open Source
- 37:35Q&A Session
related talks
47mUnlocking GPU Powers for Vector Search: OpenSearch's New Frontier
37mMuves: Multimodal & multilingual vector search w/ Hardware Acceleration
30mCuPy: A NumPy-compatible Library for GPU
01h 00mGPU Accelerated Computing & Optimizations on Cross-Vendor Graphics Cards with Vulkan & Kompute
25mLuminal - Search-Based Deep Learning Compilers
50mUnder the HAT: Empowering GPU Acceleration for Java
42mClojure is Not Afraid of the GPU
25mVectorVisor: A Binary Translation Scheme for Throughput-Oriented GPU Acceleration
