refactor(vortex-spatial): execute distance with RowFn - #9616
Conversation
Signed-off-by: Nemo Yu <zyu379@wisc.edu>
Merging this PR will degrade performance by 19.15%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | WallTime | arrow_checked_add_u32_neon[16384] |
12.4 µs | 20.4 µs | -38.93% |
| ❌ | Simulation | nullable_point_column_x_constant_point |
619 µs | 793.4 µs | -21.99% |
| ⚡ | Simulation | compress_fsst[(500, 64, 4)] |
490 µs | 441.8 µs | +10.92% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing nemo/row-fn-spatial-distance (4193db3) with develop (00abf60)
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. ↩
| // The per-row distance cannot fail, but decoding a geometry operand can. | ||
| const INFALLIBLE: bool = false; |
There was a problem hiding this comment.
This infallible flag is for if the dispatch / fn operation can fail, not if it is decode safe, that is what the const DECODE_INFALLIBLE: bool = false; in vortex-spatial/src/scalar_fn/row.rs is for
There was a problem hiding this comment.
whoops there is something wrong here
Signed-off-by: Nemo Yu <zyu379@wisc.edu>
Summary
Move spatial distance execution onto the generic null-aware RowFn path and keep row-operation fallibility independent from input-decoder fallibility.
Changes
Testing