Support nullary RowFn execution - #9469
Conversation
72aefef to
1eaba20
Compare
2b837e5 to
219b67a
Compare
Merging this PR will degrade performance by 10.52%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | compress_fsst[(500, 64, 4)] |
462.4 µs | 516.8 µs | -10.52% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing ct/row-fn-nullary (a9cfe2f) with develop (46a8d39)
Footnotes
-
442 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩
8a3022a to
ee75317
Compare
0eb4a5c to
9e2b1d6
Compare
## Rationale for this change - Stacked on: #9496 - Tracking issue: #9130 - API tracking: #9129 - Epic: #9128 Connects the row execution layer to the scalar-function adapter. ## What changes are included in this PR? Adds constant handling, strict validity propagation, dense execution, direct valid-row execution for supporting sinks, and output validation. A partially valid signature that cannot execute directly on valid rows panics in this layer. Encoding-aware reductions remain in #9347. Filter-and-scatter remains in #9349. Owned valid-row execution and its `Default` bound are in #9500. Nullary execution is in #9469. ## What APIs are changed? Are there any user-facing changes? Adds execution internals within the existing `unstable_row_fns` boundary. There are no stable API changes. --------- Signed-off-by: Connor Tsui <connor.tsui20@gmail.com> Signed-off-by: Connor Tsui <connor@spiraldb.com>
9e2b1d6 to
85ac485
Compare
ee75317 to
73800c9
Compare
85ac485 to
c074eb1
Compare
73800c9 to
7c04a89
Compare
c074eb1 to
a3ebb9d
Compare
7c04a89 to
4d11208
Compare
a3ebb9d to
c9b53b4
Compare
4d11208 to
0a3759b
Compare
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
0a3759b to
a9cfe2f
Compare
Rationale for this change
RowFnover Vortex arrays #9130Keeps nullary execution separate from the numeric-kernel executor path.
What changes are included in this PR?
Executes a nullary row kernel once for the requested row count, then validates and returns its output. Nullary kernels bypass batch validity handling because they have no input validity to propagate.
What APIs are changed? Are there any user-facing changes?
Adds nullary execution within the existing unstable
RowFnboundary. There are no stable API changes.