================================================================================================
Expand: varying number of COUNT(DISTINCT)
================================================================================================

OpenJDK 64-Bit Server VM 21.0.12+8-LTS on Linux 6.17.0-1020-azure
AMD EPYC 7763 64-Core Processor
2 distinct aggregates:                    Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
with sum - baseline (ratio 3)                      3150           3221          71          3.3         300.4       1.0X
with sum - optimized (ratio 3)                     3095           3136          33          3.4         295.2       1.0X
pure distinct - baseline (ratio 2)                 2038           2064          26          5.1         194.4       1.5X
pure distinct - optimized (ratio 2)                 675            711          31         15.5          64.3       4.7X

OpenJDK 64-Bit Server VM 21.0.12+8-LTS on Linux 6.17.0-1020-azure
AMD EPYC 7763 64-Core Processor
4 distinct aggregates:                    Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
with sum - baseline (ratio 5)                      6006           6042          30          1.7         572.8       1.0X
with sum - optimized (ratio 5)                     5981           6030          33          1.8         570.4       1.0X
pure distinct - baseline (ratio 4)                 4540           4602          49          2.3         432.9       1.3X
pure distinct - optimized (ratio 4)                 767            800          22         13.7          73.2       7.8X

OpenJDK 64-Bit Server VM 21.0.12+8-LTS on Linux 6.17.0-1020-azure
AMD EPYC 7763 64-Core Processor
6 distinct aggregates:                    Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
with sum - baseline (ratio 7)                      9223           9268          50          1.1         879.6       1.0X
with sum - optimized (ratio 7)                     9253           9346         122          1.1         882.4       1.0X
pure distinct - baseline (ratio 6)                 7420           7484          45          1.4         707.6       1.2X
pure distinct - optimized (ratio 6)                 918            969          38         11.4          87.6      10.0X

OpenJDK 64-Bit Server VM 21.0.12+8-LTS on Linux 6.17.0-1020-azure
AMD EPYC 7763 64-Core Processor
8 distinct aggregates:                    Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
with sum - baseline (ratio 9)                     13382          13516          91          0.8        1276.2       1.0X
with sum - optimized (ratio 9)                    13465          13538         108          0.8        1284.1       1.0X
pure distinct - baseline (ratio 8)                11329          11434         110          0.9        1080.4       1.2X
pure distinct - optimized (ratio 8)                1869           1920          37          5.6         178.3       7.2X


================================================================================================
Expand: varying data characteristics (pure distinct)
================================================================================================

OpenJDK 64-Bit Server VM 21.0.12+8-LTS on Linux 6.17.0-1020-azure
AMD EPYC 7763 64-Core Processor
6 pure distinct aggs with varying data:   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
1K groups, moderate card - baseline                7437           7471          24          1.4         709.3       1.0X
1K groups, moderate card - optimized                898            922          18         11.7          85.7       8.3X
100K groups, moderate card - baseline             15063          15226         135          0.7        1436.5       0.5X
100K groups, moderate card - optimized             4454           4561          95          2.4         424.8       1.7X
1K groups, low card (5 vals) - baseline            7293           7342          40          1.4         695.5       1.0X
1K groups, low card (5 vals) - optimized            762            783          21         13.8          72.6       9.8X
no grouping key - baseline                         4888           4948          39          2.1         466.1       1.5X
no grouping key - optimized                         377            379           2         27.8          35.9      19.7X
