Hi,
From my understanding, Knowhere internally calls into HNSWlib for HNSW index construction and search. I have a question regarding which kernel implementations are actually used during this flow.
My questions:
-
When Knowhere uses HNSW for indexing/search, are the distance computations (L2 / IP) executed by: 1. Knowhere’s own optimized vector kernels (e.g., SVE/NEON in distances_*), 2. or the scalar functions from HNSWlib’s space_l2.h and space_ip.h?
-
If Knowhere’s optimized kernels (e.g., SVE) are not reused in the HNSW integration, is there any plan to unify or bridge the distance computation layer between Knowhere and HNSW, so that ARM-optimized paths can be reused across both?