From: | Marco Fortina <marco_fortina(at)hotmail(dot)it> |
---|---|
To: | Stephen Frost <sfrost(at)snowman(dot)net> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | R: Proposal: Shared Work Mem Area |
Date: | 2023-04-06 13:18:17 |
Message-ID: | PA4PR10MB5516E4AF81ADE3E4BA602BC9F7919@PA4PR10MB5516.EURPRD10.PROD.OUTLOOK.COM |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Thanks Stephen.
https://commitfest.postgresql.org/42/3867/ is not exacly what I proposed as new feature to developers.
If I'm not wrong, almost all main memory areas have a fixed size:
shared_buffers
effective_cache_size
wal_buffers
Instead, work_mem is per-process dynamically allocated up to defined size limit.
What I suggested is to replace work_mem from per-process allocation to global and fixed size allocation (see pga_aggregate_target on Oracle) and shared to worker processes.
Let's assume the new parameter name is worker_mem_area and this was set to 8GB: with my proposal method each worker process do not use it's own dedicated work_mem but the shared one.
In this way each worker is also able to peek free pages from the worker_mem_area if needed.
Regards,
Marco
________________________________
Da: Stephen Frost
Inviato: Giovedì, 06 Aprile, 2023 14:43
A: Marco Fortina
Cc: pgsql-general(at)postgresql(dot)org
Oggetto: Re: Proposal: Shared Work Mem Area
Greetings,
* Marco Fortina (marco_fortina(at)hotmail(dot)it) wrote:
> I would like to propose to developers a new feature to replace the private management of the work mem with a management through shared memory: allocated at the start of PostgreSQL this area should be shared to all worker processes as for example Oracle Database PGA do.
>
> This would allow an optimal use of this memory area by limiting only its global maximum limit and not a configuration/allocation at the process level.
>
> What do you think about my proposal?
There's ongoing work to provide a way to have a global maximum limit
which doesn't involve entirely reworking how work_mem works today. The
commitfest entry for that work is here:
https://commitfest.postgresql.org/42/3867/
If you're interested in that, getting additional reviews and comments on
the work would be helpful in moving it forward.
Thanks,
Stephen
From | Date | Subject | |
---|---|---|---|
Next Message | Marco Fortina | 2023-04-06 13:37:06 | Re: Proposal: Shared Work Mem Area |
Previous Message | Stephen Frost | 2023-04-06 12:43:52 | Re: Proposal: Shared Work Mem Area |