Merge stat lowering and row count rewriting into single pass over expressions - #9411
Merge stat lowering and row count rewriting into single pass over expressions#9411robert3005 wants to merge 4 commits into
Conversation
Signed-off-by: Robert Kruszewski <github@robertk.io>
Signed-off-by: Robert Kruszewski <github@robertk.io>
Merging this PR will improve performance by 31.13%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ⚡ | Simulation | cast_i32_to_u32[65536] |
2.8 ms | 2.1 ms | +31.13% |
Tip
Curious why this is faster? Comment @codspeedbot explain why this is faster on this PR, or directly use the CodSpeed MCP with your agent.
Comparing rk/lessrewrites (c960813) with develop (b363fb7)
Footnotes
-
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. ↩
|
double get_item slows down small prunes... need to figure out another option |
Instead of traversing expressions multiple times we do the lowering and row
count substitution at the same time. We also attempt removing duplicate
conditions from and/or predicates on the way up from stat rewriting.
Duplicate reduction is naive and only handles pairs of duplicates and not cases
where duplicates are one chain removed.