From: Chris Mason <chris.mason@oracle.com>
To: Chuck Ebbert <cebbert@redhat.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: filesystem benchmarking fun
Date: Wed, 16 May 2007 13:11:56 -0400 [thread overview]
Message-ID: <20070516171156.GY26766@think.oraclecorp.com> (raw)
In-Reply-To: <464B2AC2.10206@redhat.com>
On Wed, May 16, 2007 at 12:01:06PM -0400, Chuck Ebbert wrote:
> Chris Mason wrote:
> > For example, I'll pick on xfs for a minute. compilebench shows the
> > default FS you get from mkfs.xfs is pretty slow for untarring a
> > bunch of kernel trees. Dave Chinner gave me some mount options that
> > make it dramatically better, but it still writes at 10MB/s on a sata
> > drive that can do 80MB/s. Ext3 is better, but still only 20MB/s.
> >
>
> Now try JFS. My lawn grows faster than it can write a new kernel tree.
>
> What we need is a tool that shows *why* this stuff happens...
>
Unfortunately, this varies with every FS. ext3 is pretty fast for the
first 10 or so untars, and then the log wraps. I tossed a systemtap
probe into __log_wait_for_space and basically every time it gets called
vmstat shows write throughput go from 30MB/s to 4MB/s.
Presumably, xfs suffers from something similar since tuning the log to
be larger and the log buffers to be larger improves performance. I
don't remember if the jfs log is tunable here or not.
On ext3, blktrace shows that we're getting pretty good overall
sequential writeback except for the log flushing. reiserfsv3 gives
similar numbers to xfs, which is important only because I spent a
bunch of time tuning the v3 log flushing code to work in big batches a
few years ago.
At least on ext3, it may help to sort the blocks under io for
flushing...it may not. A bigger log would definitely help, but I would
say the mkfs defaults should be reasonable for a workload this simple.
(data=writeback was used for my ext3 numbers).
-chris
next prev parent reply other threads:[~2007-05-16 17:14 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-16 14:42 filesystem benchmarking fun Chris Mason
2007-05-16 16:01 ` Chuck Ebbert
2007-05-16 17:11 ` Chris Mason [this message]
2007-05-16 18:25 ` Andrew Morton
2007-05-16 19:13 ` Chris Mason
2007-05-16 19:33 ` Andrew Morton
2007-05-16 19:53 ` Chris Mason
2007-05-16 20:04 ` Andrew Morton
2007-05-16 20:14 ` Chris Mason
2007-05-16 20:37 ` Andrew Morton
2007-05-16 21:02 ` Chris Mason
2007-05-24 17:29 ` Vara Prasad
2007-05-22 16:35 ` Chris Mason
2007-05-22 17:50 ` John Stoffel
2007-05-22 18:12 ` Chris Mason
2007-05-22 18:21 ` Andrew Morton
2007-05-22 18:39 ` Chris Mason
2007-05-22 21:25 ` Matt Mackall
2007-05-25 7:14 ` Jens Axboe
2007-05-16 18:12 ` Jan Engelhardt
2007-05-16 19:12 ` Jeff Garzik
2007-05-16 19:16 ` Jeffrey Hundstad
2007-05-16 19:21 ` Jan Engelhardt
2007-05-18 3:32 ` Eric Sandeen
2007-05-16 19:25 ` Chris Mason
-- strict thread matches above, loose matches on Subject: below --
2007-05-16 21:01 Al Boldi
2007-05-17 11:52 Xu CanHao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070516171156.GY26766@think.oraclecorp.com \
--to=chris.mason@oracle.com \
--cc=cebbert@redhat.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.