Re: RAM usage of PostgreSql

2019-04-04 Thread Laurenz Albe
Prasad wrote:
> I have installed PostgreSQL 9.4 (open source) version on my CentOS
> Linux Red Hat 7 production server and kept default parameters which
> are in postgresql.conf file.So my basic question is, once I start
> using postgres how much RAM the postgres processes  consumes
> (postgres related processes only). 
> 
> There are lot of allocations in postgresql.conf file, for example
> shared_buffers, work_mem...etc.
> 
> As per my knowledge, all postgres processes should not consume the
> RAM more than the value assigned in shared_buffers.Please clarify
> and let me know if I misunderstand the concept..

shared_buffers only determines the shared memory cache, each database
process still needs private memory.

As a rule of thumb, start with shared_buffers set to 1/4 of your
available RAM, but no more than 8GB.

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com





Re: RAM usage of PostgreSql

2019-04-04 Thread Justin Pryzby
Hi,

|Cc: pgsql-nov...@postgresql.org, pgsql-performa...@postgresql.org
Please don't cross post to multiple lists.

On Thu, Apr 04, 2019 at 08:18:01PM +0530, Prasad wrote:
> There are lot of allocations in postgresql.conf file, for example
> shared_buffers, work_mem...etc.
> 
> As per my knowledge, all postgres processes should not consume the RAM more
> than the value assigned in shared_buffers.Please clarify and let me know if
> I misunderstand the concept..

shared_buffers is what's *reserved* for postgres and unavailable for other
processes whenever PG is running.

work_mem is what each postgres process might use, if needed.  When complete,
that's returned to the OS.  Note that an expensive query might actually use
some multiple of work_mem (it's per sort/hash node and also per parallel
process, and also hash aggregate can sometimes use more than work_mem).

Justin




RAM usage of PostgreSql

2019-04-04 Thread Prasad
Hi,

I have installed PostgreSQL 9.4 (open source) version on my CentOS Linux
Red Hat 7 production server and kept default parameters which are in
postgresql.conf file.So my basic question is, once I start using postgres
how much RAM the postgres processes  consumes (postgres related processes
only).

There are lot of allocations in postgresql.conf file, for example
shared_buffers, work_mem...etc.

As per my knowledge, all postgres processes should not consume the RAM more
than the value assigned in shared_buffers.Please clarify and let me know if
I misunderstand the concept..

-- 
Thanks,
Venkata Prasad