Conversation
3bd0e55 to
9ffe04a
Compare
Signed-off-by: Yuyun Zhang <1252232014@qq.com> Co-Authored-By: Kimi K3
9ffe04a to
ee39587
Compare
Merging this PR will degrade performance by 16.65%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | WallTime | arrow_checked_add_u32_neon[16384] |
12.3 µs | 20.3 µs | -39.28% |
| ❌ | WallTime | mul_u64_nonnull_neon |
15.5 µs | 21.3 µs | -27.39% |
| ❌ | WallTime | mul_i64_nonnull_neon |
17.3 µs | 20.4 µs | -14.82% |
| ❌ | WallTime | multiply_shapes_neon[(16384, PerRowPerRow)] |
17.4 µs | 20.4 µs | -14.7% |
| ❌ | WallTime | words_gather_scalar_avx2[65536] |
8.2 µs | 9.4 µs | -11.93% |
| ⚡ | WallTime | filtered_sink_i64_avx512[OneNullInEight] |
26.6 µs | 22.4 µs | +18.88% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing Ecthlion:add-is-nan-expression (09f5aff) with develop (f5b3b26)
Footnotes
-
218 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. ↩
Signed-off-by: Yuyun Zhang <1252232014@qq.com>
Summary
Adds the
IS NANexpression called out in #9913, implemented as a strictRowFnas suggested in the issue: null inputs propagate to null outputs (output nullability follows the input), and only primitive float inputs are accepted.Changes
vortex.is_nanscalar function invortex-arrayimplemented with theRowFnrow-wise kernel framework, registered in the scalar fn session and exposed asexpr::is_nan/expr::bound::is_nan.is_nullrules so the predicate prunes from zone maps:nan_count(x) = 0orall_non_nan(x)nan_count(x) = row_count()orall_nan(x)AI disclosure: this change was developed with assistance from Kimi K3.