================================================================================================
aggregate without grouping
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
agg w/o group:                            Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
agg w/o group wholestage off                      50450          53669        1511         41.6          24.1       1.0X
agg w/o group wholestage on                        1047           1070          43       2003.5           0.5      48.2X


================================================================================================
stat functions
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
stddev:                                   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
stddev wholestage off                              7133           7151          25         14.7          68.0       1.0X
stddev wholestage on                               1200           1228          38         87.4          11.4       5.9X

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
kurtosis:                                 Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
kurtosis wholestage off                           33339          33436         136          3.1         317.9       1.0X
kurtosis wholestage on                             1803           1830          27         58.2          17.2      18.5X


================================================================================================
aggregate with linear keys
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
Aggregate w keys:                         Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        8553           8649         136          9.8         102.0       1.0X
codegen = T, hashmap = F                           5066           5091          41         16.6          60.4       1.7X
codegen = T, row-based hashmap = T                 1960           2090         115         42.8          23.4       4.4X
codegen = T, vectorized hashmap = T                1045           1108          44         80.2          12.5       8.2X


================================================================================================
aggregate with randomized keys
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
Aggregate w keys:                         Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        8467           8481          20          9.9         100.9       1.0X
codegen = T, hashmap = F                           5590           5702         141         15.0          66.6       1.5X
codegen = T, row-based hashmap = T                 2607           2678          79         32.2          31.1       3.2X
codegen = T, vectorized hashmap = T                1651           1683          36         50.8          19.7       5.1X


================================================================================================
aggregate with string key
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
Aggregate w string key:                   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        3502           3550          67          6.0         167.0       1.0X
codegen = T, hashmap = F                           1995           2179         198         10.5          95.2       1.8X
codegen = T, row-based hashmap = T                 1223           1242          18         17.1          58.3       2.9X
codegen = T, vectorized hashmap = T                 963            975           9         21.8          45.9       3.6X


================================================================================================
aggregate with decimal key
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
Aggregate w decimal key:                  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        3138           3143           7          6.7         149.6       1.0X
codegen = T, hashmap = F                           1979           2004          35         10.6          94.3       1.6X
codegen = T, row-based hashmap = T                  788            802          23         26.6          37.6       4.0X
codegen = T, vectorized hashmap = T                 623            634          11         33.7          29.7       5.0X


================================================================================================
aggregate with multiple key types
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
Aggregate w multiple keys:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        5779           5805          36          3.6         275.6       1.0X
codegen = T, hashmap = F                           3441           3470          41          6.1         164.1       1.7X
codegen = T, row-based hashmap = T                 2163           2189          37          9.7         103.1       2.7X
codegen = T, vectorized hashmap = T                2217           2257          56          9.5         105.7       2.6X


================================================================================================
max function bytecode size of wholestagecodegen
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
max function bytecode size:               Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                         558            577          16          1.2         851.9       1.0X
codegen = T, hugeMethodLimit = 10000                178            254          82          3.7         271.4       3.1X
codegen = T, hugeMethodLimit = 1500                 171            205          46          3.8         261.5       3.3X


================================================================================================
cube
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
cube:                                     Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
cube wholestage off                                2499           2530          44          2.1         476.7       1.0X
cube wholestage on                                 1412           1424          12          3.7         269.3       1.8X


================================================================================================
hash and BytesToBytesMap
================================================================================================

OpenJDK 64-Bit Server VM 11.0.18+10 on Linux 5.15.0-1031-azure
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
BytesToBytesMap:                          Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
UnsafeRowhash                                       255            256           1         82.3          12.1       1.0X
murmur3 hash                                        112            113           1        186.5           5.4       2.3X
fast hash                                            57             58           0        364.8           2.7       4.4X
arrayEqual                                          184            187           4        114.2           8.8       1.4X
Java HashMap (Long)                                 100            172          83        210.7           4.7       2.6X
Java HashMap (two ints)                             113            161          47        185.6           5.4       2.3X
Java HashMap (UnsafeRow)                            702            709           7         29.9          33.5       0.4X
LongToUnsafeRowMap (opt=false)                      470            480          17         44.6          22.4       0.5X
LongToUnsafeRowMap (opt=true)                       102            119          21        205.2           4.9       2.5X
BytesToBytesMap (off Heap)                          718            731          16         29.2          34.2       0.4X
BytesToBytesMap (on Heap)                           745            764          19         28.1          35.5       0.3X
Aggregate HashMap                                    55             58           8        381.1           2.6       4.6X


