Details
-
Task
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
None
-
None
-
New
Description
Creating HNSW graphs involves doing many repeated calls to HnswGraph#search. Profiles from nightly benchmarks suggest that allocating data-structures incurs both lots of heap allocations (http://people.apache.org/~mikemccand/lucenebench/2022.01.23.18.03.17.html#profiler_1kb_indexing_vectors_4_heap) and CPU usage (http://people.apache.org/~mikemccand/lucenebench/2022.01.23.18.03.17.html#profiler_1kb_indexing_vectors_4_cpu). It looks like reusing data structures across invocations would be a low-hanging fruit that could help save significant CPU?
Attachments
Attachments
Issue Links
- links to