Обсуждение: How to calculate shared memory size

Поиск
Список
Период
Сортировка

How to calculate shared memory size

От
Rébeli-Szabó Tamás
Дата:
Hello all,

I want to do a proper calculation of the number of huge pages needed for 
PostgreSQL to start.

To do that, I need a good approximation of how much shared memory will 
be requested at server startup.

Looking at the shared memory calculation in the source (ipci.c), I can 
see that two terms stand out:

   size = add_size(size, BufferShmemSize()); ---> shared_buffers
   size = add_size(size, XLOGShmemSize()); --> 1/32 * shared_buffers, but 
max WAL segment size

If I use only those two terms ( shared buffers + WAL segment size) for 
my calculation, the result will be off by a lot, especially with bigger 
shared buffers (e.g. 32 GB).

What are any other major addends (in the order of 10 megabytes or more) 
that I need to take into account to get a better result?

Regards,

tamas