bkietz commented on PR #35628:
URL: https://github.com/apache/arrow/pull/35628#issuecomment-1583218617

   Added some benchmarks to compare views to other strings: sort, filter and 
take. They show a pretty solid advantage for views across the board:
   
   ```
   
   ArraySortIndicesStringNarrow/32768/10000           2592 us         2592 us   
       270 bytes_per_second=12.0556M/s items_per_second=1.58015M/s 
null_percent=0.01 size=32.768k
   ArraySortIndicesStringViewNarrow/32768/10000       1435 us         1435 us   
       487 bytes_per_second=21.7779M/s items_per_second=2.85447M/s 
null_percent=0.01 size=32.768k
   
   ArraySortIndicesStringWide/32768/10000              579 us          579 us   
      1158 bytes_per_second=53.9695M/s items_per_second=1.76847M/s 
null_percent=0.01 size=32.768k
   ArraySortIndicesStringViewWide/32768/10000          360 us          360 us   
      1947 bytes_per_second=86.8699M/s items_per_second=2.84655M/s 
null_percent=0.01 size=32.768k
   
   ArraySortIndicesStringNarrow/32768/100             2729 us         2728 us   
       264 bytes_per_second=11.4551M/s items_per_second=1.51647M/s 
null_percent=1 size=32.768k
   ArraySortIndicesStringViewNarrow/32768/100         1504 us         1504 us   
       469 bytes_per_second=20.7756M/s items_per_second=2.75036M/s 
null_percent=1 size=32.768k
   
   ArraySortIndicesStringWide/32768/100                604 us          604 us   
      1161 bytes_per_second=51.7466M/s items_per_second=1.71219M/s 
null_percent=1 size=32.768k
   ArraySortIndicesStringViewWide/32768/100            378 us          378 us   
      1874 bytes_per_second=82.7329M/s items_per_second=2.73747M/s 
null_percent=1 size=32.768k
   
   ArraySortIndicesStringNarrow/32768/10              2744 us         2738 us   
       261 bytes_per_second=11.4137M/s items_per_second=1.66221M/s 
null_percent=10 size=32.768k
   ArraySortIndicesStringViewNarrow/32768/10          1515 us         1515 us   
       451 bytes_per_second=20.6207M/s items_per_second=3.00304M/s 
null_percent=10 size=32.768k
   
   ArraySortIndicesStringWide/32768/10                 606 us          606 us   
      1141 bytes_per_second=51.6015M/s items_per_second=1.87912M/s 
null_percent=10 size=32.768k
   ArraySortIndicesStringViewWide/32768/10             385 us          385 us   
      1811 bytes_per_second=81.1959M/s items_per_second=2.95683M/s 
null_percent=10 size=32.768k
   
   
   FilterStringFilterWithNulls/262144/3                 459053 ns       458983 
ns         1513 bytes_per_second=544.683M/s data null%=0.1 mask null%=5 
select%=99.9 size=262.144k
   FilterStringViewFilterWithNulls/262144/3             259758 ns       259726 
ns         2655 bytes_per_second=962.554M/s data null%=0.1 mask null%=5 
select%=99.9 size=262.144k
   
   FilterStringFilterWithNulls/262144/4                 382825 ns       382760 
ns         1835 bytes_per_second=653.15M/s data null%=0.1 mask null%=5 
select%=50 size=262.144k
   FilterStringViewFilterWithNulls/262144/4             286098 ns       286058 
ns         2445 bytes_per_second=873.947M/s data null%=0.1 mask null%=5 
select%=50 size=262.144k
   
   FilterStringFilterWithNulls/262144/5                 102171 ns       102165 
ns         6569 bytes_per_second=2.38968G/s data null%=0.1 mask null%=5 
select%=1 size=262.144k
   FilterStringViewFilterWithNulls/262144/5             102105 ns       102103 
ns         6443 bytes_per_second=2.39112G/s data null%=0.1 mask null%=5 
select%=1 size=262.144k
   
   
   TakeStringRandomIndicesWithNulls/262144/1000       20474978 ns     20472750 
ns           34 items_per_second=12.8045M/s null_percent=0.1 size=262.144k
   TakeStringViewRandomIndicesWithNulls/262144/1000    3671899 ns      3671217 
ns          189 items_per_second=71.4052M/s null_percent=0.1 size=262.144k
   
   TakeStringRandomIndicesWithNulls/262144/10         23607594 ns     23604043 
ns           32 items_per_second=11.1059M/s null_percent=10 size=262.144k
   TakeStringViewRandomIndicesWithNulls/262144/10      5815274 ns      5815000 
ns          117 items_per_second=45.0807M/s null_percent=10 size=262.144k
   
   TakeStringMonotonicIndices/262144/1000             16678131 ns     16674676 
ns           42 items_per_second=15.7211M/s null_percent=0.1 size=262.144k
   TakeStringViewMonotonicIndices/262144/1000          3006358 ns      3005697 
ns          242 items_per_second=87.2157M/s null_percent=0.1 size=262.144k
   
   TakeStringMonotonicIndices/262144/10               16604476 ns     16601445 
ns           43 items_per_second=15.7904M/s null_percent=10 size=262.144k
   TakeStringViewMonotonicIndices/262144/10            3200316 ns      3200017 
ns          218 items_per_second=81.9196M/s null_percent=10 size=262.144k
   ```


-- 
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]

Reply via email to