================================================================================================
MergeRowsExec Codegen Benchmark
================================================================================================

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - matched update only:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------
merge - matched update only wholestage off           5050           5137          82          4.2         240.8       1.0X
merge - matched update only wholestage on             646            654           9         32.5          30.8       7.8X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - not matched insert only:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------------
merge - not matched insert only wholestage off           1607           1626          25         13.0          76.6       1.0X
merge - not matched insert only wholestage on             700            705           4         29.9          33.4       2.3X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - matched update + not matched insert:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------------------------
merge - matched update + not matched insert wholestage off           1857           1865           5         11.3          88.5       1.0X
merge - matched update + not matched insert wholestage on             734            746           9         28.6          35.0       2.5X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - matched delete:                   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
merge - matched delete wholestage off              2000           2008           8         10.5          95.4       1.0X
merge - matched delete wholestage on                 75             79           5        280.3           3.6      26.7X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - conditional clauses:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------
merge - conditional clauses wholestage off           3335           3366          30          6.3         159.0       1.0X
merge - conditional clauses wholestage on             796            802           6         26.3          38.0       4.2X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - matched + not matched + not matched by source:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
----------------------------------------------------------------------------------------------------------------------------------------------------
merge - matched + not matched + not matched by source wholestage off           2143           2149           7          9.8         102.2       1.0X
merge - matched + not matched + not matched by source wholestage on             620            639          38         33.8          29.6       3.5X

OpenJDK 64-Bit Server VM 25.0.4+7-LTS on Linux 6.17.0-1020-azure
AMD EPYC 9V74 80-Core Processor
merge - split update (delete + insert):                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
-------------------------------------------------------------------------------------------------------------------------------------
merge - split update (delete + insert) wholestage off           2297           2306           7          9.1         109.5       1.0X
merge - split update (delete + insert) wholestage on            1593           1598           6         13.2          76.0       1.4X


