You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2021/01/23 20:50:53 UTC
[GitHub] [arrow] tyrelr commented on pull request #9304: ARROW-11361: [Rust] Build MutableBuffer/Buffer from iterator of bools
tyrelr commented on pull request #9304:
URL: https://github.com/apache/arrow/pull/9304#issuecomment-766177143
The 10% impacts are:
```
critcmp master-67d0c2e3 bool-38d4e395 -t 10
group bool-38d4e395 master-67d0c2e3
----- ------------- ---------------
add_nulls_512 1.30 343.7±0.62ns ? B/sec 1.00 264.4±1.80ns ? B/sec
cast float32 to int32 512 1.13 3.2±0.01µs ? B/sec 1.00 2.8±0.01µs ? B/sec
concat str nulls 1024 1.10 21.1±0.06µs ? B/sec 1.00 19.1±0.11µs ? B/sec
eq Float32 1.00 89.0±0.10µs ? B/sec 1.42 126.0±0.28µs ? B/sec
eq scalar Float32 1.11 78.0±0.12µs ? B/sec 1.00 70.2±0.11µs ? B/sec
gt scalar Float32 1.36 71.8±0.15µs ? B/sec 1.00 52.7±0.09µs ? B/sec
gt_eq Float32 1.00 75.5±0.12µs ? B/sec 1.65 124.6±0.22µs ? B/sec
lt scalar Float32 1.15 71.1±0.15µs ? B/sec 1.00 62.0±0.51µs ? B/sec
lt_eq Float32 1.00 74.3±0.11µs ? B/sec 1.66 123.5±0.28µs ? B/sec
lt_eq scalar Float32 1.00 61.5±0.56µs ? B/sec 1.45 88.9±0.22µs ? B/sec
multiply 512 1.00 262.0±0.38ns ? B/sec 1.32 345.1±4.37ns ? B/sec
neq scalar Float32 1.20 78.6±0.81µs ? B/sec 1.00 65.5±0.65µs ? B/sec
or 1.00 1590.0±2.45ns ? B/sec 1.11 1760.7±14.78ns ? B/sec
subtract 512 1.43 369.9±5.24ns ? B/sec 1.00 258.4±0.40ns ? B/sec
take i32 1024 1.10 1871.4±3.67ns ? B/sec 1.00 1695.3±4.85ns ? B/sec
take i32 512 1.00 928.5±1.79ns ? B/sec 1.12 1043.4±13.97ns ? B/sec
take i32 nulls 512 1.10 1074.7±1.81ns ? B/sec 1.00 975.5±1.60ns ? B/sec
```
So it's hard to see through the noise... but I think it looks performance neutral? (I don't think take/subtract/multiply/concat/cast/add interact with this api at all, so those should just be noise).
The only other kernel that I think might be able to take advantage of this might be 'take'... I believe it does bit-by-bit buffer to copy the 'taken' null values... But I haven't looked at whether it actually would benefit.
----------------------------------------------------------------
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:
users@infra.apache.org