Skip to content

perf: TermFieldDoc — add NormByte field; targeted Reset writes#97

Open
maneuvertomars wants to merge 1 commit into
masterfrom
perf-gar
Open

perf: TermFieldDoc — add NormByte field; targeted Reset writes#97
maneuvertomars wants to merge 1 commit into
masterfrom
perf-gar

Conversation

@maneuvertomars

Copy link
Copy Markdown
Member

Overview

Companion to blevesearch/zapx#438 and blevesearch/bleve#2383 (the "perf-gar" WAND/MAXSCORE effort).

Adds a NormByte uint8 field to TermFieldDoc to carry the raw SmallFloat norm byte from the zapx v18 norm column reader (§20) to the BM25 impact table scorer (§25) in bleve, avoiding a norm re-decode at score time. Also narrows Reset to targeted field writes.

Both companion PRs pin this change as a pseudo-version; this needs to land and be tagged before those can move off branch builds.

Add NormByte uint8 field to carry the raw SmallFloat norm byte from the zapx
norm column reader (§20) to the BM25 impact table scorer (§25), avoiding a
re-decode at score time.

Replace the full-struct duffzero in Reset() with targeted field assignments
to preserve the ID and Vectors backing arrays, avoiding one alloc per recycled
TermFieldDoc in the recycled TFR path.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants