Re: Shared Memory: How to use SYSV rather than MMAP ?

From: Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>
To: tony(dot)reix(at)atos(dot)net
Cc: Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, sylvie(dot)empereur-mot(at)atos(dot)net
Subject: Re: Shared Memory: How to use SYSV rather than MMAP ?
Date: 2018-11-20 11:20:59
Message-ID: CAEepm=19dndi1ZM8oSnCBquDRR_0DHssZC3BL7P2dp8LBhgKzw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Nov 20, 2018 at 11:11 PM REIX, Tony <tony(dot)reix(at)atos(dot)net> wrote:
> On AIX, since with MMAP we have only 4K pages though we can have 64K pages with SYSV, we'd like to experiment with SYSV rather than MMAP and measure the impact to the performance.
>
> Looking at file: src/include/storage/dsm_impl.h , it seemed to me that replacing the line:
>
> #define DEFAULT_DYNAMIC_SHARED_MEMORY_TYPE DSM_IMPL_POSIX
> by the line:
> #define DEFAULT_DYNAMIC_SHARED_MEMORY_TYPE DSM_IMPL_SYSV

Hi Tony,

SHOW dynamic_shared_memory_type to see which one it's actually using,
and set it in postgresql.conf to change it.

> However, when looking at details by means of procmap tool, it is unclear if that worked or not.

These segments are short-lived ones used for parallel query. I
haven't used AIX recently but I suspect procmap -X will show them as
different types and show the page size, but you'd have to check that
while it's actually running a parallel query. For example, a large
parallel hash join that runs for a while would do it, and in theory
you might be able to see a small performance improvement for larger
page sizes due to better TLB cache hit ratios.

--
Thomas Munro
http://www.enterprisedb.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Vladimir Sitnikov 2018-11-20 11:23:01 Re: Libpq support to connect to standby server as priority
Previous Message Nikolay Shaplov 2018-11-20 11:15:45 Re: [PATCH] Opclass parameters