Greg Copeland wrote:
> > The paper does recommend ext3, but the differences between file systems
> > are very small. If you are seeing 'cp' as slow, I wonder if it may be
> > something more general, like poorly tuned hardware or something. You can
> > use 'dd' to throw some data around the file system and see if that is
> > showing slowness;  compare those numbers to another machine that has
> > different hardware/OS.
> > 
> > Also, though ext3 is slower, turning fsync off should make ext3 function
> > similar to ext2.  That would be an interesting test if you suspect ext3.
> 
> I'm curious as to why you recommended ext3 versus some other (JFS,
> XFS).  Do you have tests which validate that recommendation or was it a
> simple matter of getting the warm fuzzies from familiarity?

I used the attached email as a reference.  I just changed the wording to
be:
        
        File system choice is particularly difficult on Linux because there are
        so many file system choices, and none of them are optimal: ext2 is not
        entirely crash-safe, ext3 and xfs are journal-based, and Reiser is
        optimized for small files. Fortunately, the journaling file systems
        aren't significantly slower than ext2 so they are probably the best
        choice.

so I don't specifically recommend ext3 anymore.  As I remember, ext3 is
good only in that it can read ext2 file systems.  I think XFS may be the
best bet.

Can anyone clarify if "data=writeback" is safe for PostgreSQL. 
Specifically, are the data files recovered properly or is this option
only for a filesystem containing WAL?

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
>From [EMAIL PROTECTED] Sun Apr 14 
>10:26:49 2002
Return-path: <[EMAIL PROTECTED]>
Received: from postgresql.org (postgresql.org [64.49.215.8])
        by candle.pha.pa.us (8.11.6/8.10.1) with ESMTP id g3EEQmS21621
        for <[EMAIL PROTECTED]>; Sun, 14 Apr 2002 10:26:48 -0400 (EDT)
Received: from postgresql.org (postgresql.org [64.49.215.8])
        by postgresql.org (Postfix) with SMTP id 94C5B475C9B
        for <[EMAIL PROTECTED]>; Sun, 14 Apr 2002 10:26:43 -0400 (EDT)
Received: from sphinx.mythic-beasts.com (sphinx.mythic-beasts.com [195.82.107.246])
        by postgresql.org (Postfix) with ESMTP id 1E27547517F
        for <[EMAIL PROTECTED]>; Sun, 14 Apr 2002 10:25:31 -0400 (EDT)
Received: from matthew (helo=localhost)
        by sphinx.mythic-beasts.com with local-esmtp (Exim 3.33 #2)
        id 16wkwR-0000p2-00; Sun, 14 Apr 2002 15:25:19 +0100
Date: Sun, 14 Apr 2002 15:25:19 +0100 (BST)
From: Matthew Kirkwood <[EMAIL PROTECTED]>
X-X-Sender: <[EMAIL PROTECTED]>
To: "Riebs, Andy" <[EMAIL PROTECTED]>
cc: <[EMAIL PROTECTED]>
Subject: Re: [GENERAL] Performance Tuning Document?
In-Reply-To: <[EMAIL PROTECTED]>
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Precedence: bulk
Sender: [EMAIL PROTECTED]
Status: OR

On Thu, 28 Mar 2002, Matthew Kirkwood wrote:

[ oops, forgot to send this ages ago ]

> > > Under the "crossSectionTests(Mixed IR)" part of an OSDB run, a
> > > large number of shared_buffers causes severe slowdown on one of
> > > the tests -- it goes from a little over 200 seconds to nearly
> > > 2000.

> > --postgresql=no_hash_index

> Ah, that would make a lot of sense.  I'll do a run again with
> that option and see what turns up.

That was right on the nose.  The numbers are much better now.

My initial interest was in benchmarking different filesystems
on Linux.  In case anyone is interested, here are today's
numbers:

        tuning? single  ir      cs-ir   oltp    cs-oltp
                (sec)   (tps)   (sec)   (tps)   (sec)
ext3     kn     841.28   61.52  203.33  407.58  159.72
ext3-wb  kn     841.19   63.73  217.19  406.30  160.88
ext3-jd  kn     839.96   58.96  203.02  307.85  159.89
jfs      kn     840.53   62.74  205.90  348.33  177.70
minix    kn     841.51   62.12  201.44  343.87  176.68
ext2     kn     840.72   65.02  205.40  338.20  182.22

ext3-wb is ext3 with the "data=writeback" mount option.  ext3-jd
is ext3 with "data=journal" and a 200Mb journal instead of the
usual 32Mb one.  All filesystems were mounted noatime.

postgresql.conf for all these runs looks like:

tcpip_socket = true
shared_buffers = 10240
max_fsm_relations = 100
max_fsm_pages = 10000
max_locks_per_transaction = 256
wal_buffers = 10240
sort_mem = 5120000
vacuum_mem = 81920

Without hash indexes, it looks like only OLTP loads can
differentiate the filesystems.  Sometime (once I have got
a more recent kernel going) I'll try a dataset larger than
memory.

Matthew.


---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

Reply via email to