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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
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                      43655          45287        2309         48.0          20.8       1.0X
agg w/o group wholestage on                         885            913          21       2369.4           0.4      49.3X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
stddev:                                   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
stddev wholestage off                              6815           6968         217         15.4          65.0       1.0X
stddev wholestage on                                898            931          29        116.8           8.6       7.6X

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
kurtosis:                                 Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
kurtosis wholestage off                           30844          31060         306          3.4         294.1       1.0X
kurtosis wholestage on                              992           1041          40        105.8           9.5      31.1X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
Aggregate w keys:                         Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        8601           8647          66          9.8         102.5       1.0X
codegen = T, hashmap = F                           5699           5738          38         14.7          67.9       1.5X
codegen = T, row-based hashmap = T                 1332           1377          34         63.0          15.9       6.5X
codegen = T, vectorized hashmap = T                 967           1022          46         86.8          11.5       8.9X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
Aggregate w keys:                         Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        9947           9999          74          8.4         118.6       1.0X
codegen = T, hashmap = F                           6723           6835         109         12.5          80.2       1.5X
codegen = T, row-based hashmap = T                 2717           2794          52         30.9          32.4       3.7X
codegen = T, vectorized hashmap = T                1543           1580          32         54.4          18.4       6.4X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
Aggregate w string key:                   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        3453           3498          63          6.1         164.7       1.0X
codegen = T, hashmap = F                           2223           2242          22          9.4         106.0       1.6X
codegen = T, row-based hashmap = T                 1315           1363          36         15.9          62.7       2.6X
codegen = T, vectorized hashmap = T                1099           1159          43         19.1          52.4       3.1X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
Aggregate w decimal key:                  Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        2907           2937          44          7.2         138.6       1.0X
codegen = T, hashmap = F                           1941           1950          13         10.8          92.6       1.5X
codegen = T, row-based hashmap = T                  798            806           9         26.3          38.0       3.6X
codegen = T, vectorized hashmap = T                 444            451           7         47.3          21.2       6.6X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
Aggregate w multiple keys:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                        5635           5718         117          3.7         268.7       1.0X
codegen = T, hashmap = F                           3379           3424          65          6.2         161.1       1.7X
codegen = T, row-based hashmap = T                 2310           2326          22          9.1         110.2       2.4X
codegen = T, vectorized hashmap = T                2612           2667          77          8.0         124.6       2.2X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
max function bytecode size:               Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
codegen = F                                         430            492          54          1.5         656.3       1.0X
codegen = T, hugeMethodLimit = 10000                182            234          42          3.6         278.0       2.4X
codegen = T, hugeMethodLimit = 1500                 174            189          12          3.8         265.1       2.5X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
cube:                                     Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
cube wholestage off                                2792           2837          65          1.9         532.5       1.0X
cube wholestage on                                 1443           1506          46          3.6         275.2       1.9X


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

OpenJDK 64-Bit Server VM 17.0.1+12-LTS on Linux 5.11.0-1022-azure
Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
BytesToBytesMap:                          Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
UnsafeRowhash                                       242            265          14         86.6          11.5       1.0X
murmur3 hash                                         81             87           4        260.5           3.8       3.0X
fast hash                                            51             57           3        413.5           2.4       4.8X
arrayEqual                                          149            156           4        140.7           7.1       1.6X
Java HashMap (Long)                                  97            111          13        217.0           4.6       2.5X
Java HashMap (two ints)                             116            126           5        180.4           5.5       2.1X
Java HashMap (UnsafeRow)                            811            879          65         25.8          38.7       0.3X
LongToUnsafeRowMap (opt=false)                      445            449           7         47.1          21.2       0.5X
LongToUnsafeRowMap (opt=true)                       103            109           4        203.9           4.9       2.4X
BytesToBytesMap (off Heap)                          805            815          11         26.1          38.4       0.3X
BytesToBytesMap (on Heap)                           807            831          35         26.0          38.5       0.3X
Aggregate HashMap                                    37             41           5        572.1           1.7       6.6X


