Re: shared_buffers 8GB maximum

Поиск
Список
Период
Сортировка
От Vitaliy Garnashevich
Тема Re: shared_buffers 8GB maximum
Дата
Msg-id 688b6a68-bcaf-5658-8b94-fa5720c74d7c@gmail.com
обсуждение исходный текст
Ответ на Re: shared_buffers 8GB maximum  (Tomas Vondra <tomas.vondra@2ndquadrant.com>)
Ответы Re: shared_buffers 8GB maximum  (Pavel Stehule <pavel.stehule@gmail.com>)
Re: shared_buffers 8GB maximum  (Tomas Vondra <tomas.vondra@2ndquadrant.com>)
Re: shared_buffers 8GB maximum  (Vick Khera <vivek@khera.org>)
Список pgsql-general
> I certainly wouldn't recommend using 1/2 of RAM right away. There's a
> good chance it would be a waste of memory - for example due to double
> buffering, which effectively reduces "total" cache hit ratio.

Double buffering is often mentioned in context of tuning shared buffers. 
Is there a tool to actually measure the amount of double buffering 
happening in the system?

> Those evictions are performed either by backends or bgwriter, both of
> which are less efficient than checkpointer. Not only can checkpointer
> perform various optimizations (e.g. sorting buffers to make the writes
> more sequential), but it also writes each dirty buffer just once. With
> smaller shared_buffers the page may have be written multiple times.

In the case when shared_buffers cover most of RAM, most of writes should 
happen by checkpointer, and cache hit ratio should be high. So a 
hypothetical question: Could shared_buffers=200GB on a 250 GB RAM server 
ever be a reasonable setting? (assuming there are no other applications 
running except postgres, and 50GB is enough for allocating 
work_mem/maintenance_work_mem and for serving queries)

> The best thing you can do is set shared buffers to some conservative
> value (say, 4-8GB), let the system run for a day or two, compute the
> cache hit ratio using metrics in pg_stat_database, and then decide if
> you need to resize shared buffers.
>
> Gradual increases are a good approach in general. And yes, having
>
>      buffers_checkpoint > buffers_clean > buffers_backend
>
> is a good idea too. Together with the cache hit ratio it's probably a
> more sensible metric than looking at usagecount directly.

Thanks! While increasing shared_buffers we'll be looking at changes in 
cache hit ratio too.

Regards,
Vitaliy



В списке pgsql-general по дате отправления:

Предыдущее
От: David Rowley
Дата:
Сообщение: Re: query performance
Следующее
От: Rich Shepard
Дата:
Сообщение: Re: Need to fix one more glitch in upgrade to -10.2