From: | Andres Freund <andres(at)2ndquadrant(dot)com> |
---|---|
To: | Alexander Shutyaev <shutyaev(at)gmail(dot)com> |
Cc: | pgsql-general <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: shared_buffers formula |
Date: | 2015-03-03 11:26:22 |
Message-ID: | 20150303112622.GG2579@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 2015-03-03 15:06:54 +0400, Alexander Shutyaev wrote:
> Recently we've been having problems with swap on our postgresql server. It
> has 125GB of RAM. We've decided to calculate it's memory consumption. To do
> this we've used the formulas from the official docs [1].
Note that I think those formulas have been removed from the docs for a
while now (9.2?).
> However there is
> one parameter that seems strange - Shared disk buffers. According to the
> formula it occupies the following space:
>
> (block_size + 208) * shared_buffers
> Our values are
>
> block_size=8192
> shared_buffers=30GB
> The block_size has the default value and shared_buffers was calculated by
> pgtune. According to the formula the product will be around 252 000 GB
> which doesn't make any sense.
The problem with your calculation is that the shared_buffers referenced
in the formula is the number of buffers - whereas when you specify it
using a size unit (like MB, GB,...) that amount of memory is divided by
the size of a page. So you're off by a factor of 8192.
Greetings,
Andres Freund
--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Ramesh T | 2015-03-03 12:39:19 | |
Previous Message | Alexander Shutyaev | 2015-03-03 11:06:54 | shared_buffers formula |