Re: benchmark results comparing versions 15.2 and 16

Alexander Law <exclusion@gmail.com>

From: Alexander Lakhin <exclusion@gmail.com>
To: MARK CALLAGHAN <mdcallag@gmail.com>, pgsql-hackers@lists.postgresql.org, Andres Freund <andres@anarazel.de>
Date: 2023-05-08T13:00:01Z
Lists: pgsql-hackers
Hello Mark,

05.05.2023 20:45, MARK CALLAGHAN wrote:
> This is mostly a hobby project for me - my other hobby is removing invasive weeds. I am happy to answer questions and 
> run more tests, but turnaround for answers won't be instant. Getting results from Linux perf for these tests is on my 
> TODO list. For now I am just re-running a subset of these to get more certainty that the regressions are real and not 
> noise.
>

It's a very interesting topic to me, too. I had developed some scripts to
measure and compare postgres`s performance using miscellaneous public
benchmarks (ycsb, tpcds, benchmarksql_tpcc, htapbench, benchbase, gdprbench,
s64da-benchmark, ...). Having compared 15.3 (56e869a09) with master
(58f5edf84) I haven't seen significant regressions except a few minor ones.
First regression observed with a simple pgbench test:
pgbench -i benchdb
pgbench -c 10 -T 300 benchdb
(with default compilation options and fsync = off)

On master I get:
tps = 10349.826645 (without initial connection time)
On 15.3:
tps = 11296.064992 (without initial connection time)

This difference is confirmed by multiple test runs. `git bisect` for this
regression pointed at f193883fc.

Best regards,
Alexander



Commits

  1. Add back SQLValueFunction for SQL keywords

  2. Add missing TAP test name

  3. Have the planner consider Incremental Sort for DISTINCT