Re: [RFC, POC] Don't require a NBuffer sized PrivateRefCount array of local buffer pins

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Simon Riggs <simon(at)2ndQuadrant(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [RFC, POC] Don't require a NBuffer sized PrivateRefCount array of local buffer pins
Date: 2014-04-09 09:44:04
Message-ID: 20140409094404.GC4161@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2014-04-09 05:34:42 -0400, Simon Riggs wrote:
> On 21 March 2014 14:22, Andres Freund <andres(at)2ndquadrant(dot)com> wrote:
>
> > That seems to work fairly well. On the few tests I could run on my
> > laptop - I've done this during a flight - it's a small performance win
> > in all cases I could test. While saving a fair amount of memory.
>
> We've got to the stage now that saving this much memory is essential,
> so this patch is a must-have.

I think some patch like this is necessary - I am not 100% sure mine is
the one true approach here, but it certainly seems simple enough.

> Performance? Discussed many years ago, but I suspect the micro-tuning
> of those earlier patches wasn't as good as it is here.

It's a small win on small machines (my laptop, 16GB), so we need to
retest with 128GB shared_buffers or such on bigger ones. There
PrivateRefCount previously was the source of a large portion of the
cache misses...

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Meskes 2014-04-09 10:29:05 Re: Pointer to structure in ECPG
Previous Message Simon Riggs 2014-04-09 09:41:46 ALTER TABLE set reloptions