public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Martin Steigerwald <Martin@lichtvoll.de>
Cc: linux-xfs@oss.sgi.com
Subject: Re: [RFC, PATCH 0/7] XFS: dynamic busy extent tracking
Date: Fri, 10 Oct 2008 09:33:28 +1100	[thread overview]
Message-ID: <20081009223328.GI9597@disturbed> (raw)
In-Reply-To: <200810092017.33042.Martin@lichtvoll.de>

On Thu, Oct 09, 2008 at 08:17:32PM +0200, Martin Steigerwald wrote:
> 
> Hi Dave,
> 
> Am Mittwoch 08 Oktober 2008 schrieb Dave Chinner:
> > The busy extent tracking in XFS is currently very static and has
> > some performance issues. We can only track 128 busy extents per AG,
> > and when we overflow this we fall back to synchronous transactions.
> > Also, every time we re-use a busy extent we cause a synchronous log
> > force, which stops all allocation and freeing in that AG while the
> > log force is in progress.
> 
> Could this accelerate
> 
> tar -xf linux-2.6.26.tar.gz
> rm -r linux-2.6.26

Not really. There is very little reuse of freed extents in this
type of workload. It's when you have 10 users on the filesystem
all doing that sort of thing that it will make a difference.

> ?
> 
> A student in the Linux Performance Tuning course I hold this week compared 
> this with ext3, even with the improved mkfs.xfs options (but without 
> lazy-count=1, cause mkfs.xfs from Debian Etch is too old) and even with 
> noop as IO scheduler. AFAIR XFS took roughly 3-4 times as long as Ext3, I 
> did not note the exact numbers. This was with 2.6.25. I can repeat the 
> test locally with 2.6.26.5 if wanted.

Yes, that's par for the course. XFS journals transactions almost
immediately, whereas ext3 gathers lots of changees in memory and
checkpoints infrequently. Hence XFS writes a lot more to the
journal and is hence slower. The dynamic extent tracking is a
necessary step to moving the XFS journalling to a more
checkpoint-like setup which would perform much less journal
I/O and hence run substantially faster....

See the asynchronous transaction aggregation section here:

http://xfs.org/index.php/Improving_Metadata_Performance_By_Reducing_Journal_Overhead

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

  reply	other threads:[~2008-10-09 22:33 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-07 22:09 [RFC, PATCH 0/7] XFS: dynamic busy extent tracking Dave Chinner
2008-10-07 22:09 ` [PATCH 1/7] XFS: rename xfs_get_perag Dave Chinner
2008-10-08 18:41   ` Christoph Hellwig
2008-10-07 22:09 ` [PATCH 2/7] XFS: replace fixed size busy extent array with an rbtree Dave Chinner
2008-10-08 18:49   ` Christoph Hellwig
2008-10-09  0:06     ` Dave Chinner
2008-10-07 22:09 ` [PATCH 3/7] XFS: Don't immediately reallocate busy extents Dave Chinner
2008-10-07 22:09 ` [PATCH 4/7] XFS: Don't use log forces when busy extents are allocated Dave Chinner
2008-10-07 22:09 ` [PATCH 5/7] XFS: Do not classify freed allocation btree blocks as busy Dave Chinner
2008-10-07 22:09 ` [PATCH 6/7] XFS: Avoid busy extent ranges rather than the entire extent Dave Chinner
2008-10-07 22:09 ` [PATCH 7/7] XFS: Simplify transaction busy extent tracking Dave Chinner
2008-10-09 18:17 ` [RFC, PATCH 0/7] XFS: dynamic " Martin Steigerwald
2008-10-09 22:33   ` Dave Chinner [this message]
2008-10-10  7:11     ` Martin Steigerwald

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=20081009223328.GI9597@disturbed \
    --to=david@fromorbit.com \
    --cc=Martin@lichtvoll.de \
    --cc=linux-xfs@oss.sgi.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox