Github user wangyum commented on the issue:

    https://github.com/apache/spark/pull/21556
  
    Benchmark results:
    ```
    ###############################[ Pushdown benchmark for Decimal 
]################################
    Java HotSpot(TM) 64-Bit Server VM 1.8.0_151-b12 on Mac OS X 10.12.6
    Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz
    
    Select 1 decimal(9, 2) row (value = 7864320): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            4004 / 5309          3.9      
   254.5       1.0X
    Parquet Vectorized (Pushdown)                 1401 / 1431         11.2      
    89.1       2.9X
    Native ORC Vectorized                         4499 / 4567          3.5      
   286.0       0.9X
    Native ORC Vectorized (Pushdown)               899 /  961         17.5      
    57.2       4.5X
    
    Select 10% decimal(9, 2) rows (value < 1572864): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            5376 / 6437          2.9      
   341.8       1.0X
    Parquet Vectorized (Pushdown)                 2696 / 2754          5.8      
   171.4       2.0X
    Native ORC Vectorized                         5458 / 5623          2.9      
   347.0       1.0X
    Native ORC Vectorized (Pushdown)              2230 / 2255          7.1      
   141.8       2.4X
    
    Select 50% decimal(9, 2) rows (value < 7864320): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            8280 / 8487          1.9      
   526.4       1.0X
    Parquet Vectorized (Pushdown)                 7716 / 7757          2.0      
   490.6       1.1X
    Native ORC Vectorized                         9144 / 9495          1.7      
   581.4       0.9X
    Native ORC Vectorized (Pushdown)              7918 / 8118          2.0      
   503.4       1.0X
    
    Select 90% decimal(9, 2) rows (value < 14155776): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            9648 / 9676          1.6      
   613.4       1.0X
    Parquet Vectorized (Pushdown)                 9647 / 9778          1.6      
   613.3       1.0X
    Native ORC Vectorized                       10782 / 10867          1.5      
   685.5       0.9X
    Native ORC Vectorized (Pushdown)            10108 / 10269          1.6      
   642.6       1.0X
    
    Select 1 decimal(18, 2) row (value = 7864320): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            4066 / 4147          3.9      
   258.5       1.0X
    Parquet Vectorized (Pushdown)                   84 /   89        188.0      
     5.3      48.6X
    Native ORC Vectorized                         5430 / 5512          2.9      
   345.3       0.7X
    Native ORC Vectorized (Pushdown)              1054 / 1076         14.9      
    67.0       3.9X
    
    Select 10% decimal(18, 2) rows (value < 1572864): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            5028 / 5154          3.1      
   319.7       1.0X
    Parquet Vectorized (Pushdown)                 1360 / 1421         11.6      
    86.5       3.7X
    Native ORC Vectorized                         6266 / 6360          2.5      
   398.4       0.8X
    Native ORC Vectorized (Pushdown)              2513 / 2550          6.3      
   159.8       2.0X
    
    Select 50% decimal(18, 2) rows (value < 7864320): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            8571 / 8600          1.8      
   544.9       1.0X
    Parquet Vectorized (Pushdown)                 6455 / 6713          2.4      
   410.4       1.3X
    Native ORC Vectorized                       10138 / 10353          1.6      
   644.5       0.8X
    Native ORC Vectorized (Pushdown)              8166 / 8418          1.9      
   519.2       1.0X
    
    Select 90% decimal(18, 2) rows (value < 14155776): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                          12184 / 12253          1.3      
   774.7       1.0X
    Parquet Vectorized (Pushdown)               11720 / 11743          1.3      
   745.1       1.0X
    Native ORC Vectorized                       14024 / 14172          1.1      
   891.6       0.9X
    Native ORC Vectorized (Pushdown)            13966 / 13996          1.1      
   887.9       0.9X
    
    Select 1 decimal(38, 2) row (value = 7864320): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            5650 / 6140          2.8      
   359.2       1.0X
    Parquet Vectorized (Pushdown)                  112 /  186        140.5      
     7.1      50.5X
    Native ORC Vectorized                         5890 / 6826          2.7      
   374.5       1.0X
    Native ORC Vectorized (Pushdown)              1151 / 1396         13.7      
    73.2       4.9X
    
    Select 10% decimal(38, 2) rows (value < 1572864): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                            6668 / 6863          2.4      
   424.0       1.0X
    Parquet Vectorized (Pushdown)                 1766 / 1781          8.9      
   112.3       3.8X
    Native ORC Vectorized                         6421 / 6448          2.4      
   408.2       1.0X
    Native ORC Vectorized (Pushdown)              2648 / 2701          5.9      
   168.3       2.5X
    
    Select 50% decimal(38, 2) rows (value < 7864320): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                          11268 / 11292          1.4      
   716.4       1.0X
    Parquet Vectorized (Pushdown)                 8544 / 8574          1.8      
   543.2       1.3X
    Native ORC Vectorized                       10975 / 11455          1.4      
   697.8       1.0X
    Native ORC Vectorized (Pushdown)              9065 / 9166          1.7      
   576.3       1.2X
    
    Select 90% decimal(38, 2) rows (value < 14155776): Best/Avg Time(ms)    
Rate(M/s)   Per Row(ns)   Relative
    
------------------------------------------------------------------------------------------------
    Parquet Vectorized                          15878 / 15972          1.0      
  1009.5       1.0X
    Parquet Vectorized (Pushdown)               15141 / 15328          1.0      
   962.6       1.0X
    Native ORC Vectorized                       15407 / 16003          1.0      
   979.5       1.0X
    Native ORC Vectorized (Pushdown)            15347 / 15414          1.0      
   975.7       1.0X
    ```


---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to