wesm commented on pull request #7506:
URL: https://github.com/apache/arrow/pull/7506#issuecomment-647649670


   For curiosity, here are the same benchmarks on my laptop with gcc-8 (using 
the new output formatting from ARROW-9201)
   
   ```
                                 benchmark            baseline           
contender  change %  regression
   46       CastUInt32ToInt32Safe/262144/1  994.591m items/sec    4.487b 
items/sec   351.118       False
   31        CastUInt32ToInt32Safe/32768/1  932.612m items/sec    3.622b 
items/sec   288.383       False
   52        CastInt64ToInt32Safe/262144/1    1.258b items/sec    3.393b 
items/sec   169.693       False
   38         CastInt64ToInt32Safe/32768/1    1.170b items/sec    2.703b 
items/sec   130.930       False
   26    CastUInt32ToInt32Safe/262144/1000  742.665m items/sec    1.217b 
items/sec    63.901       False
   54     CastUInt32ToInt32Safe/32768/1000  696.762m items/sec    1.132b 
items/sec    62.468       False
   43       CastDoubleToInt32Safe/262144/1    1.493b items/sec    2.333b 
items/sec    56.229       False
   66        CastDoubleToInt32Safe/32768/1    1.366b items/sec    2.001b 
items/sec    46.571       False
   61       CastInt64ToDoubleSafe/262144/1    1.489b items/sec    2.162b 
items/sec    45.245       False
   67        CastInt64ToDoubleSafe/32768/1    1.370b items/sec    1.854b 
items/sec    35.316       False
   5         CastUInt32ToInt32Safe/32768/2  204.642m items/sec  253.501m 
items/sec    23.876       False
   40    CastInt64ToDoubleSafe/262144/1000  802.584m items/sec  987.873m 
items/sec    23.087       False
   25       CastUInt32ToInt32Safe/32768/10  451.556m items/sec  546.766m 
items/sec    21.085       False
   24    CastDoubleToInt32Safe/262144/1000  744.363m items/sec  899.943m 
items/sec    20.901       False
   3      CastInt64ToDoubleSafe/32768/1000  753.040m items/sec  906.901m 
items/sec    20.432       False
   53     CastInt64ToInt32Safe/262144/1000  968.574m items/sec    1.158b 
items/sec    19.578       False
   49     CastDoubleToInt32Safe/32768/1000  697.915m items/sec  829.688m 
items/sec    18.881       False
   55      CastInt64ToInt32Safe/32768/1000  893.465m items/sec    1.051b 
items/sec    17.641       False
   57        CastInt64ToDoubleSafe/32768/2  215.963m items/sec  238.114m 
items/sec    10.257       False
   15       CastUInt32ToInt32Safe/262144/2  212.126m items/sec  232.094m 
items/sec     9.414       False
   12       CastInt64ToDoubleSafe/32768/10  443.363m items/sec  483.006m 
items/sec     8.942       False
   18         CastInt64ToInt32Safe/32768/2  219.356m items/sec  236.947m 
items/sec     8.020       False
   7        CastInt64ToDoubleSafe/262144/2  220.790m items/sec  225.300m 
items/sec     2.043       False
   69    CastInt64ToInt32Unsafe/32768/1000    3.262b items/sec    3.304b 
items/sec     1.278       False
   14      CastInt64ToInt32Unsafe/262144/0    4.271b items/sec    4.306b 
items/sec     0.814       False
   22       CastInt64ToInt32Unsafe/32768/2    3.272b items/sec    3.290b 
items/sec     0.546       False
   64        CastInt64ToInt32Safe/262144/2  228.532m items/sec  229.766m 
items/sec     0.540       False
   56      CastUInt32ToInt32Safe/262144/10  467.505m items/sec  469.887m 
items/sec     0.509       False
   21       CastInt64ToInt32Unsafe/32768/0    3.332b items/sec    3.343b 
items/sec     0.332       False
   13      CastInt64ToInt32Unsafe/262144/1    4.292b items/sec    4.300b 
items/sec     0.195       False
   9       CastInt64ToInt32Unsafe/32768/10    3.284b items/sec    3.290b 
items/sec     0.178       False
   20       CastInt64ToInt32Unsafe/32768/1    3.324b items/sec    3.328b 
items/sec     0.125       False
   28    CastInt64ToDoubleUnsafe/262144/10    2.507b items/sec    2.510b 
items/sec     0.103       False
   36   CastInt64ToInt32Unsafe/262144/1000    4.273b items/sec    4.274b 
items/sec     0.037       False
   68      CastInt64ToDoubleUnsafe/32768/1    2.125b items/sec    2.122b 
items/sec    -0.153       False
   39      CastInt64ToDoubleUnsafe/32768/0    2.137b items/sec    2.132b 
items/sec    -0.208       False
   19     CastInt64ToDoubleUnsafe/262144/2    2.511b items/sec    2.505b 
items/sec    -0.234       False
   33     CastInt64ToInt32Unsafe/262144/10    4.288b items/sec    4.271b 
items/sec    -0.395       False
   2       CastInt64ToDoubleUnsafe/32768/2    2.119b items/sec    2.110b 
items/sec    -0.455       False
   58      CastInt64ToInt32Unsafe/262144/2    4.301b items/sec    4.277b 
items/sec    -0.549       False
   48     CastInt64ToDoubleUnsafe/262144/1    2.545b items/sec    2.528b 
items/sec    -0.651       False
   0   CastInt64ToDoubleUnsafe/262144/1000    2.525b items/sec    2.501b 
items/sec    -0.941       False
   45     CastInt64ToDoubleUnsafe/262144/0    2.546b items/sec    2.518b 
items/sec    -1.098       False
   30     CastInt64ToDoubleUnsafe/32768/10    2.131b items/sec    2.097b 
items/sec    -1.615       False
   50   CastInt64ToDoubleUnsafe/32768/1000    2.135b items/sec    2.072b 
items/sec    -2.954       False
   60        CastDoubleToInt32Safe/32768/0  934.302m items/sec  888.511m 
items/sec    -4.901       False
   62        CastInt64ToDoubleSafe/32768/0    1.132b items/sec    1.073b 
items/sec    -5.285        True
   35       CastDoubleToInt32Safe/262144/0    1.012b items/sec  951.534m 
items/sec    -5.960        True
   17        CastInt64ToInt32Safe/32768/10  518.073m items/sec  485.375m 
items/sec    -6.311        True
   37       CastInt64ToDoubleSafe/262144/0    1.229b items/sec    1.141b 
items/sec    -7.110        True
   47      CastInt64ToDoubleSafe/262144/10  455.081m items/sec  418.319m 
items/sec    -8.078        True
   16        CastDoubleToInt32Safe/32768/2  223.095m items/sec  202.291m 
items/sec    -9.325        True
   23       CastDoubleToInt32Safe/262144/2  227.086m items/sec  203.714m 
items/sec   -10.292        True
   59       CastDoubleToInt32Safe/32768/10  463.260m items/sec  389.040m 
items/sec   -16.021        True
   41      CastDoubleToInt32Safe/262144/10  479.642m items/sec  401.058m 
items/sec   -16.384        True
   32       CastInt64ToInt32Safe/262144/10  542.675m items/sec  442.477m 
items/sec   -18.464        True
   4          CastInt64ToInt32Safe/32768/0    1.648b items/sec    1.316b 
items/sec   -20.173        True
   42        CastInt64ToInt32Safe/262144/0    1.894b items/sec    1.444b 
items/sec   -23.787        True
   65   CastDoubleToInt32Unsafe/32768/1000    2.954b items/sec    2.248b 
items/sec   -23.882        True
   44     CastDoubleToInt32Unsafe/32768/10    2.955b items/sec    2.233b 
items/sec   -24.439        True
   51      CastDoubleToInt32Unsafe/32768/0    2.916b items/sec    2.202b 
items/sec   -24.494        True
   63      CastDoubleToInt32Unsafe/32768/1    2.962b items/sec    2.227b 
items/sec   -24.821        True
   8       CastDoubleToInt32Unsafe/32768/2    2.974b items/sec    2.225b 
items/sec   -25.194        True
   6      CastDoubleToInt32Unsafe/262144/2    3.759b items/sec    2.673b 
items/sec   -28.877        True
   1   CastDoubleToInt32Unsafe/262144/1000    3.765b items/sec    2.671b 
items/sec   -29.063        True
   34    CastDoubleToInt32Unsafe/262144/10    3.773b items/sec    2.649b 
items/sec   -29.802        True
   11     CastDoubleToInt32Unsafe/262144/0    3.778b items/sec    2.641b 
items/sec   -30.089        True
   27     CastDoubleToInt32Unsafe/262144/1    3.778b items/sec    2.578b 
items/sec   -31.763        True
   29        CastUInt32ToInt32Safe/32768/0    2.307b items/sec    1.410b 
items/sec   -38.873        True
   10       CastUInt32ToInt32Safe/262144/0    2.728b items/sec    1.521b 
items/sec   -44.266        True
   ```
   
   In the case where there is a regression, the code went from "very very fast" 
to "very fast" so not likely to make a difference in real world workloads. 


----------------------------------------------------------------
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:
us...@infra.apache.org


Reply via email to