On Feb 15, 2008, at 12:06 PM, Josh Berkus wrote:
On Friday 15 February 2008 06:29, Greg Smith wrote:
PostgreSQL only uses direct I/O for writing to the WAL; everything
else
goes through the regular OS buffer cache unless you force it to do
otherwise at the OS level (like some Solaris setups do with
forcedirectio).
Also, note that even when direct I/O is available, most users and
benchmark
tests have reported that having PostgreSQL "take over" the entire
cache is
not a net performance gain. I believe this is mostly because our I/
O and
caching code aren't designed for this kind of operation.
I believe that MyEmma had a different experience on their workload,
though.
Actually, while we did have shared_buffers set to 4G on an 8G system
when we were running with forcedirectio, the decision to even run
with forcedirectio was a temporary until we were able (welll, forced
to) migrate to a new system with a sane drive configuration. The old
set up was done horribly by a sysadmin who's no longer with us who
set us up with a RAID5 array with both the data and xlogs both
mirrored across all of the disks with no spares. So, I wouldn't
consider the numbers I was seeing then a reliable expectation as that
system was nowhere close to ideal. We've seen much more sane and
consistent numbers on a more normal setup, i.e. without forcedirectio
and with <= 25% system memory.
Erik Jones
DBA | Emma®
erik@xxxxxxxxxx
800.595.4401 or 615.292.5888
615.292.0777 (fax)
Emma helps organizations everywhere communicate & market in style.
Visit us online at http://www.myemma.com
---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq