Re: Adding basic NUMA awareness - Mailing list pgsql-hackers

From Dmitry Dolgov
Subject Re: Adding basic NUMA awareness
Date
Msg-id CA+q6zcUrUC=7Bjacxp9OmNsarcw4eLs_0WhFd5ydOppZi2ZxaQ@mail.gmail.com
Whole thread Raw
In response to Re: Adding basic NUMA awareness  (Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>)
List pgsql-hackers
> On Wed, Jul 02, 2025 at 05:07:28PM +0530, Ashutosh Bapat wrote:
> > There's also the question how this is related to other patches affecting
> > shared memory - I think the most relevant one is the "shared buffers
> > online resize" by Ashutosh, simply because it touches the shared memory.
>
> I have added Dmitry to this thread since he has written most of the
> shared memory handling code.

Thanks! I like the idea behind this patch series. I haven't read it in
details yet, but I can imagine both patches (interleaving and online
resizing) could benefit from each other. In online resizing we've
introduced a possibility to use multiple shared mappings for different
types of data, maybe it would be convenient to use the same interface to
create separate mappings for different NUMA nodes as well. Using a
separate shared mapping per NUMA node would also make resizing easier,
since it would be more straightforward to fit an increased segment into
NUMA boundaries.

> > I don't think the splitting would actually make some things simpler, or
> > maybe more flexible - in particular, it'd allow us to enable huge pages
> > only for some regions (like shared buffers), and keep the small pages
> > e.g. for PGPROC. So that'd be good.
>
> The resizing patches split the shared buffer related structures into
> separate memory segments. I think that itself will help enabling huge
> pages for some regions. Would that help in your case?

Right, separate segments would allow to mix and match huge pages with
pages of regular size. It's not implemented in the latest version of
online resizing patch, purely to reduce complexity and maintain the same
invariant (everything is either using huge pages or not) -- but we could
do it other way around as well.



pgsql-hackers by date:

Previous
From: Steve Chavez
Date:
Subject: Re: PG 18 beta1 release notes misses mention of pg_noreturn
Next
From: Álvaro Herrera
Date:
Subject: Re: Please update your contact list: It must be pgsql-hackers@lists.postgresql.org