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
{{ message }}
Repository navigation
Commit 6c2eb22
Browse filesBrowse the repository at this point in the historyBrowse files
perf(array): pack Boolean output during RowFn dense retry (#9986)
Stacked on #9988, which adds the CI benchmark without changing
production code.
## Summary
Routes deferred Boolean dense attempts through the packed collector,
preserving the requested multiversioning flag. Keeps the source and
failure accumulator in one borrowed state, and inlines the collector's
scalar tail so LLVM can retain the alias information needed to vectorize
the row loop. Decode errors remain terminal, and null-only failures
still retry valid rows.
The earlier x86 regressions came from scalarized collector loops.
Optimized Linux IR and the native CI executables confirm that these
loops now vectorize.
## Changes
Native CI medians in microseconds per eight 16,384-row batches, with
partial validity and the multiversioned collector:
| Target | Columns before → after | Constant LHS before → after |
| --- | ---: | ---: |
| AVX2 | 111.0 → 44.53 | 217.1 → 34.58 |
| AVX-512 | 42.81 → 45.07 | 206.9 → 37.25 |
| NEON | 68.32 → 71.01 | 173.3 → 57.62 |
Constant RHS also improves on every target. Small column-only movements
remain uncertain after one paired run. All final cases are below 1 ms,
with a maximum printed sample of 555.8 µs.
Passed 175 RowFn tests, 14 Boolean packing tests, and scoped Clippy. The
CodSpeed check flags no Boolean retry regressions, but remains red on
three other, unattributed benchmark alerts. This remains a draft.
[Four-stage comparison, compiler evidence, and raw
results](https://github.com/vortex-data/vortex/blob/ct/row-fn-performance-evidence/research/row-fn-engine/performance/ci-bool-capture.md).
Evidence stays on the separate branch.
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
0 commit comments