From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: larger shared buffers slows down cluster |
Date: | 2012-08-23 01:44:08 |
Message-ID: | 50358AE8.9020301@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 08/22/2012 05:19 PM, Jeff Janes wrote:
>>
>> Shared Buffers Time
>> 48Gb 2058ms
>> 8Gb 372ms
>> 1gb 67ms
>>
>>
>> Is this expected behaviour?
> Yeah. Clustering the table means that all the indexes and the old
> version of the table all get dropped, and each time something is
> dropped the entire buffer pool is scoured to remove the old buffers.
>
> In my hands, this is about 10 times better in 9.2 than 9.1.4, at 8GB.
> Because now the scouring is done once per object, not once per fork.
> Also, the check is done without an initial spinlock.
>
> It perhaps could be improved further by only scouring the pool once,
> at the end of the transaction, with a hash of all objects to be
> dropped.
>
>
FYI, I have rerun the tests on amazon with 9.2 BETA - the improvement I
saw ranged from a factor of roughly 2 (with 1Gb of shared memory) to 6
(with 48Gb).
cheers
andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Tatsuo Ishii | 2012-08-23 02:32:21 | Is this an appropriate item? |
Previous Message | Craig Ringer | 2012-08-23 01:36:55 | Re: [PATCH] Docs: Make notes on sequences and rollback more obvious |