Re: shared_buffers formula - Mailing list pgsql-general

From Alexander Shutyaev
Subject Re: shared_buffers formula
Date
Msg-id CAGBp8g-vaRMMg82wei9BWryvr-Wsiud8y5-HQ1SRVfgMRThfNQ@mail.gmail.com
Whole thread Raw
In response to Re: shared_buffers formula  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: shared_buffers formula  (Andres Freund <andres@2ndquadrant.com>)
Re: shared_buffers formula  (Bill Moran <wmoran@potentialtech.com>)
Re: shared_buffers formula  (Francisco Olarte <folarte@peoplecall.com>)
List pgsql-general
Thanks for the answer. Now, given this info I've calculated that our postgresql should occupy approx. 30,53 GB while the server has 125 GB of RAM. However we often see in top that there is very little free memory and even swap is used. What could be the reason of postgres using so much memory?

Thanks in advance,
Alexander Shutyaev

2015-03-03 14:26 GMT+03:00 Andres Freund <andres@2ndquadrant.com>:
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

pgsql-general by date:

Previous
From: David G Johnston
Date:
Subject: Re: Partitioning and constraint exclusion
Next
From: Andres Freund
Date:
Subject: Re: shared_buffers formula