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

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 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           2244           2307          90          9.3         107.0       1.0X
merge - matched update only wholestage on             725            739          17         28.9          34.6       3.1X

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 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           2274           2288          21          9.2         108.4       1.0X
merge - not matched insert only wholestage on             730            740           9         28.7          34.8       3.1X

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 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           2557           2568          16          8.2         121.9       1.0X
merge - matched update + not matched insert wholestage on             890            905          16         23.6          42.5       2.9X

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 Processor
merge - matched delete:                   Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
------------------------------------------------------------------------------------------------------------------------
merge - matched delete wholestage off              1189           1226          52         17.6          56.7       1.0X
merge - matched delete wholestage on                 37             47           6        569.0           1.8      32.3X

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 Processor
merge - conditional clauses:                Best Time(ms)   Avg Time(ms)   Stdev(ms)    Rate(M/s)   Per Row(ns)   Relative
--------------------------------------------------------------------------------------------------------------------------
merge - conditional clauses wholestage off           2649           2655           8          7.9         126.3       1.0X
merge - conditional clauses wholestage on             885            896          12         23.7          42.2       3.0X

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 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           2384           2401          25          8.8         113.7       1.0X
merge - matched + not matched + not matched by source wholestage on             636            643           7         33.0          30.3       3.7X

OpenJDK 64-Bit Server VM 17.0.18+9-LTS on Linux 6.1.166-197.305.amzn2023.x86_64
AMD EPYC 7R13 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           3203           3221          26          6.5         152.7       1.0X
merge - split update (delete + insert) wholestage on            1860           1872          16         11.3          88.7       1.7X


