On 2016-04-05 15:48:22 -0400, Robert Haas wrote:
> On Fri, Mar 25, 2016 at 12:47 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> > Robert Haas <robertmhaas@gmail.com> writes:
> >> On Fri, Mar 25, 2016 at 9:48 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> >>> Robert Haas <robertmhaas@gmail.com> writes:
> >>>> It's stupid that we keep spending time and energy figuring out which
> >>>> shared memory data structures require alignment and which ones don't.
> >>>> Let's just align them *all* and be done with it. The memory cost
> >>>> shouldn't be more than a few kB.
> >
> >>> I think such a proposal should come with a measurement, not just
> >>> speculation about what it costs.
> >
> >> About 6kB with default settings. See below.
> >
> > Sold, then.
>
> Excellent. Done.
InitBufferPool() manually fixes up alignment; that should probably be
removed now.
I also wonder if it doesn't make sense to fix PG_CACHE_LINE_SIZE to
64byte on x86. I personally think a manual ifdef in pg_config_manual.h
is ok for that.
Greetings,
Andres Freund