Re: pgbench: option delaying queries till connections establishment?
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Marina Polyakova <m.polyakova@postgrespro.ru>
Cc: Alexander Korotkov <aekorotkov@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-11-16T21:53:51Z
Lists: pgsql-hackers
Hi, On 2020-11-17 00:09:34 +0300, Marina Polyakova wrote: > Sorry I'm not familiar with the internal architecture of snapshots, locks > etc. in postgres, but I wanted to ask - what exact kind of patch for fair > lwlocks do you want to offer to the community? I applied the 6-th version of > the patch for fair lwlocks from [1] to the old master branch (see commit > [2]), started many threads in pgbench (-M prepared -c 1000 -j 500 -T 10 -P1 > -S) and I did not receive stable first progress reports, which IIUC are one > of the advantages of the discussed patch for the pgbench (see [3])... Thanks for running some benchmarks. I think it's quite unsurprising that you'd see skewed numbers initially, even with fairer locks. Just by virtue of pgbench starting threads and each thread immediately starting to perform work, you are bound to get odd pretty meaningless initial numbers. Even without contention, and when using fewer connections than there are CPUs. And especially when starting a larger number of connections, because the main pgbench thread will get fewer and fewer scheduler slices because of the threads running benchmarks already. Regards, Andres
Commits
-
Fix new pthread code to respect --disable-thread-safety.
- de91c3b976cf 14.0 landed
-
Add missing pthread_barrier_t.
- 44bf3d5083e1 14.0 landed
-
pgbench: Improve time logic.
- 547f04e7348b 14.0 landed
-
pgbench: Refactor thread portability support.
- b1d6a8f86813 14.0 landed
-
pgbench: Synchronize client threads.
- aeb57af8e640 14.0 landed
-
Fix bogus logic for skipping unnecessary partcollation dependencies.
- 84d514887f9c 12.0 cited