You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| 13 | LSH/sketch boundary | The `lsh` feature uses `sketchir` for cross-polytope hashing primitives. Keep `sketchir` focused on MinHash/SimHash/LSH sketches and durable sketch sidecars; keep vicinity focused on ANN storage, exact reranking, persistence modes, and fixed-recall benchmark rows. Benchmark sharing is useful, but PRT, RP-tree/RP-forest, SparseMIPS, and LEMUR should stay in vicinity unless their role becomes pure sketch generation. |
310
310
| 14 | External research claims | New implementation-scouting evidence points to Qdrant's mmap/residency model, Weaviate sparse visited sets, Qdrant/Vespa selectivity-gated ACORN, Faiss FastScan layout validation, DiskANN provider boundaries, and Qdrant-style private SIMD kernels as the most actionable prior art. Still verify newer roadmap claims before implementation: Extended RaBitQ, VSAG layout tricks, IP-DiskANN, PAG, SAQ, and ARM/SVE2 kernels. Keep `innr` as the optional dense-distance SIMD dependency; use local `pq_simd` work for PQ-code/LUT kernels that `innr` does not cover. |
311
311
| 15 | Dataset difficulty metadata | First sampled profile script exists for VEC1/NBR1 datasets, and local profiles now cover SIFT, GloVe-25/50/100/200, Deep Image, NYTimes, Fashion-MNIST, MNIST, and GIST. Optional generated split labels are reported when present, and `scripts/summarize_dataset_profiles.py` renders profile JSONs into the docs table shape. `scripts/summarize_ann_results.py --profile-dir PATH` now joins exact profile metrics into ANN coverage rows while leaving capped dataset labels unlinked unless an exact profile exists. |
312
-
| 16 | Profiling depth | Runtime profiles now cover HNSW search, ACORN filtered search, DiskANN direct-file rows, IVF-PQ ADC/allocation paths, dataset difficulty, and a same-binary `m_max=16` versus `m_max=32` HNSW search-only comparison. The ledger also records a build-path sample where `rustc` stalled in `readdir` over a large `target/debug/deps`; use isolated `CARGO_TARGET_DIR` values for future profile targets. HNSW binary inspection confirmed an indirect `blr x7` in `flush_batch`, and the new `distance_dispatch` Criterion group shows function-pointer dispatch costs on low-dimensional `innr` kernels, but the broad, `flush_batch`, and cosine-only HNSW dispatch rewrites all regressed or missed the keep threshold. The latest plain-HNSW symbolized sample still puts the largest leaf bucket inside `innr::dense::dot`; the ACORN samples first put the largest buckets in `HashMap::insert` and `reserve_rehash`, then shifted after dense tracking to inlined ACORN loop work plus `innr::dense::dot`. The kept ACORN fix is a safe visited-tracker change, not unsafe SIMD. The graph prefetch experiment removed a product unsafe surface and improved or held controls, so do not add local HNSW unsafe before safe heap/frontier/layout experiments. Next actual performance change should still record baseline, profiler target, negative controls, before/after, and rejected hypotheses in `docs/benchmark-results.md`. |
312
+
| 16 | Profiling depth | Runtime profiles now cover HNSW search, ACORN filtered search, DiskANN direct-file rows, IVF-PQ ADC/allocation paths, dataset difficulty, and a same-binary `m_max=16` versus `m_max=32` HNSW search-only comparison. The ledger also records a build-path sample where `rustc` stalled in `readdir` over a large `target/debug/deps`; use isolated `CARGO_TARGET_DIR` values for future profile targets. HNSW binary inspection confirmed an indirect `blr x7` in `flush_batch`, and the new `distance_dispatch` Criterion group shows function-pointer dispatch costs on low-dimensional `innr` kernels, but the broad, `flush_batch`, and cosine-only HNSW dispatch rewrites all regressed or missed the keep threshold. The latest plain-HNSW symbolized sample still puts the largest leaf bucket inside `innr::dense::dot`; the ACORN samples first put the largest buckets in `HashMap::insert` and `reserve_rehash`, then shifted after dense tracking to inlined ACORN loop work plus `innr::dense::dot`. Benchmark-feature HNSW frontier counters now report candidate pushes, pops, retain calls, pruned candidates, and max frontier length for the search-only bench; they show high-ef rows prune many stale candidates once per query while low-ef rows never call retain. The kept ACORN fix is a safe visited-tracker change, not unsafe SIMD. The graph prefetch experiment removed a product unsafe surface and improved or held controls, so do not add local HNSW unsafe before safe heap/frontier/layout experiments. Next actual performance change should still record baseline, profiler target, negative controls, before/after, and rejected hypotheses in `docs/benchmark-results.md`. |
0 commit comments