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

OpenJDK 64-Bit Server VM 17.0.6+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                      46302          48623         NaN         45.3          22.1       1.0X
agg w/o group wholestage on                         932            935           3       2250.4           0.4      49.7X


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

OpenJDK 64-Bit Server VM 17.0.6+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                              6735           6751          22         15.6          64.2       1.0X
stddev wholestage on                               1191           1204           9         88.1          11.4       5.7X

OpenJDK 64-Bit Server VM 17.0.6+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                           31015          31085          98          3.4         295.8       1.0X
kurtosis wholestage on                             1813           1828          10         57.8          17.3      17.1X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                        8653           8863         297          9.7         103.2       1.0X
codegen = T, hashmap = F                           5270           5313          38         15.9          62.8       1.6X
codegen = T, row-based hashmap = T                 1460           1507          76         57.4          17.4       5.9X
codegen = T, vectorized hashmap = T                 957            974          16         87.7          11.4       9.0X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                        9917           9953          51          8.5         118.2       1.0X
codegen = T, hashmap = F                           5326           5414          78         15.7          63.5       1.9X
codegen = T, row-based hashmap = T                 2307           2324          16         36.4          27.5       4.3X
codegen = T, vectorized hashmap = T                1563           1597          24         53.7          18.6       6.3X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                        3397           3560         231          6.2         162.0       1.0X
codegen = T, hashmap = F                           1930           1942          11         10.9          92.0       1.8X
codegen = T, row-based hashmap = T                 1120           1124           5         18.7          53.4       3.0X
codegen = T, vectorized hashmap = T                1048           1057          12         20.0          50.0       3.2X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                        2794           2799           8          7.5         133.2       1.0X
codegen = T, hashmap = F                           1889           1958          98         11.1          90.1       1.5X
codegen = T, row-based hashmap = T                  647            663          11         32.4          30.8       4.3X
codegen = T, vectorized hashmap = T                 468            482           9         44.8          22.3       6.0X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                        5635           5675          57          3.7         268.7       1.0X
codegen = T, hashmap = F                           3284           3338          76          6.4         156.6       1.7X
codegen = T, row-based hashmap = T                 2298           2329          44          9.1         109.6       2.5X
codegen = T, vectorized hashmap = T                1941           1944           5         10.8          92.5       2.9X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                         455            476          19          1.4         693.6       1.0X
codegen = T, hugeMethodLimit = 10000                187            217          20          3.5         285.3       2.4X
codegen = T, hugeMethodLimit = 1500                 175            218          29          3.8         266.3       2.6X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                2570           2602          45          2.0         490.2       1.0X
cube wholestage on                                 1400           1406           9          3.7         267.1       1.8X


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

OpenJDK 64-Bit Server VM 17.0.6+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                                       253            253           0         82.9          12.1       1.0X
murmur3 hash                                         94             94           0        224.2           4.5       2.7X
fast hash                                            55             56           0        379.2           2.6       4.6X
arrayEqual                                          187            187           0        112.4           8.9       1.4X
Java HashMap (Long)                                  89             96           6        236.0           4.2       2.8X
Java HashMap (two ints)                             110            115           9        191.2           5.2       2.3X
Java HashMap (UnsafeRow)                            678            679           1         31.0          32.3       0.4X
LongToUnsafeRowMap (opt=false)                      448            450           2         46.8          21.4       0.6X
LongToUnsafeRowMap (opt=true)                        96             97           1        218.8           4.6       2.6X
BytesToBytesMap (off Heap)                          680            681           1         30.8          32.4       0.4X
BytesToBytesMap (on Heap)                           701            703           3         29.9          33.4       0.4X
Aggregate HashMap                                    43             43           2        489.7           2.0       5.9X


