mlxVS brings cuVS-style GPU nearest-neighbor search to Apple Silicon with MLX

·2026.11.12 05:46

Key point

The open-source library supports exact k-NN, k-means, NN-Descent, and CAGRA algorithms, outperforming CPU-based hnswlib in both build time and search speed.

Details

  • Open-source Apache-2.0 library mlxVS ports NVIDIA's cuVS GPU nearest-neighbor algorithms to Apple Silicon using the MLX framework.
  • On SIFT1M (985k x 128) with a MacBook Pro M3 Pro, mlxVS CAGRA achieves 69,500 queries/s at 0.976 recall@10, compared to 32,200 queries/s for CPU-based hnswlib.
  • CAGRA graph pruning raises recall@10 from 0.939 to 0.993 at degree 32 and itopk 128 while maintaining similar search speeds.
  • Implementation uses Metal kernels with FP16 SIMD-group matrix multiplies for NN-Descent local joins and a single-CTA design for graph search that keeps the visited set under 16 KB to pass Metal's 32 KB threadgroup memory validation.
  • Currently limited to static indices without inserts or deletes, requires float32 data, and benchmarks are based on batched queries rather than single-query latency.

This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.

Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.