Re: Performance tuning for linux, 1GB RAM, dual CPU?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Christian Bucanac <christian(dot)bucanac(at)mindark(dot)com>
Cc: "Pgsql-General (E-mail)" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Performance tuning for linux, 1GB RAM, dual CPU?
Date: 2001-07-11 16:51:59
Message-ID: 23761.994870319@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Christian Bucanac <christian(dot)bucanac(at)mindark(dot)com> writes:
>> I am going to try 768M (98304) for buffers and 6144 (6144 * 32 = 192M)
>> for sort mem. This way with the DB server serving a max of 32 application
>> servers the kernel and other processes should still have the last 64Mb RAM.

This is almost certainly a lousy idea. You do *not* want to chew up all
available memory for PG shared buffers; you should leave a good deal of
space for kernel-level disk buffers.

Other fallacies in the above: (1) you're assuming the SortMem parameter
applies once per backend, which is not the case (it's once per sort or
hash step in a query, which could be many times per backend); (2) you're
not allowing *anything* for any space usage other than shared disk
buffers and sort memory.

The rule of thumb I recommend is to use (at most) a quarter of real RAM
for shared disk buffers. I don't have hard measurements to back that
up, but I think it's a lot more reasonable as a starting point than
three-quarters of RAM.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2001-07-11 16:55:07 Re: [PATCH] Partial indices almost there
Previous Message Ryan Mahoney 2001-07-11 16:46:56 Re: vacuum and 24/7 uptime