Tuning for PostGreSQL Database

Tom Samplonius tom at sdf.com
Fri Jul 25 01:55:59 PDT 2003

On Thu, 24 Jul 2003, Christopher Weimann wrote:

> So if PostGreSQL uses fsync when writing ( which I think is only true
> on the write-ahead logs at this point ) that data will NOT wind up in 
> the cache.  Anything that PostGreSQL reads should wind up in the cache?
> #uname -r
> 4.7-RELEASE-p3
> # top -b | head -5
> last pid: 58622;  load averages:  1.96,  1.67,  1.47  up 2+12:59:15    13:31:39
> 130 processes: 6 running, 124 sleeping
> Mem: 348M Active, 2628M Inact, 438M Wired, 155M Cache, 380M Buf, 76M Free
> Swap: 4096M Total, 28K Used, 4096M Free
> The 2628M Inact is likley to be acting as cache?
> Basically I should stop worrying about this :)

  Maybe you should continue to worry.  PostgreSQL isn't MySQL (or a
typical server application).  It reads all database pages into its shared
memory area.  It is wasteful for the DBMS and the OS to both cache this
data.  You'll want the PostgreSQL shared memory size to be around 75% the
size of RAM (on a dedicated DBMS server).  In fact, many commercial DBMS
systems will use raw writes to bypass the OS cache!


More information about the freebsd-performance mailing list