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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                      45612          48559         NaN         46.0          21.7       1.0X
agg w/o group wholestage on                         921            932          15       2277.9           0.4      49.5X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                              6801           6864          89         15.4          64.9       1.0X
stddev wholestage on                               1185           1200          12         88.5          11.3       5.7X

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                           31102          31360         364          3.4         296.6       1.0X
kurtosis wholestage on                             1814           1824          11         57.8          17.3      17.1X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                        8558           8674         165          9.8         102.0       1.0X
codegen = T, hashmap = F                           5259           5275          14         15.9          62.7       1.6X
codegen = T, row-based hashmap = T                 1472           1499          27         57.0          17.6       5.8X
codegen = T, vectorized hashmap = T                 953            983          22         88.0          11.4       9.0X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                        8727           8771          63          9.6         104.0       1.0X
codegen = T, hashmap = F                           5376           5440          63         15.6          64.1       1.6X
codegen = T, row-based hashmap = T                 2174           2202          31         38.6          25.9       4.0X
codegen = T, vectorized hashmap = T                1553           1580          24         54.0          18.5       5.6X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                        3213           3273          85          6.5         153.2       1.0X
codegen = T, hashmap = F                           1904           1917          15         11.0          90.8       1.7X
codegen = T, row-based hashmap = T                 1112           1118           6         18.9          53.0       2.9X
codegen = T, vectorized hashmap = T                 976            985          14         21.5          46.5       3.3X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                        2801           2818          24          7.5         133.6       1.0X
codegen = T, hashmap = F                           1921           1987          93         10.9          91.6       1.5X
codegen = T, row-based hashmap = T                  620            638          24         33.8          29.6       4.5X
codegen = T, vectorized hashmap = T                 439            463          22         47.8          20.9       6.4X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                        5492           5557          92          3.8         261.9       1.0X
codegen = T, hashmap = F                           3282           3282           1          6.4         156.5       1.7X
codegen = T, row-based hashmap = T                 2107           2145          53         10.0         100.5       2.6X
codegen = T, vectorized hashmap = T                1890           1893           4         11.1          90.1       2.9X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                         442            451          13          1.5         674.6       1.0X
codegen = T, hugeMethodLimit = 10000                164            177          13          4.0         250.4       2.7X
codegen = T, hugeMethodLimit = 1500                 161            173           8          4.1         245.0       2.8X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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                                2463           2476          19          2.1         469.7       1.0X
cube wholestage on                                 1347           1370          25          3.9         256.9       1.8X


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

OpenJDK 64-Bit Server VM 17.0.5+8 on Linux 5.15.0-1023-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         83.0          12.0       1.0X
murmur3 hash                                         94             94           0        224.3           4.5       2.7X
fast hash                                            55             55           0        384.1           2.6       4.6X
arrayEqual                                          178            180           3        117.6           8.5       1.4X
Java HashMap (Long)                                  87             94           6        240.5           4.2       2.9X
Java HashMap (two ints)                             112            115           3        188.0           5.3       2.3X
Java HashMap (UnsafeRow)                            689            719          51         30.4          32.8       0.4X
LongToUnsafeRowMap (opt=false)                      448            449           2         46.8          21.4       0.6X
LongToUnsafeRowMap (opt=true)                       100            109          12        209.9           4.8       2.5X
BytesToBytesMap (off Heap)                          656            657           1         32.0          31.3       0.4X
BytesToBytesMap (on Heap)                           672            673           1         31.2          32.0       0.4X
Aggregate HashMap                                    41             42           0        507.1           2.0       6.1X


