Re: testing ProcArrayLock patches

Kevin Grittner <kevin.grittner@wicourts.gov>

From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
To: "Robert Haas" <robertmhaas@gmail.com>
Cc: <pgsql-hackers@postgresql.org>
Date: 2011-11-18T23:46:37Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Don't elide blank lines when accumulating psql command history.

Robert Haas <robertmhaas@gmail.com> wrote: 
 
> Hmm.  That looks a lot like a profile with no lock contention at
> all.  Since I see XLogInsert in there, I assume this must be a
> pgbench write test on unlogged tables?  How close am I?
 
Not unless pgbench on HEAD does that by default.  Here are the
relevant statements:
 
$prefix/bin/pgbench -i -s 150
$prefix/bin/pgbench -T $time -c $clients -j $clients >>$resultfile
 
Perhaps the Intel cores implement the relevant primitives better? 
Maybe I didn't run the profile or reports the right way?
 
> I was actually thinking it would be interesting to oprofile the
> read-only test; see if we can figure out where those slowdowns are
> coming from.
 
I'll plan on doing that this weekend.
 
>> tps = 21946.961196 (including connections establishing)
>> tps = 22911.873227 (including connections establishing)
>>
>> For write transactions, that seems pretty respectable.
> 
> Very.  What do you get without the patch?
 
[quick runs a couple tests that way]
 
Single run with -M simple:
 
tps = 23018.314292 (including connections establishing)
 
Single run with -M prepared:
 
tps = 27910.621044 (including connections establishing)
 
So, the patch appears to hinder performance in this environment,
although certainty is quite low with so few samples.  I'll schedule
a spectrum of runs before I leave this evening (very soon).
 
-Kevin