TinyMurky commented on PR #25497:
URL: https://github.com/apache/datafusion/pull/25497#issuecomment-5799343041
Hello @jayzhan211 !
Sorry for the delay, I've finished the change, and add the new benchmark to
test the 4 KiB byte cap of `OrderedArrayAgg`. Could you review tthe change?
The 4 KiB byte cap reduced the wide Utf8 update-only benchmark from 34.45 ms
with the row-only cap to 2.09 ms, reducing runtime by approximately 93.9%.
Benchmarks below show the differents between old commit (092743dce) and new
commit (0ddf5e8e5)
```
ordered_array_agg i64 ordered input, 1 rows per update_batch
time: [1.5908 ms 1.6032 ms 1.6175 ms]
change: [−38.237% −36.692% −35.285%] (p = 0.00 <
0.05)
Performance has improved.
Found 11 outliers among 100 measurements (11.00%)
3 (3.00%) high mild
8 (8.00%) high severe
Benchmarking ordered_array_agg i64 random input, 1 rows per update_batch:
Warming up for 3.0000 s
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase
target time to 9.4s, enable flat sampling, or reduce sample count to 50.
Benchmarking ordered_array_agg i64 random input, 1 rows per update_batch:
Collecting 100 samples in estimated 9.ordered_array_agg i64 random input, 1
rows per update_batch
time: [1.8412 ms 1.8520 ms 1.8631 ms]
change: [−47.695% −43.259% −38.684%] (p = 0.00 <
0.05)
Performance has improved.
Found 7 outliers among 100 measurements (7.00%)
4 (4.00%) high mild
3 (3.00%) high severe
Benchmarking ordered_array_agg i64 ordered input, 8 rows per update_batch:
Collecting 100 samples in estimated 5ordered_array_agg i64 ordered input, 8
rows per update_batch
time: [231.63 µs 233.90 µs 236.66 µs]
change: [−50.086% −46.184% −42.206%] (p = 0.00 <
0.05)
Performance has improved.
Found 16 outliers among 100 measurements (16.00%)
6 (6.00%) high mild
10 (10.00%) high severe
Benchmarking ordered_array_agg i64 random input, 8 rows per update_batch:
Collecting 100 samples in estimated 6.ordered_array_agg i64 random input, 8
rows per update_batch
time: [430.89 µs 432.56 µs 434.36 µs]
change: [−52.435% −48.834% −45.128%] (p = 0.00 <
0.05)
Performance has improved.
Found 9 outliers among 100 measurements (9.00%)
6 (6.00%) high mild
3 (3.00%) high severe
Benchmarking ordered_array_agg i64 ordered input, 64 rows per update_batch:
Collecting 100 samples in estimated ordered_array_agg i64 ordered input, 64
rows per update_batch
time: [43.170 µs 43.354 µs 43.552 µs]
change: [−55.102% −50.657% −45.909%] (p = 0.00 <
0.05)
Performance has improved.
Found 15 outliers among 100 measurements (15.00%)
1 (1.00%) low mild
7 (7.00%) high mild
7 (7.00%) high severe
Benchmarking ordered_array_agg i64 random input, 64 rows per update_batch:
Collecting 100 samples in estimated 5ordered_array_agg i64 random input, 64
rows per update_batch
time: [233.26 µs 234.71 µs 236.45 µs]
change: [−46.101% −42.135% −38.055%] (p = 0.00 <
0.05)
Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
7 (7.00%) high mild
6 (6.00%) high severe
Benchmarking ordered_array_agg i64 ordered input, 2048 rows per
update_batch: Collecting 100 samples in estimateordered_array_agg i64 ordered
input, 2048 rows per update_batch
time: [16.337 µs 16.380 µs 16.435 µs]
change: [−56.556% −52.611% −48.422%] (p = 0.00 <
0.05)
Performance has improved.
Found 12 outliers among 100 measurements (12.00%)
2 (2.00%) high mild
10 (10.00%) high severe
Benchmarking ordered_array_agg i64 random input, 2048 rows per update_batch:
Collecting 100 samples in estimatedordered_array_agg i64 random input, 2048
rows per update_batch
time: [205.26 µs 207.21 µs 210.25 µs]
change: [−39.842% −38.164% −36.577%] (p = 0.00 <
0.05)
Performance has improved.
Found 9 outliers among 100 measurements (9.00%)
5 (5.00%) high mild
4 (4.00%) high severe
Benchmarking ordered_array_agg utf8 4 KiB, 1 row per update_batch:
Collecting 100 samples in estimated 5.0868 s ordered_array_agg utf8 4 KiB, 1
row per update_batch
time: [2.0722 ms 2.0891 ms 2.1080 ms]
change: [−89.963% −88.934% −87.805%] (p = 0.00 <
0.05)
Performance has improved.
Found 15 outliers among 100 measurements (15.00%)
2 (2.00%) high mild
13 (13.00%) high severe
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]