Re: Estimating HugePages Requirements?
Nathan Bossart <bossartn@amazon.com>
From: "Bossart, Nathan" <bossartn@amazon.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Justin Pryzby <pryzby@telsasoft.com>, Andres Freund <andres@anarazel.de>, Magnus Hagander <magnus@hagander.net>, Mark Dilger <mark.dilger@enterprisedb.com>, Don Seiler <don@seiler.us>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2021-08-31T05:37:52Z
Lists: pgsql-hackers
Attachments
- v3-0001-Move-the-shared-memory-size-calculation-to-its-ow.patch (application/octet-stream) patch v3-0001
- v3-0002-Introduce-shared_memory_size-and-huge_pages_requi.patch (application/octet-stream) patch v3-0002
On 8/30/21, 12:29 AM, "Michael Paquier" <michael@paquier.xyz> wrote: > Attached is a WIP to show how the order of the operations could be > changed, as that's easier to grasp. Even if we don't do that, having > the GUC and the refactoring of CalculateShmemSize() would still be > useful, as one could just query an existing instance for an estimation > of huge pages for a cloned one. > > The GUC shared_memory_size should have GUC_NOT_IN_SAMPLE and > GUC_DISALLOW_IN_FILE, with some documentation, of course. I added the > flags to the GUC, not the docs. The code setting up the GUC is not > good either. It would make sense to just have that in a small wrapper > of ipci.c, perhaps. I moved the GUC calculation to ipci.c, adjusted the docs, and added a huge_pages_required GUC. It's still a little rough around the edges, and I haven't tested it on Windows, but this seems like the direction the patch is headed. Nathan
Commits
-
Silence extra logging when using "postgres -C" on runtime-computed GUCs
- 8bbf8461a3a2 15.0 landed
-
doc: Improve postgres command for shared_memory_size_in_huge_pages
- bbd4951b73ec 15.0 landed
-
Introduce GUC shared_memory_size_in_huge_pages
- 43c1c4f65eab 15.0 landed
-
Support "postgres -C" with runtime-computed GUCs
- 0c39c292077e 15.0 landed
-
Make shared_memory_size a preset option
- 3b231596ccfc 15.0 landed
-
Introduce GUC shared_memory_size
- bd1788051b02 15.0 landed
-
Move the shared memory size calculation to its own function
- 0bd305ee1d42 15.0 landed
-
Add new GUC, max_worker_processes, limiting number of bgworkers.
- 6bc8ef0b7f1f 9.4.0 cited