From: | Amul Sul <sulamul(at)gmail(dot)com> |
---|---|
To: | David Rowley <dgrowleyml(at)gmail(dot)com> |
Cc: | Daniel Gustafsson <daniel(at)yesql(dot)se>, Andres Freund <andres(at)anarazel(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, John Naylor <johncnaylorls(at)gmail(dot)com>, Matthias van de Meent <boekewurm+postgres(at)gmail(dot)com>, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Add bump memory context type and use it for tuplesorts |
Date: | 2024-04-16 11:04:54 |
Message-ID: | CAAJ_b95dYGB1ELTn+hcckdc_w6mdoqSVv_On5TstLK0wCpfOiw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Apr 16, 2024 at 3:44 PM David Rowley <dgrowleyml(at)gmail(dot)com> wrote:
> On Tue, 16 Apr 2024 at 17:13, Amul Sul <sulamul(at)gmail(dot)com> wrote:
> > Attached is a small patch adding the missing BumpContext description to
> the
> > README.
>
> Thanks for noticing and working on the patch.
>
> There were a few things that were not quite accurate or are misleading:
>
> 1.
>
> > +These three memory contexts aim to free memory back to the operating
> system
>
> That's not true for bump. It's the worst of the 4. Worse than aset.
> It only returns memory when the context is reset/deleted.
>
> 2.
>
> "These memory contexts were initially developed for ReorderBuffer, but
> may be useful elsewhere as long as the allocation patterns match."
>
> The above isn't true for bump. It was written for tuplesort. I think
> we can just remove that part now. Slab and generation are both old
> enough not to care why they were conceived.
>
> Also since adding bump, I think the choice of which memory context to
> use is about 33% harder than it used to be when there were only 3
> context types. I think this warrants giving more detail on what these
> 3 special-purpose memory allocators are good for. I've added more
> details in the attached patch. This includes more details about
> freeing malloc'd blocks
>
> I've tried to detail out enough of the specialities of the context
> type without going into extensive detail. My hope is that there will
> be enough detail for someone to choose the most suitable looking one
> and head over to the corresponding .c file to find out more.
>
> Is that about the right level of detail?
>
Yes, it looks much better now, thank you.
Regards,
Amul
From | Date | Subject | |
---|---|---|---|
Next Message | Nazir Bilal Yavuz | 2024-04-16 11:12:19 | Use read streams in CREATE DATABASE command when the strategy is wal_log |
Previous Message | David Rowley | 2024-04-16 11:01:28 | Re: Add bump memory context type and use it for tuplesorts |