================================================================================================
Pushdown for many distinct value case
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 0 string row (value IS NULL):      Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 7030           7096          76          2.2         447.0       1.0X
Parquet Vectorized (Pushdown)                       324            342          23         48.5          20.6      21.7X
Native ORC Vectorized                              4817           4890          80          3.3         306.3       1.5X
Native ORC Vectorized (Pushdown)                    324            331           7         48.6          20.6      21.7X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 0 string row ('7864320' < value < '7864320'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                            6918           6938          17          2.3         439.8       1.0X
Parquet Vectorized (Pushdown)                                  304            317           9         51.7          19.3      22.7X
Native ORC Vectorized                                         4968           4992          23          3.2         315.8       1.4X
Native ORC Vectorized (Pushdown)                               317            331           8         49.7          20.1      21.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 string row (value = '7864320'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 6912           6930          19          2.3         439.4       1.0X
Parquet Vectorized (Pushdown)                       294            307          16         53.5          18.7      23.5X
Native ORC Vectorized                              4949           4958          13          3.2         314.6       1.4X
Native ORC Vectorized (Pushdown)                    303            320          17         51.8          19.3      22.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 string row (value <=> '7864320'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                  6968           6997          21          2.3         443.0       1.0X
Parquet Vectorized (Pushdown)                        284            289           4         55.4          18.0      24.6X
Native ORC Vectorized                               4990           5003           9          3.2         317.3       1.4X
Native ORC Vectorized (Pushdown)                     298            302           3         52.9          18.9      23.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 string row ('7864320' <= value <= '7864320'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                              6941           6958          19          2.3         441.3       1.0X
Parquet Vectorized (Pushdown)                                    285            295           6         55.2          18.1      24.3X
Native ORC Vectorized                                           4946           4955          15          3.2         314.5       1.4X
Native ORC Vectorized (Pushdown)                                 297            309           8         53.0          18.9      23.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select all string rows (value IS NOT NULL):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                  12811          12838          23          1.2         814.5       1.0X
Parquet Vectorized (Pushdown)                       12851          12873          27          1.2         817.0       1.0X
Native ORC Vectorized                               10815          10847          37          1.5         687.6       1.2X
Native ORC Vectorized (Pushdown)                    10933          10966          23          1.4         695.1       1.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 0 int row (value IS NULL):         Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 6637           6673          27          2.4         422.0       1.0X
Parquet Vectorized (Pushdown)                       270            278           7         58.2          17.2      24.5X
Native ORC Vectorized                              4483           4546          58          3.5         285.0       1.5X
Native ORC Vectorized (Pushdown)                    283            296           9         55.5          18.0      23.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 0 int row (7864320 < value < 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                     6522           6541          12          2.4         414.7       1.0X
Parquet Vectorized (Pushdown)                           277            285           5         56.7          17.6      23.5X
Native ORC Vectorized                                  4456           4477          23          3.5         283.3       1.5X
Native ORC Vectorized (Pushdown)                        299            305           4         52.7          19.0      21.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 int row (value = 7864320):       Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 6595           6611          14          2.4         419.3       1.0X
Parquet Vectorized (Pushdown)                       274            285           5         57.3          17.4      24.0X
Native ORC Vectorized                              4477           4514          29          3.5         284.6       1.5X
Native ORC Vectorized (Pushdown)                    289            299          10         54.3          18.4      22.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 int row (value <=> 7864320):     Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 6585           6598          11          2.4         418.7       1.0X
Parquet Vectorized (Pushdown)                       273            280           5         57.6          17.4      24.1X
Native ORC Vectorized                              4471           4488          13          3.5         284.2       1.5X
Native ORC Vectorized (Pushdown)                    292            303           9         53.9          18.5      22.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 int row (7864320 <= value <= 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                       6564           6622          39          2.4         417.3       1.0X
Parquet Vectorized (Pushdown)                             274            277           2         57.4          17.4      24.0X
Native ORC Vectorized                                    4507           4512           4          3.5         286.5       1.5X
Native ORC Vectorized (Pushdown)                          296            302           5         53.2          18.8      22.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 int row (7864319 < value < 7864321):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                     6577           6609          31          2.4         418.2       1.0X
Parquet Vectorized (Pushdown)                           273            276           4         57.7          17.3      24.1X
Native ORC Vectorized                                  4509           4527          20          3.5         286.7       1.5X
Native ORC Vectorized (Pushdown)                        289            294           4         54.5          18.4      22.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% int rows (value < 1572864):    Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 7116           7162          28          2.2         452.4       1.0X
Parquet Vectorized (Pushdown)                      1479           1484           7         10.6          94.0       4.8X
Native ORC Vectorized                              5032           5079          45          3.1         319.9       1.4X
Native ORC Vectorized (Pushdown)                   1266           1283          17         12.4          80.5       5.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% int rows (value < 7864320):    Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                 9140           9172          30          1.7         581.1       1.0X
Parquet Vectorized (Pushdown)                      6047           6062          12          2.6         384.5       1.5X
Native ORC Vectorized                              7058           7081          19          2.2         448.8       1.3X
Native ORC Vectorized (Pushdown)                   5033           5073          27          3.1         320.0       1.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% int rows (value < 14155776):   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                11163          11215          40          1.4         709.7       1.0X
Parquet Vectorized (Pushdown)                     10588          10626          45          1.5         673.2       1.1X
Native ORC Vectorized                              9080           9102          21          1.7         577.3       1.2X
Native ORC Vectorized (Pushdown)                   8779           8833          49          1.8         558.2       1.3X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select all int rows (value IS NOT NULL):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                11615          11704          83          1.4         738.5       1.0X
Parquet Vectorized (Pushdown)                     11687          11713          24          1.3         743.0       1.0X
Native ORC Vectorized                              9573           9603          37          1.6         608.6       1.2X
Native ORC Vectorized (Pushdown)                   9709           9717           7          1.6         617.3       1.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select all int rows (value > -1):         Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                11625          11642          14          1.4         739.1       1.0X
Parquet Vectorized (Pushdown)                     11692          11711          18          1.3         743.4       1.0X
Native ORC Vectorized                              9616           9636          13          1.6         611.4       1.2X
Native ORC Vectorized (Pushdown)                   9734           9777          46          1.6         618.8       1.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select all int rows (value != -1):        Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                11651          11689          35          1.3         740.8       1.0X
Parquet Vectorized (Pushdown)                     11687          11717          24          1.3         743.0       1.0X
Native ORC Vectorized                              9568           9598          25          1.6         608.3       1.2X
Native ORC Vectorized (Pushdown)                   9720           9726           5          1.6         618.0       1.2X


================================================================================================
Pushdown for few distinct value case (use dictionary encoding)
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 0 distinct string row (value IS NULL):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                     6081           6093          15          2.6         386.6       1.0X
Parquet Vectorized (Pushdown)                           235            239           4         66.8          15.0      25.8X
Native ORC Vectorized                                  6419           6504          93          2.5         408.1       0.9X
Native ORC Vectorized (Pushdown)                        944            953          11         16.7          60.0       6.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 0 distinct string row ('100' < value < '100'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                             6118           6150          27          2.6         389.0       1.0X
Parquet Vectorized (Pushdown)                                   228            233           4         69.1          14.5      26.9X
Native ORC Vectorized                                          6602           6640          31          2.4         419.7       0.9X
Native ORC Vectorized (Pushdown)                                942            946           5         16.7          59.9       6.5X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 distinct string row (value = '100'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                     6082           6102          17          2.6         386.7       1.0X
Parquet Vectorized (Pushdown)                           276            288           7         57.1          17.5      22.1X
Native ORC Vectorized                                  6560           6573          12          2.4         417.1       0.9X
Native ORC Vectorized (Pushdown)                        984            998          12         16.0          62.5       6.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 distinct string row (value <=> '100'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                       6060           6073           9          2.6         385.3       1.0X
Parquet Vectorized (Pushdown)                             291            293           3         54.1          18.5      20.8X
Native ORC Vectorized                                    6554           6571          13          2.4         416.7       0.9X
Native ORC Vectorized (Pushdown)                          984            998          16         16.0          62.6       6.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 distinct string row ('100' <= value <= '100'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                               6122           6136          20          2.6         389.2       1.0X
Parquet Vectorized (Pushdown)                                     295            298           3         53.2          18.8      20.7X
Native ORC Vectorized                                            6613           6663          31          2.4         420.4       0.9X
Native ORC Vectorized (Pushdown)                                  989            994           4         15.9          62.9       6.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select all distinct string rows (value IS NOT NULL):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                           12599          12630          31          1.2         801.0       1.0X
Parquet Vectorized (Pushdown)                                12630          12642          10          1.2         803.0       1.0X
Native ORC Vectorized                                        12842          12865          37          1.2         816.5       1.0X
Native ORC Vectorized (Pushdown)                             13125          13180          32          1.2         834.4       1.0X


================================================================================================
Pushdown benchmark for StringStartsWith
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringStartsWith filter: (value like '10%'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                    7295           7334          24          2.2         463.8       1.0X
Parquet Vectorized (Pushdown)                          931            960          30         16.9          59.2       7.8X
Native ORC Vectorized                                 5738           5793          68          2.7         364.8       1.3X
Native ORC Vectorized (Pushdown)                      5839           5860          20          2.7         371.2       1.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringStartsWith filter: (value like '1000%'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                      6965           6984          30          2.3         442.8       1.0X
Parquet Vectorized (Pushdown)                            261            271           7         60.2          16.6      26.7X
Native ORC Vectorized                                   5570           5588          24          2.8         354.1       1.3X
Native ORC Vectorized (Pushdown)                        5685           5696          11          2.8         361.4       1.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringStartsWith filter: (value like '786432%'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                        6946           6968          26          2.3         441.6       1.0X
Parquet Vectorized (Pushdown)                              255            265           6         61.8          16.2      27.3X
Native ORC Vectorized                                     5565           5582          16          2.8         353.8       1.2X
Native ORC Vectorized (Pushdown)                          5673           5699          21          2.8         360.7       1.2X


================================================================================================
Pushdown benchmark for StringEndsWith
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringEndsWith filter: (value like '%10'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                  6189           6231          32          2.5         393.5       1.0X
Parquet Vectorized (Pushdown)                        364            374          11         43.2          23.1      17.0X
Native ORC Vectorized                               7008           7021          13          2.2         445.6       0.9X
Native ORC Vectorized (Pushdown)                    7344           7378          61          2.1         466.9       0.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringEndsWith filter: (value like '%1000'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                    6011           6034          30          2.6         382.2       1.0X
Parquet Vectorized (Pushdown)                          263            266           2         59.8          16.7      22.9X
Native ORC Vectorized                                 6966           6984          22          2.3         442.9       0.9X
Native ORC Vectorized (Pushdown)                      7292           7312          25          2.2         463.6       0.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringEndsWith filter: (value like '%786432'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                      5997           6009          11          2.6         381.3       1.0X
Parquet Vectorized (Pushdown)                            259            265           4         60.7          16.5      23.2X
Native ORC Vectorized                                   6989           7021          37          2.3         444.3       0.9X
Native ORC Vectorized (Pushdown)                        7320           7333          15          2.1         465.4       0.8X


================================================================================================
Pushdown benchmark for StringContains
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringContains filter: (value like '%10%'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                   6401           6465          45          2.5         407.0       1.0X
Parquet Vectorized (Pushdown)                         812            818           6         19.4          51.6       7.9X
Native ORC Vectorized                                6876           6922          30          2.3         437.1       0.9X
Native ORC Vectorized (Pushdown)                     7194           7207          19          2.2         457.4       0.9X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringContains filter: (value like '%1000%'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                     5995           6023          22          2.6         381.2       1.0X
Parquet Vectorized (Pushdown)                           257            261           4         61.2          16.3      23.3X
Native ORC Vectorized                                  6606           6631          26          2.4         420.0       0.9X
Native ORC Vectorized (Pushdown)                       6916           6941          35          2.3         439.7       0.9X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
StringContains filter: (value like '%786432%'):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                       6005           6021          22          2.6         381.8       1.0X
Parquet Vectorized (Pushdown)                             258            261           3         60.9          16.4      23.3X
Native ORC Vectorized                                    6576           6596          18          2.4         418.1       0.9X
Native ORC Vectorized (Pushdown)                         6916           6938          17          2.3         439.7       0.9X


================================================================================================
Pushdown benchmark for decimal
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 decimal(9, 2) row (value = 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                     2653           2686          26          5.9         168.7       1.0X
Parquet Vectorized (Pushdown)                            67             70           3        235.4           4.2      39.7X
Native ORC Vectorized                                  3179           3201          36          4.9         202.1       0.8X
Native ORC Vectorized (Pushdown)                         59             61           3        267.0           3.7      45.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% decimal(9, 2) rows (value < 1572864):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                        3852           3893          31          4.1         244.9       1.0X
Parquet Vectorized (Pushdown)                             1779           1790          11          8.8         113.1       2.2X
Native ORC Vectorized                                     4288           4301           9          3.7         272.7       0.9X
Native ORC Vectorized (Pushdown)                          1762           1764           2          8.9         112.0       2.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% decimal(9, 2) rows (value < 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                        7658           7674          11          2.1         486.9       1.0X
Parquet Vectorized (Pushdown)                             7309           7337          28          2.2         464.7       1.0X
Native ORC Vectorized                                     7950           7987          22          2.0         505.5       1.0X
Native ORC Vectorized (Pushdown)                          7576           7696         175          2.1         481.6       1.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% decimal(9, 2) rows (value < 14155776):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                         8652           8694          28          1.8         550.1       1.0X
Parquet Vectorized (Pushdown)                              8635           8652          22          1.8         549.0       1.0X
Native ORC Vectorized                                      8865           8937          66          1.8         563.6       1.0X
Native ORC Vectorized (Pushdown)                           8861           8903          32          1.8         563.4       1.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 decimal(18, 2) row (value = 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                      2857           2896          50          5.5         181.6       1.0X
Parquet Vectorized (Pushdown)                             68             70           2        232.4           4.3      42.2X
Native ORC Vectorized                                   3128           3145          16          5.0         198.9       0.9X
Native ORC Vectorized (Pushdown)                          56             60           3        279.2           3.6      50.7X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% decimal(18, 2) rows (value < 1572864):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                         3440           3460          14          4.6         218.7       1.0X
Parquet Vectorized (Pushdown)                               926            930           5         17.0          58.8       3.7X
Native ORC Vectorized                                      3662           3697          29          4.3         232.8       0.9X
Native ORC Vectorized (Pushdown)                            892            899           8         17.6          56.7       3.9X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% decimal(18, 2) rows (value < 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                         5774           5798          31          2.7         367.1       1.0X
Parquet Vectorized (Pushdown)                              4372           4437          78          3.6         278.0       1.3X
Native ORC Vectorized                                      5837           5852          18          2.7         371.1       1.0X
Native ORC Vectorized (Pushdown)                           4274           4295          25          3.7         271.7       1.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% decimal(18, 2) rows (value < 14155776):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                          8042           8077          46          2.0         511.3       1.0X
Parquet Vectorized (Pushdown)                               7741           7762          44          2.0         492.2       1.0X
Native ORC Vectorized                                       8005           8062          89          2.0         508.9       1.0X
Native ORC Vectorized (Pushdown)                            7750           7776          27          2.0         492.7       1.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 decimal(38, 2) row (value = 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                      3888           3899          18          4.0         247.2       1.0X
Parquet Vectorized (Pushdown)                             72             75           3        217.5           4.6      53.8X
Native ORC Vectorized                                   3095           3115          21          5.1         196.8       1.3X
Native ORC Vectorized (Pushdown)                          57             60           4        278.1           3.6      68.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% decimal(38, 2) rows (value < 1572864):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                         4589           4625          24          3.4         291.8       1.0X
Parquet Vectorized (Pushdown)                              1185           1196          12         13.3          75.3       3.9X
Native ORC Vectorized                                      3669           3678          18          4.3         233.2       1.3X
Native ORC Vectorized (Pushdown)                            994           1003          13         15.8          63.2       4.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% decimal(38, 2) rows (value < 7864320):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                         7617           7646          37          2.1         484.2       1.0X
Parquet Vectorized (Pushdown)                              5755           5779          32          2.7         365.9       1.3X
Native ORC Vectorized                                      6354           6377          26          2.5         404.0       1.2X
Native ORC Vectorized (Pushdown)                           4774           4797          18          3.3         303.6       1.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% decimal(38, 2) rows (value < 14155776):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                         10642          10653           9          1.5         676.6       1.0X
Parquet Vectorized (Pushdown)                              10277          10305          35          1.5         653.4       1.0X
Native ORC Vectorized                                       8976           8988           9          1.8         570.7       1.2X
Native ORC Vectorized (Pushdown)                            8653           8704          34          1.8         550.1       1.2X


================================================================================================
Pushdown benchmark for InSet -> InFilters
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 5, distribution: 10):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                               6798           6839          33          2.3         432.2       1.0X
Parquet Vectorized (Pushdown)                                     268            298          21         58.6          17.1      25.3X
Native ORC Vectorized                                            4515           4585          70          3.5         287.0       1.5X
Native ORC Vectorized (Pushdown)                                  307            319          16         51.2          19.5      22.1X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 5, distribution: 50):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                               6716           6735          28          2.3         427.0       1.0X
Parquet Vectorized (Pushdown)                                     267            274           6         58.9          17.0      25.2X
Native ORC Vectorized                                            4499           4511          12          3.5         286.1       1.5X
Native ORC Vectorized (Pushdown)                                  296            304           6         53.1          18.8      22.7X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 5, distribution: 90):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                               6676           6718          32          2.4         424.4       1.0X
Parquet Vectorized (Pushdown)                                     265            269           3         59.4          16.8      25.2X
Native ORC Vectorized                                            4479           4486          10          3.5         284.8       1.5X
Native ORC Vectorized (Pushdown)                                  285            293           8         55.1          18.1      23.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 10, distribution: 10):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                6687           6743          49          2.4         425.2       1.0X
Parquet Vectorized (Pushdown)                                      282            285           2         55.8          17.9      23.7X
Native ORC Vectorized                                             4492           4499           5          3.5         285.6       1.5X
Native ORC Vectorized (Pushdown)                                   300            305           3         52.4          19.1      22.3X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 10, distribution: 50):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                6711           6730          18          2.3         426.7       1.0X
Parquet Vectorized (Pushdown)                                      281            285           4         56.1          17.8      23.9X
Native ORC Vectorized                                             4488           4497           8          3.5         285.3       1.5X
Native ORC Vectorized (Pushdown)                                   302            307           3         52.1          19.2      22.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 10, distribution: 90):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                6692           6704           9          2.4         425.5       1.0X
Parquet Vectorized (Pushdown)                                      283            289           6         55.7          18.0      23.7X
Native ORC Vectorized                                             4492           4504          16          3.5         285.6       1.5X
Native ORC Vectorized (Pushdown)                                   301            305           3         52.2          19.1      22.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 50, distribution: 10):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                6873           6891          15          2.3         437.0       1.0X
Parquet Vectorized (Pushdown)                                      925            934          12         17.0          58.8       7.4X
Native ORC Vectorized                                             4756           4763          10          3.3         302.3       1.4X
Native ORC Vectorized (Pushdown)                                   402            409           5         39.2          25.5      17.1X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 50, distribution: 50):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                6856           6873          20          2.3         435.9       1.0X
Parquet Vectorized (Pushdown)                                     3243           3250           5          4.9         206.2       2.1X
Native ORC Vectorized                                             4744           4753           5          3.3         301.6       1.4X
Native ORC Vectorized (Pushdown)                                   431            437           6         36.5          27.4      15.9X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 50, distribution: 90):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                6853           6877          27          2.3         435.7       1.0X
Parquet Vectorized (Pushdown)                                     6063           6076          14          2.6         385.5       1.1X
Native ORC Vectorized                                             4740           4749          14          3.3         301.4       1.4X
Native ORC Vectorized (Pushdown)                                   429            434           7         36.7          27.3      16.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 100, distribution: 10):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                 6824           6878          34          2.3         433.9       1.0X
Parquet Vectorized (Pushdown)                                       936            942          10         16.8          59.5       7.3X
Native ORC Vectorized                                              4750           4777          22          3.3         302.0       1.4X
Native ORC Vectorized (Pushdown)                                    508            511           4         31.0          32.3      13.4X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 100, distribution: 50):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                 6844           6877          24          2.3         435.1       1.0X
Parquet Vectorized (Pushdown)                                      3589           3604          18          4.4         228.2       1.9X
Native ORC Vectorized                                              4726           4759          33          3.3         300.5       1.4X
Native ORC Vectorized (Pushdown)                                    574            577           3         27.4          36.5      11.9X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
InSet -> InFilters (values count: 100, distribution: 90):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                 6834           6849          18          2.3         434.5       1.0X
Parquet Vectorized (Pushdown)                                      6119           6132          12          2.6         389.1       1.1X
Native ORC Vectorized                                              4716           4742          31          3.3         299.8       1.4X
Native ORC Vectorized (Pushdown)                                    592            594           3         26.6          37.6      11.6X


================================================================================================
Pushdown benchmark for tinyint
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 tinyint row (value = CAST(63 AS tinyint)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                           2961           2996          38          5.3         188.3       1.0X
Parquet Vectorized (Pushdown)                                 105            114          10        149.2           6.7      28.1X
Native ORC Vectorized                                        1953           1969          12          8.1         124.2       1.5X
Native ORC Vectorized (Pushdown)                              115            122          12        137.0           7.3      25.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% tinyint rows (value < CAST(12 AS tinyint)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                              3445           3506          62          4.6         219.0       1.0X
Parquet Vectorized (Pushdown)                                    881            891          10         17.9          56.0       3.9X
Native ORC Vectorized                                           2392           2404          15          6.6         152.1       1.4X
Native ORC Vectorized (Pushdown)                                 752            765          17         20.9          47.8       4.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% tinyint rows (value < CAST(63 AS tinyint)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                              5644           5664          21          2.8         358.8       1.0X
Parquet Vectorized (Pushdown)                                   4228           4269          35          3.7         268.8       1.3X
Native ORC Vectorized                                           4386           4402          16          3.6         278.8       1.3X
Native ORC Vectorized (Pushdown)                                3493           3501           8          4.5         222.1       1.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% tinyint rows (value < CAST(114 AS tinyint)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                               7834           7864          26          2.0         498.1       1.0X
Parquet Vectorized (Pushdown)                                    7610           7640          31          2.1         483.8       1.0X
Native ORC Vectorized                                            6444           6456          11          2.4         409.7       1.2X
Native ORC Vectorized (Pushdown)                                 6311           6338          24          2.5         401.2       1.2X


================================================================================================
Pushdown benchmark for Timestamp
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 timestamp stored as INT96 row (value = timestamp_seconds(7864320)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                    3308           3334          25          4.8         210.3       1.0X
Parquet Vectorized (Pushdown)                                                         3310           3331          21          4.8         210.5       1.0X
Native ORC Vectorized                                                                 1872           1891          20          8.4         119.0       1.8X
Native ORC Vectorized (Pushdown)                                                        41             46           6        386.2           2.6      81.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% timestamp stored as INT96 rows (value < timestamp_seconds(1572864)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                       3856           3893          32          4.1         245.2       1.0X
Parquet Vectorized (Pushdown)                                                            3890           3928          42          4.0         247.3       1.0X
Native ORC Vectorized                                                                    2380           2400          20          6.6         151.3       1.6X
Native ORC Vectorized (Pushdown)                                                          746            757          13         21.1          47.4       5.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% timestamp stored as INT96 rows (value < timestamp_seconds(7864320)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                       6215           6239          21          2.5         395.2       1.0X
Parquet Vectorized (Pushdown)                                                            6235           6271          26          2.5         396.4       1.0X
Native ORC Vectorized                                                                    4512           4527          17          3.5         286.9       1.4X
Native ORC Vectorized (Pushdown)                                                         3589           3618          41          4.4         228.2       1.7X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% timestamp stored as INT96 rows (value < timestamp_seconds(14155776)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
---------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                        8459           8508          48          1.9         537.8       1.0X
Parquet Vectorized (Pushdown)                                                             8491           8523          46          1.9         539.8       1.0X
Native ORC Vectorized                                                                     6556           6573          14          2.4         416.8       1.3X
Native ORC Vectorized (Pushdown)                                                          6368           6388          15          2.5         404.9       1.3X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 timestamp stored as TIMESTAMP_MICROS row (value = timestamp_seconds(7864320)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                               2797           2805           8          5.6         177.8       1.0X
Parquet Vectorized (Pushdown)                                                                      64             68           4        244.8           4.1      43.5X
Native ORC Vectorized                                                                            1869           1883          17          8.4         118.8       1.5X
Native ORC Vectorized (Pushdown)                                                                   40             46           6        393.3           2.5      69.9X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% timestamp stored as TIMESTAMP_MICROS rows (value < timestamp_seconds(1572864)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                                  3343           3380          30          4.7         212.5       1.0X
Parquet Vectorized (Pushdown)                                                                        912            916           5         17.3          58.0       3.7X
Native ORC Vectorized                                                                               2373           2394          32          6.6         150.9       1.4X
Native ORC Vectorized (Pushdown)                                                                     744            752           7         21.1          47.3       4.5X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% timestamp stored as TIMESTAMP_MICROS rows (value < timestamp_seconds(7864320)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                                  5701           5714          10          2.8         362.4       1.0X
Parquet Vectorized (Pushdown)                                                                       4334           4351          18          3.6         275.6       1.3X
Native ORC Vectorized                                                                               4515           4534          19          3.5         287.1       1.3X
Native ORC Vectorized (Pushdown)                                                                    3555           3562           5          4.4         226.0       1.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% timestamp stored as TIMESTAMP_MICROS rows (value < timestamp_seconds(14155776)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                                   7994           8015          36          2.0         508.3       1.0X
Parquet Vectorized (Pushdown)                                                                        7713           7728          13          2.0         490.4       1.0X
Native ORC Vectorized                                                                                6568           6608          32          2.4         417.6       1.2X
Native ORC Vectorized (Pushdown)                                                                     6338           6373          35          2.5         402.9       1.3X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 timestamp stored as TIMESTAMP_MILLIS row (value = timestamp_seconds(7864320)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                               2809           2818          11          5.6         178.6       1.0X
Parquet Vectorized (Pushdown)                                                                      65             70           7        241.7           4.1      43.2X
Native ORC Vectorized                                                                            1873           1882          15          8.4         119.1       1.5X
Native ORC Vectorized (Pushdown)                                                                   41             45           5        380.6           2.6      68.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 10% timestamp stored as TIMESTAMP_MILLIS rows (value < timestamp_seconds(1572864)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                                  3373           3384           8          4.7         214.4       1.0X
Parquet Vectorized (Pushdown)                                                                        921            925           7         17.1          58.5       3.7X
Native ORC Vectorized                                                                               2385           2408          29          6.6         151.7       1.4X
Native ORC Vectorized (Pushdown)                                                                     743            753          17         21.2          47.2       4.5X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 50% timestamp stored as TIMESTAMP_MILLIS rows (value < timestamp_seconds(7864320)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                                  5724           5749          28          2.7         363.9       1.0X
Parquet Vectorized (Pushdown)                                                                       4340           4359          19          3.6         275.9       1.3X
Native ORC Vectorized                                                                               4513           4524          14          3.5         286.9       1.3X
Native ORC Vectorized (Pushdown)                                                                    3556           3585          34          4.4         226.1       1.6X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 90% timestamp stored as TIMESTAMP_MILLIS rows (value < timestamp_seconds(14155776)):  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                                                                   7981           7999          14          2.0         507.4       1.0X
Parquet Vectorized (Pushdown)                                                                        7708           7736          31          2.0         490.1       1.0X
Native ORC Vectorized                                                                                6563           6585          17          2.4         417.2       1.2X
Native ORC Vectorized (Pushdown)                                                                     6379           6440          35          2.5         405.6       1.3X


================================================================================================
Pushdown benchmark with many filters
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 row with 1 filters:              Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                   46             48           2          0.0    46288314.0       1.0X
Parquet Vectorized (Pushdown)                        47             50           5          0.0    47340075.0       1.0X
Native ORC Vectorized                                44             46           3          0.0    43545580.0       1.1X
Native ORC Vectorized (Pushdown)                     49             53           7          0.0    48680401.0       1.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 row with 250 filters:            Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                  191            205          14          0.0   190806058.0       1.0X
Parquet Vectorized (Pushdown)                       193            197           5          0.0   192793715.0       1.0X
Native ORC Vectorized                               185            189           5          0.0   184737012.0       1.0X
Native ORC Vectorized (Pushdown)                    192            196           5          0.0   191931568.0       1.0X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
Select 1 row with 500 filters:            Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
Parquet Vectorized                                  604            613          12          0.0   603972981.0       1.0X
Parquet Vectorized (Pushdown)                       617            628          13          0.0   617145868.0       1.0X
Native ORC Vectorized                               600            616          10          0.0   599831666.0       1.0X
Native ORC Vectorized (Pushdown)                    610            630          24          0.0   610489534.0       1.0X


