jorgecarleitao opened a new pull request #8170:
URL: https://github.com/apache/arrow/pull/8170
This PR improves the speed of the `take` kernel by using ~the dark magic~
buffers that @nevi-me thought me in another PR. 😀
Like others PRs, the first commit fixes the benchmarks:
* made them not benchmark array creation
* removed benchmark of i8 since it uses the same code as i32,i64,if32,etc.
* removed size 256 since 512 and 1024 is enough
* added benchmark of take of strings
```
git checkout c2aff01 && cargo bench --bench take_kernels && git checkout
take_faster && cargo bench --bench take_kernels
```
Result on my computer:
```
take i32 512 time: [2.9221 us 2.9282 us 2.9348 us]
change: [-46.697% -45.799% -44.703%] (p = 0.00 <
0.05)
Performance has improved.
Found 12 outliers among 100 measurements (12.00%)
5 (5.00%) high mild
7 (7.00%) high severe
take i32 1024 time: [5.0237 us 5.0376 us 5.0548 us]
change: [-48.840% -48.433% -48.087%] (p = 0.00 <
0.05)
Performance has improved.
Found 8 outliers among 100 measurements (8.00%)
3 (3.00%) high mild
5 (5.00%) high severe
take bool 512 time: [2.4694 us 2.4765 us 2.4843 us]
change: [-50.789% -50.390% -50.012%] (p = 0.00 <
0.05)
Performance has improved.
Found 6 outliers among 100 measurements (6.00%)
3 (3.00%) high mild
3 (3.00%) high severe
take bool 1024 time: [4.0698 us 4.2407 us 4.4884 us]
change: [-51.026% -49.906% -48.535%] (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
take str 512 time: [8.1593 us 8.9810 us 10.114 us]
change: [-66.908% -57.395% -45.151%] (p = 0.00 <
0.05)
Performance has improved.
Found 10 outliers among 100 measurements (10.00%)
9 (9.00%) high mild
1 (1.00%) high severe
take str 1024 time: [12.098 us 12.151 us 12.208 us]
change: [-78.241% -75.656% -72.725%] (p = 0.00 <
0.05)
Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
1 (1.00%) high mild
4 (4.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.
For queries about this service, please contact Infrastructure at:
[email protected]