Skip to content

refactor: share scoring helpers and remove redundant state - #181

Merged
gouyt13 merged 1 commit into
mainfrom
refactor/shared-scoring-helpers
Oct 29, 2026
Merged

gouyt13 merged 1 commit into
mainfrom
refactor/shared-scoring-helpers

Conversation

@gouyt13

@gouyt13 gouyt13 commented Oct 29, 2026

Copy link
Copy Markdown
Member

Summary

Share the scalar binary-query accumulation loop between its runtime and template entry points, and share QG accumulation/correction between generic types and ISA-specific float estimators. Keep public validation, dispatch, numerical operation order and public signatures intact.

Remove the unused private HNSW query argument and redundant visited-set table size. The internal visited-set object layout shrinks; persisted layouts and stable core API remain unchanged. C++ consumers were rebuilt. No dependency change or performance improvement is claimed.

Testing

  • Portable Clang 23 CTest: 406 passed, 1 skipped; the placement test passed separately with OpenMP binding enabled.
  • Repository formatting, full configured clang-tidy and installed consumer checks passed; an installed-header double-QG probe also passed.
  • Independent review: 9,000 scalar oracle cases and visited lifecycle checks under ASan/UBSan; 2,304 float/double outputs exactly match baseline; all four x86 HNSW backend instantiations compile. Temporary probes are not committed; leak detection was disabled.
  • Fresh generic/AVX2/AVX512 estimator compilation matches baseline disassembly and relocations exactly. Runtime and four-bit scalar wrapper code also matches baseline in the tested configuration.

Native ARM, Windows and macOS execution was not rerun. Public wrappers, including the legacy ignored argument, are retained.

@github-actions github-actions Bot added the release:maintenance Release category managed from the PR title label Oct 29, 2026
@gouyt13
gouyt13 merged commit d2d3f79 into main Oct 29, 2026
49 checks passed
@gouyt13
gouyt13 deleted the refactor/shared-scoring-helpers branch October 29, 2026 09:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release:maintenance Release category managed from the PR title

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant