Re: Estimating HugePages Requirements?

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: Magnus Hagander <magnus@hagander.net>
Cc: "Bossart, Nathan" <bossartn@amazon.com>, Michael Paquier <michael@paquier.xyz>, Fujii Masao <masao.fujii@oss.nttdata.com>, Justin Pryzby <pryzby@telsasoft.com>, Andres Freund <andres@anarazel.de>, Mark Dilger <mark.dilger@enterprisedb.com>, Don Seiler <don@seiler.us>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2022-03-14T17:34:17Z
Lists: pgsql-hackers

Attachments

On Mon, Mar 14, 2022 at 04:26:43PM +0100, Magnus Hagander wrote:
> Nothing fixing this ended up actually getting committed, right? That
> is, we still get the extra log output?

Correct.

> And in fact, the command documented on
> https://www.postgresql.org/docs/devel/kernel-resources.html doesn't
> actually produce the output that the docs show, it also shows the log
> line, in the default config? If we can't fix the extra logging we
> should at least have our docs represent reality -- maybe by adding a
> "2>/dev/null" entry? But it'd be better to have it not output that log
> in the first place...

I attached a patch to adjust the documentation for now.  This apparently
crossed my mind earlier [0], but I didn't follow through with it for some
reason.

> (Of course what I'd really want is to be able to run it on a cluster
> that's running, but that was discussed downthread so I'm not bringing
> that one up for changes now)

I think it is worth revisiting the extra logging and the ability to view
runtime-computed GUCs on a running server.  Should this be an open item for
v15, or do you think it's alright to leave it for the v16 development
cycle?

[0] https://postgr.es/m/C45224E1-29C8-414C-A8E6-B718C07ACB94%40amazon.com

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com

Commits

  1. Silence extra logging when using "postgres -C" on runtime-computed GUCs

  2. doc: Improve postgres command for shared_memory_size_in_huge_pages

  3. Introduce GUC shared_memory_size_in_huge_pages

  4. Support "postgres -C" with runtime-computed GUCs

  5. Make shared_memory_size a preset option

  6. Introduce GUC shared_memory_size

  7. Move the shared memory size calculation to its own function

  8. Add new GUC, max_worker_processes, limiting number of bgworkers.