Re: Fast DSM segments

Поиск
Список
Период
Сортировка
От Thomas Munro
Тема Re: Fast DSM segments
Дата
Msg-id CA+hUKGJn0afcbvcL528Qn-0nV692=iLaeKBfDPb+ftQb-SsbxQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Fast DSM segments  (Andres Freund <andres@anarazel.de>)
Ответы Re: Fast DSM segments  (Thomas Munro <thomas.munro@gmail.com>)
Список pgsql-hackers
On Sat, Jun 20, 2020 at 7:17 AM Andres Freund <andres@anarazel.de> wrote:
> On 2020-06-19 17:42:41 +1200, Thomas Munro wrote:
> > On Thu, Jun 18, 2020 at 6:05 PM Thomas Munro <thomas.munro@gmail.com> wrote:
> > > Here's a version that adds some documentation.
> >
> > I jumped on a dual socket machine with 36 cores/72 threads and 144GB
> > of RAM (Azure F72s_v2) running Linux, configured with 50GB of huge
> > pages available, and I ran a very simple test: select count(*) from t
> > t1 join t t2 using (i), where the table was created with create table
> > t as select generate_series(1, 400000000)::int i, and then prewarmed
> > into 20GB of shared_buffers.
>
> I assume all the data fits into 20GB?

Yep.

> Which kernel version is this?

Tested on 4.19 (Debian stable/10).

> How much of the benefit comes from huge pages being used, how much from
> avoiding the dsm overhead, and how much from the page table being shared
> for that mapping? Do you have a rough idea?

Without huge pages, the 36 process version of the test mentioned above
shows around a 1.1x speedup, which is in line with the numbers from my
first message (which was from a much smaller computer).  The rest of
the speedup (2x) is due to huge pages.

Further speedups are available by increasing the hash chunk size, and
probably doing NUMA-aware allocation, in later work.

Here's a new version, using the name min_dynamic_shared_memory, which
sounds better to me.  Any objections?  I also fixed the GUC's maximum
setting so that it's sure to fit in size_t.

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Amit Langote
Дата:
Сообщение: Re: [PATCH] Performance Improvement For Copy From Binary Files
Следующее
От: Justin Pryzby
Дата:
Сообщение: Re: HashAgg's batching counter starts at 0, but Hash's starts at 1.