refactor(dict): clarify compute invariants - #9632
Conversation
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Merging this PR will improve performance by 23.86%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ⚡ | WallTime | arrow_checked_add_u32_neon[16384] |
20.4 µs | 12.4 µs | +65.06% |
| ⚡ | WallTime | words_gather_scalar_avx2[65536] |
9.5 µs | 8.3 µs | +14.6% |
| ⚡ | Simulation | compact[(2048, 90)] |
1.5 µs | 1.4 µs | +11.89% |
| ⚡ | Simulation | compress_fsst[(500, 64, 4)] |
488.1 µs | 439 µs | +11.19% |
Tip
Curious why performance improved? Comment @codspeedbot explain why performance improved on this PR, or directly use the CodSpeed MCP with your agent.
Comparing ct/dict-compute-cleanup (0bd99e6) with develop (ee1ac25)
Footnotes
-
106 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. ↩
-
4 benchmarks were run, but are now archived. If they were deleted in another branch, consider rebasing to remove them from the report. Instead if they were added back, click here to restore them. ↩
Summary
Cleans up dictionary scalar-function pushdown and code selection without changing behavior.
Changes
Clarifies the pushdown guards and unsafe invariants, and documents why take and filter reset
all_values_referenced.