Skip to content

Implement the RowFn execution backend - #9353

Open
connortsui20 wants to merge 4 commits into
ct/row-fn-typesfrom
ct/row-fn-framework
Open

Implement the RowFn execution backend#9353
connortsui20 wants to merge 4 commits into
ct/row-fn-typesfrom
ct/row-fn-framework

Conversation

@connortsui20

@connortsui20 connortsui20 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Rationale for this change

Implements execution for the contracts in #9386.

What changes are included in this PR?

Adds batch validity and constant handling, dense and valid-only strategies, prepared row loops, sink execution, reducer handling, and output validation. It completes the execute_rows path in the blanket adapter introduced by #9386.

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.

@codspeed-hq

codspeed-hq Bot commented Aug 11, 2026

Copy link
Copy Markdown

Merging this PR will degrade performance by 26.3%

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

❌ 2 regressed benchmarks
✅ 1992 untouched benchmarks
⏩ 89 skipped benchmarks1

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation decode_varbin[(1000, 4)] 60.3 µs 97.4 µs -38.06%
WallTime words_gather_scalar[65536] 8.2 µs 9.4 µs -12.31%

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-framework (6ddd036) with ct/row-fn-types (707d106)2

Open in CodSpeed

Footnotes

  1. 89 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.

  2. No successful run was found on ct/row-fn-types (c02fe9d) during the generation of this report, so 0f50f99 was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

@connortsui20
connortsui20 marked this pull request as ready for review August 11, 2026 16:05
@connortsui20
connortsui20 changed the base branch from develop to ct/lane-kernel-sources August 11, 2026 16:07
@connortsui20
connortsui20 marked this pull request as draft August 11, 2026 16:24
Base automatically changed from ct/lane-kernel-sources to develop August 11, 2026 17:12
@connortsui20 connortsui20 added the changelog/feature A new feature label Aug 11, 2026
@connortsui20
connortsui20 marked this pull request as ready for review August 11, 2026 18:48
@connortsui20
connortsui20 marked this pull request as draft August 12, 2026 18:12
@connortsui20
connortsui20 changed the base branch from develop to ct/row-fn-types August 12, 2026 18:12
@connortsui20 connortsui20 changed the title Add the RowFn scalar function framework Implement the RowFn execution backend Aug 12, 2026
@connortsui20
connortsui20 force-pushed the ct/row-fn-framework branch 2 times, most recently from f677e59 to 91f1511 Compare August 12, 2026 19:23
@connortsui20
connortsui20 marked this pull request as ready for review August 12, 2026 19:25
@connortsui20
connortsui20 marked this pull request as draft August 12, 2026 20:26
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
@connortsui20
connortsui20 marked this pull request as ready for review August 12, 2026 23:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/feature A new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant