vertexclique opened a new pull request #8664:
URL: https://github.com/apache/arrow/pull/8664


   * Implements safe bit operations for Arrow
   * Implements `typed_bits` to get bits as Vec<bool>
   * Implements various bit operations for the use with arrow arrays
   * Adjusts parquet array reader to use Arrow bit operations
   
   
   
   <details>
   <summary>Benchmarks</summary>
   <br>
   <p>
   
   ```
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/aggregate_kernels-c31fbf405e8694a5
   sum 512                 time:   [632.58 ns 632.79 ns 633.01 ns]              
       
                           change: [-0.1888% -0.1141% -0.0410%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   Found 9 outliers among 100 measurements (9.00%)
     9 (9.00%) high mild
   
   min 512                 time:   [918.14 ns 918.20 ns 918.27 ns]              
       
                           change: [-0.2613% -0.0871% +0.0407%] (p = 0.32 > 
0.05)
                           No change in performance detected.
   Found 5 outliers among 100 measurements (5.00%)
     1 (1.00%) low mild
     1 (1.00%) high mild
     3 (3.00%) high severe
   
   sum nulls 512           time:   [369.66 ns 369.75 ns 369.84 ns]              
            
                           change: [-1.4167% -1.3636% -1.3233%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 9 outliers among 100 measurements (9.00%)
     3 (3.00%) low mild
     4 (4.00%) high mild
     2 (2.00%) high severe
   
   min nulls 512           time:   [1.9885 us 1.9900 us 1.9917 us]              
             
                           change: [-2.6032% -2.3645% -2.1248%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 15 outliers among 100 measurements (15.00%)
     10 (10.00%) high mild
     5 (5.00%) high severe
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/arithmetic_kernels-1984fccdba1970da
   add 512                 time:   [1.2587 us 1.2590 us 1.2593 us]              
       
                           change: [-0.6426% -0.5921% -0.5463%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   Found 9 outliers among 100 measurements (9.00%)
     1 (1.00%) low mild
     6 (6.00%) high mild
     2 (2.00%) high severe
   
   subtract 512            time:   [1.4423 us 1.4424 us 1.4425 us]              
            
                           change: [-1.9454% -1.9192% -1.8910%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 3 outliers among 100 measurements (3.00%)
     1 (1.00%) low mild
     1 (1.00%) high mild
     1 (1.00%) high severe
   
   multiply 512            time:   [1.3578 us 1.3579 us 1.3580 us]              
            
                           change: [-4.5031% -4.4893% -4.4759%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high severe
   
   divide 512              time:   [1.8784 us 1.8793 us 1.8803 us]              
          
                           change: [-5.6385% -5.5871% -5.5370%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   limit 512, 512          time:   [123.77 ns 123.78 ns 123.80 ns]              
             
                           change: [-0.5449% -0.5320% -0.5173%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   Found 9 outliers among 100 measurements (9.00%)
     2 (2.00%) low mild
     6 (6.00%) high mild
     1 (1.00%) high severe
   
   add_nulls_512           time:   [1.3148 us 1.3150 us 1.3151 us]              
             
                           change: [-8.4170% -8.4016% -8.3843%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 5 outliers among 100 measurements (5.00%)
     1 (1.00%) low mild
     2 (2.00%) high mild
     2 (2.00%) high severe
   
   divide_nulls_512        time:   [1.8536 us 1.8546 us 1.8556 us]              
                
                           change: [-0.0625% -0.0094% +0.0469%] (p = 0.74 > 
0.05)
                           No change in performance detected.
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/array_from_vec-61dde2e42601af4d
   array_from_vec 128      time:   [460.91 ns 461.72 ns 462.49 ns]              
                 
                           change: [-1.5182% -1.2296% -0.9445%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   
   array_from_vec 256      time:   [700.00 ns 701.51 ns 703.03 ns]              
                  
                           change: [-2.4928% -2.2326% -1.9810%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   array_from_vec 512      time:   [1.1866 us 1.1882 us 1.1898 us]              
                  
                           change: [-5.8191% -5.6620% -5.4929%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   array_string_from_vec 128                                                    
                         
                           time:   [2.0925 us 2.0934 us 2.0943 us]
                           change: [-6.1524% -6.1040% -6.0558%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   array_string_from_vec 256                                                    
                         
                           time:   [3.1637 us 3.1662 us 3.1686 us]
                           change: [-5.2043% -5.1092% -5.0175%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   array_string_from_vec 512                                                    
                         
                           time:   [5.4878 us 5.4891 us 5.4903 us]
                           change: [-2.7271% -2.6299% -2.5362%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 2 outliers among 100 measurements (2.00%)
     1 (1.00%) low mild
     1 (1.00%) high mild
   
   struct_array_from_vec 128                                                    
                         
                           time:   [3.5905 us 3.6011 us 3.6156 us]
                           change: [+0.5452% +0.7197% +0.9826%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   Found 3 outliers among 100 measurements (3.00%)
     3 (3.00%) high severe
   
   struct_array_from_vec 256                                                    
                         
                           time:   [5.2740 us 5.2753 us 5.2767 us]
                           change: [+7.1818% +7.2231% +7.2645%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   
   struct_array_from_vec 512                                                    
                         
                           time:   [7.7544 us 7.7561 us 7.7580 us]
                           change: [+1.1725% +1.2180% +1.2635%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   struct_array_from_vec 1024                                                   
                          
                           time:   [12.600 us 12.605 us 12.609 us]
                           change: [+1.0007% +1.0620% +1.1174%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 2 outliers among 100 measurements (2.00%)
     1 (1.00%) low mild
     1 (1.00%) high severe
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/boolean_kernels-44967fe6790f65f3
   and                     time:   [43.433 us 43.448 us 43.462 us]              
   
                           change: [+11.734% +11.776% +11.817%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   
   or                      time:   [43.599 us 43.609 us 43.621 us]              
  
                           change: [+11.665% +11.716% +11.764%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   
   not                     time:   [21.861 us 21.869 us 21.876 us]              
   
                           change: [+11.350% +11.485% +11.611%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 4 outliers among 100 measurements (4.00%)
     4 (4.00%) high mild
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/buffer_bit_ops-db62104d61fab165
   buffer_bit_ops and      time:   [1.4752 us 1.4753 us 1.4754 us]              
                  
                           change: [+883.28% +883.79% +884.27%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 6 outliers among 100 measurements (6.00%)
     2 (2.00%) low mild
     1 (1.00%) high mild
     3 (3.00%) high severe
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/builder-f619aaa37114abcd
   Benchmarking bench_primitive: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.8s, enable flat sampling, or reduce sample count to 50.
   bench_primitive         time:   [1.5379 ms 1.5381 ms 1.5383 ms]              
               
                           thrpt:  [2.5393 GiB/s 2.5397 GiB/s 2.5400 GiB/s]
                    change:
                           time:   [+18.813% +18.858% +18.906%] (p = 0.00 < 
0.05)
                           thrpt:  [-15.900% -15.866% -15.834%]
                           Performance has regressed.
   Found 8 outliers among 100 measurements (8.00%)
     1 (1.00%) low severe
     1 (1.00%) low mild
     2 (2.00%) high mild
     4 (4.00%) high severe
   
   bench_bool              time:   [3.4393 ms 3.4419 ms 3.4445 ms]              
          
                           thrpt:  [145.16 MiB/s 145.27 MiB/s 145.38 MiB/s]
                    change:
                           time:   [+33.543% +33.660% +33.765%] (p = 0.00 < 
0.05)
                           thrpt:  [-25.242% -25.184% -25.118%]
                           Performance has regressed.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/cast_kernels-32b526d43dab4d1d
   cast int32 to int32 512 time:   [30.416 ns 30.426 ns 30.435 ns]              
                       
                           change: [+2.9310% +2.9847% +3.0390%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 6 outliers among 100 measurements (6.00%)
     5 (5.00%) high mild
     1 (1.00%) high severe
   
   cast int32 to uint32 512                                                     
                        
                           time:   [10.468 us 10.470 us 10.471 us]
                           change: [-9.9982% -9.9821% -9.9668%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 2 outliers among 100 measurements (2.00%)
     1 (1.00%) low mild
     1 (1.00%) high severe
   
   cast int32 to float32 512                                                    
                         
                           time:   [10.071 us 10.073 us 10.075 us]
                           change: [-12.479% -12.462% -12.444%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 3 outliers among 100 measurements (3.00%)
     2 (2.00%) high mild
     1 (1.00%) high severe
   
   cast int32 to float64 512                                                    
                         
                           time:   [10.028 us 10.030 us 10.033 us]
                           change: [-12.811% -12.788% -12.766%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   cast int32 to int64 512 time:   [9.8698 us 9.8718 us 9.8741 us]              
                       
                           change: [-14.016% -13.999% -13.982%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) low mild
   
   cast float32 to int32 512                                                    
                         
                           time:   [10.274 us 10.276 us 10.277 us]
                           change: [-12.382% -12.355% -12.317%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 3 outliers among 100 measurements (3.00%)
     2 (2.00%) high mild
     1 (1.00%) high severe
   
   cast float64 to float32 512                                                  
                           
                           time:   [10.114 us 10.116 us 10.117 us]
                           change: [-2.8473% -2.8224% -2.7997%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   cast float64 to uint64 512                                                   
                          
                           time:   [10.694 us 10.697 us 10.700 us]
                           change: [-11.879% -11.851% -11.826%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   cast int64 to int32 512 time:   [9.7565 us 9.7573 us 9.7583 us]              
                       
                           change: [-17.410% -17.400% -17.391%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   cast date64 to date32 512                                                    
                         
                           time:   [26.983 us 26.986 us 26.989 us]
                           change: [+25.366% +25.546% +25.663%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 9 outliers among 100 measurements (9.00%)
     4 (4.00%) high mild
     5 (5.00%) high severe
   
   cast date32 to date64 512                                                    
                         
                           time:   [26.888 us 26.891 us 26.894 us]
                           change: [+27.476% +27.552% +27.602%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 3 outliers among 100 measurements (3.00%)
     2 (2.00%) high mild
     1 (1.00%) high severe
   
   cast time32s to time32ms 512                                                 
                            
                           time:   [1.5742 us 1.5745 us 1.5749 us]
                           change: [-16.374% -16.343% -16.311%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 5 outliers among 100 measurements (5.00%)
     3 (3.00%) high mild
     2 (2.00%) high severe
   
   cast time32s to time64us 512                                                 
                            
                           time:   [11.926 us 11.928 us 11.931 us]
                           change: [-13.407% -13.386% -13.368%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   cast time64ns to time32s 512                                                 
                            
                           time:   [29.751 us 29.754 us 29.756 us]
                           change: [+24.045% +24.068% +24.088%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   cast timestamp_ns to timestamp_s 512                                         
                                    
                           time:   [30.128 ns 30.132 ns 30.136 ns]
                           change: [-5.2715% -5.2598% -5.2480%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   cast timestamp_ms to timestamp_ns 512                                        
                                     
                           time:   [1.8053 us 1.8057 us 1.8061 us]
                           change: [-17.522% -17.470% -17.424%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 5 outliers among 100 measurements (5.00%)
     5 (5.00%) high mild
   
   cast timestamp_ms to i64 512                                                 
                           
                           time:   [178.12 ns 178.18 ns 178.24 ns]
                           change: [+0.9006% +0.9526% +0.9972%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   Found 4 outliers among 100 measurements (4.00%)
     2 (2.00%) low severe
     2 (2.00%) low mild
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/comparison_kernels-b7d9a0aa5c84846a
   Benchmarking eq Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.6s, enable flat sampling, or reduce sample count to 50.
   eq Float32              time:   [1.5118 ms 1.5120 ms 1.5123 ms]              
          
                           change: [+21.289% +21.316% +21.347%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 7 outliers among 100 measurements (7.00%)
     2 (2.00%) high mild
     5 (5.00%) high severe
   
   Benchmarking eq scalar Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.2s, enable flat sampling, or reduce sample count to 50.
   eq scalar Float32       time:   [1.4161 ms 1.4162 ms 1.4162 ms]              
                 
                           change: [+26.675% +26.691% +26.707%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 8 outliers among 100 measurements (8.00%)
     1 (1.00%) low severe
     1 (1.00%) low mild
     4 (4.00%) high mild
     2 (2.00%) high severe
   
   Benchmarking neq Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 6.9s, enable flat sampling, or reduce sample count to 50.
   neq Float32             time:   [1.3700 ms 1.3702 ms 1.3703 ms]              
           
                           change: [+16.109% +16.168% +16.232%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 12 outliers among 100 measurements (12.00%)
     8 (8.00%) high mild
     4 (4.00%) high severe
   
   Benchmarking neq scalar Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.2s, enable flat sampling, or reduce sample count to 50.
   neq scalar Float32      time:   [1.4162 ms 1.4163 ms 1.4164 ms]              
                  
                           change: [+26.163% +26.209% +26.253%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 10 outliers among 100 measurements (10.00%)
     1 (1.00%) low mild
     3 (3.00%) high mild
     6 (6.00%) high severe
   
   Benchmarking lt Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 6.9s, enable flat sampling, or reduce sample count to 50.
   lt Float32              time:   [1.3708 ms 1.3710 ms 1.3713 ms]              
          
                           change: [+16.056% +16.113% +16.168%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 8 outliers among 100 measurements (8.00%)
     6 (6.00%) high mild
     2 (2.00%) high severe
   
   Benchmarking lt scalar Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.2s, enable flat sampling, or reduce sample count to 50.
   lt scalar Float32       time:   [1.4173 ms 1.4174 ms 1.4175 ms]              
                 
                           change: [+21.190% +21.234% +21.267%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 6 outliers among 100 measurements (6.00%)
     1 (1.00%) low severe
     3 (3.00%) high mild
     2 (2.00%) high severe
   
   Benchmarking lt_eq Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.6s, enable flat sampling, or reduce sample count to 50.
   lt_eq Float32           time:   [1.5143 ms 1.5145 ms 1.5147 ms]              
             
                           change: [+24.324% +24.349% +24.371%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 14 outliers among 100 measurements (14.00%)
     6 (6.00%) low mild
     3 (3.00%) high mild
     5 (5.00%) high severe
   
   Benchmarking lt_eq scalar Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.5s, enable flat sampling, or reduce sample count to 50.
   lt_eq scalar Float32    time:   [1.4861 ms 1.4862 ms 1.4862 ms]              
                    
                           change: [+29.290% +29.303% +29.316%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   
   Benchmarking gt Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 6.9s, enable flat sampling, or reduce sample count to 50.
   gt Float32              time:   [1.3714 ms 1.3715 ms 1.3715 ms]              
          
                           change: [+16.004% +16.055% +16.104%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 9 outliers among 100 measurements (9.00%)
     1 (1.00%) low severe
     2 (2.00%) low mild
     3 (3.00%) high mild
     3 (3.00%) high severe
   
   Benchmarking gt scalar Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 6.8s, enable flat sampling, or reduce sample count to 60.
   gt scalar Float32       time:   [1.3463 ms 1.3465 ms 1.3469 ms]              
                 
                           change: [+23.254% +23.285% +23.316%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 3 outliers among 100 measurements (3.00%)
     1 (1.00%) high mild
     2 (2.00%) high severe
   
   Benchmarking gt_eq Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.6s, enable flat sampling, or reduce sample count to 50.
   gt_eq Float32           time:   [1.5085 ms 1.5085 ms 1.5086 ms]              
             
                           change: [+23.864% +23.878% +23.891%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 14 outliers among 100 measurements (14.00%)
     1 (1.00%) low mild
     9 (9.00%) high mild
     4 (4.00%) high severe
   
   Benchmarking gt_eq scalar Float32: Warming up for 3.0000 s
   Warning: Unable to complete 100 samples in 5.0s. You may wish to increase 
target time to 7.2s, enable flat sampling, or reduce sample count to 50.
   gt_eq scalar Float32    time:   [1.4184 ms 1.4184 ms 1.4185 ms]              
                    
                           change: [+22.218% +22.243% +22.268%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 7 outliers among 100 measurements (7.00%)
     4 (4.00%) high mild
     3 (3.00%) high severe
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/csv_writer-4bae0c5626a4bf18
   record_batches_to_csv   time:   [97.536 us 97.731 us 97.920 us]              
                    
                           change: [+20.400% +20.644% +20.907%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 17 outliers among 100 measurements (17.00%)
     9 (9.00%) low severe
     7 (7.00%) low mild
     1 (1.00%) high mild
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/equal-03b760e11e404a08
   equal_512               time:   [44.182 ns 44.187 ns 44.193 ns]              
         
                           change: [+3.9306% +3.9590% +3.9908%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 6 outliers among 100 measurements (6.00%)
     1 (1.00%) low mild
     1 (1.00%) high mild
     4 (4.00%) high severe
   
   equal_nulls_512         time:   [3.1297 us 3.1298 us 3.1299 us]              
               
                           change: [-4.3580% -4.3531% -4.3480%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 11 outliers among 100 measurements (11.00%)
     4 (4.00%) low mild
     3 (3.00%) high mild
     4 (4.00%) high severe
   
   equal_string_512        time:   [62.525 ns 62.527 ns 62.528 ns]              
               
                           change: [-0.5929% -0.5775% -0.5642%] (p = 0.00 < 
0.05)
                           Change within noise threshold.
   Found 7 outliers among 100 measurements (7.00%)
     2 (2.00%) low mild
     2 (2.00%) high mild
     3 (3.00%) high severe
   
   equal_string_nulls_512  time:   [6.2088 us 6.2252 us 6.2409 us]              
                      
                           change: [+44.524% +44.911% +45.229%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/filter_kernels-637318e1617ce1c9
   filter u8 low selectivity                                                    
                        
                           time:   [147.97 us 148.00 us 148.03 us]
                           change: [+24.688% +24.733% +24.774%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 15 outliers among 100 measurements (15.00%)
     2 (2.00%) low mild
     2 (2.00%) high mild
     11 (11.00%) high severe
   
   filter u8 high selectivity                                                   
                          
                           time:   [18.523 us 18.529 us 18.535 us]
                           change: [+122.09% +122.22% +122.33%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 3 outliers among 100 measurements (3.00%)
     3 (3.00%) high mild
   
   filter u8 very low selectivity                                               
                              
                           time:   [25.126 us 25.129 us 25.132 us]
                           change: [+72.083% +72.108% +72.134%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high severe
   
   filter context u8 low selectivity                                            
                                
                           time:   [131.77 us 131.78 us 131.78 us]
                           change: [+15.022% +15.428% +15.674%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 12 outliers among 100 measurements (12.00%)
     3 (3.00%) low mild
     5 (5.00%) high mild
     4 (4.00%) high severe
   
   filter context u8 high selectivity                                           
                                  
                           time:   [2.5485 us 2.5490 us 2.5496 us]
                           change: [-19.434% -19.341% -19.256%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 10 outliers among 100 measurements (10.00%)
     4 (4.00%) low severe
     1 (1.00%) low mild
     2 (2.00%) high mild
     3 (3.00%) high severe
   
   filter context u8 very low selectivity                                       
                                      
                           time:   [9.0383 us 9.0390 us 9.0400 us]
                           change: [-2.9885% -2.9482% -2.9090%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   filter context u8 w NULLs low selectivity                                    
                                        
                           time:   [165.77 us 165.77 us 165.78 us]
                           change: [+6.0512% +6.1032% +6.1319%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 4 outliers among 100 measurements (4.00%)
     2 (2.00%) low mild
     1 (1.00%) high mild
     1 (1.00%) high severe
   
   filter context u8 w NULLs high selectivity                                   
                                          
                           time:   [2.9709 us 2.9731 us 2.9752 us]
                           change: [-16.600% -16.534% -16.477%] (p = 0.00 < 
0.05)
                           Performance has improved.
   
   filter context u8 w NULLs very low selectivity                               
                                             
                           time:   [170.21 us 170.37 us 170.55 us]
                           change: [+16.476% +16.558% +16.648%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) high mild
   
   filter context f32 low selectivity                                           
                                 
                           time:   [176.88 us 176.99 us 177.10 us]
                           change: [+12.562% +12.647% +12.729%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 18 outliers among 100 measurements (18.00%)
     18 (18.00%) low mild
   
   filter context f32 high selectivity                                          
                                   
                           time:   [3.1933 us 3.1961 us 3.2004 us]
                           change: [-14.557% -14.363% -14.096%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 17 outliers among 100 measurements (17.00%)
     12 (12.00%) low mild
     1 (1.00%) high mild
     4 (4.00%) high severe
   
   filter context f32 very low selectivity                                      
                                       
                           time:   [21.602 us 21.605 us 21.608 us]
                           change: [+1.4682% +1.4827% +1.4966%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 2 outliers among 100 measurements (2.00%)
     2 (2.00%) high mild
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/length_kernel-c61545d424c00334
   length                  time:   [26.844 us 26.852 us 26.861 us]              
      
                           change: [-26.430% -26.400% -26.372%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 1 outliers among 100 measurements (1.00%)
     1 (1.00%) low severe
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/sort_kernel-d16c55a8008e1feb
   sort 2^10               time:   [432.77 us 432.79 us 432.81 us]              
        
                           change: [+2.5326% +2.5395% +2.5485%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 4 outliers among 100 measurements (4.00%)
     4 (4.00%) high severe
   
   sort 2^12               time:   [2.0424 ms 2.0426 ms 2.0428 ms]              
         
                           change: [+2.1088% +2.1227% +2.1353%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 3 outliers among 100 measurements (3.00%)
     1 (1.00%) high mild
     2 (2.00%) high severe
   
   sort nulls 2^10         time:   [475.22 us 475.26 us 475.31 us]              
              
                           change: [+3.5253% +3.5358% +3.5463%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 11 outliers among 100 measurements (11.00%)
     2 (2.00%) low mild
     5 (5.00%) high mild
     4 (4.00%) high severe
   
   sort nulls 2^12         time:   [2.2075 ms 2.2077 ms 2.2079 ms]              
               
                           change: [+1.4792% +1.4929% +1.5076%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 8 outliers among 100 measurements (8.00%)
     4 (4.00%) high mild
     4 (4.00%) high severe
   
        Running 
/home/vertexclique/projects/arrow/rust/target/release/deps/take_kernels-82f6f6cc00b32b54
   take i32 512            time:   [8.4713 us 8.4723 us 8.4734 us]              
            
                           change: [+3.8200% +3.8378% +3.8541%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 3 outliers among 100 measurements (3.00%)
     2 (2.00%) high mild
     1 (1.00%) high severe
   
   take i32 1024           time:   [16.320 us 16.321 us 16.322 us]              
             
                           change: [+3.2287% +3.2425% +3.2557%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 4 outliers among 100 measurements (4.00%)
     1 (1.00%) low mild
     2 (2.00%) high mild
     1 (1.00%) high severe
   
   take bool 512           time:   [8.7281 us 8.7294 us 8.7309 us]              
             
                           change: [+9.3812% +9.4491% +9.5113%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 16 outliers among 100 measurements (16.00%)
     5 (5.00%) low severe
     2 (2.00%) low mild
     6 (6.00%) high mild
     3 (3.00%) high severe
   
   take bool 1024          time:   [16.007 us 16.008 us 16.010 us]              
              
                           change: [+3.1302% +3.1785% +3.2161%] (p = 0.00 < 
0.05)
                           Performance has regressed.
   Found 4 outliers among 100 measurements (4.00%)
     2 (2.00%) high mild
     2 (2.00%) high severe
   
   take str 512            time:   [17.927 us 17.929 us 17.932 us]              
            
                           change: [-2.8282% -2.8003% -2.7792%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 6 outliers among 100 measurements (6.00%)
     2 (2.00%) high mild
     4 (4.00%) high severe
   
   take str 1024           time:   [34.721 us 34.729 us 34.739 us]              
             
                           change: [-3.4705% -3.4539% -3.4346%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 5 outliers among 100 measurements (5.00%)
     1 (1.00%) low mild
     1 (1.00%) high mild
     3 (3.00%) high severe
   
   ```
   
   </p>
   </details>


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


Reply via email to