Re: Move PinBuffer and UnpinBuffer to atomics - Mailing list pgsql-hackers

From Alexander Korotkov
Subject Re: Move PinBuffer and UnpinBuffer to atomics
Date
Msg-id CAPpHfdv9V8gQANzxY8Cpi8nJZi2wJfh6Pa+ruONj3CHQ-ik41g@mail.gmail.com
Whole thread Raw
In response to Re: Move PinBuffer and UnpinBuffer to atomics  (Amit Kapila <amit.kapila16@gmail.com>)
Responses Re: Move PinBuffer and UnpinBuffer to atomics  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-hackers
On Sun, Apr 17, 2016 at 7:32 PM, Amit Kapila <amit.kapila16@gmail.com> wrote:
On Thu, Apr 14, 2016 at 8:05 AM, Andres Freund <andres@anarazel.de> wrote:
>
> On 2016-04-14 07:59:07 +0530, Amit Kapila wrote:
> > What you want to see by prewarming?
>
> Prewarming appears to greatly reduce the per-run variance on that
> machine, making it a lot easier to get meaningful results.
>

I think you are referring the tests done by Robert on power-8 m/c, but the performance results I have reported were on intel x86.  In last two days, I have spent quite some effort to do the performance testing of this patch with pre-warming by using the same query [1] as used by Robert in his tests.  The tests are done such that first it start server, pre-warms the relations, ran read-only test, stop server, again repeat this for next test.

What did you include into single run: test of single version (HEAD or Patch) or test of both of them?
 
I have observed that the variance in run-to-run performance still occurs especially at higher client count (128).  Below are results for 128 client count both when the tests ran first with patch and then with HEAD and vice versa.

Test-1
----------
client count - 128 (basically -c 128 -j 128)

first tests ran with patch and then with HEAD 

Patch_ver/RunsHEAD (commit -70715e6a)Patch
Run-1156748174640
Run-2151352150115
Run-3177940165269


Test-2
----------
client count - 128 (basically -c 128 -j 128)

first tests ran with HEAD and then with patch  

Patch_ver/RunsHEAD (commit -70715e6a)Patch
Run-1173063151282
Run-2173187140676
Run-3177046166726
 

I think this patch (padding pgxact) certainly is beneficial as reported above thread. At very high client count some variation in performance is observed with and without patch, but I feel in general it is a win.

So, what hardware did you use for these tests: power-8 or x86? How long was single run?
Per-run variation seems quite high.  It also seems that it depends on which version runs first.  But that could be a coincidence.

------
Alexander Korotkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company
 

pgsql-hackers by date:

Previous
From: Craig Ringer
Date:
Subject: Re: Proposed change to make cancellations safe
Next
From: Craig Ringer
Date:
Subject: Re: Confusing comment in pg_upgrade in regards to VACUUM FREEZE