[Top] [All Lists]

Re: deleting 2TB lots of files with delaylog: sync helps?

To: Michael Monnerie <michael.monnerie@xxxxxxxxxxxxxxxxxxx>
Subject: Re: deleting 2TB lots of files with delaylog: sync helps?
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Wed, 1 Sep 2010 13:19:54 +1000
Cc: xfs@xxxxxxxxxxx
In-reply-to: <201009010222.57350@xxxxxx>
References: <201009010130.41500@xxxxxx> <20100901000631.GO705@dastard> <201009010222.57350@xxxxxx>
User-agent: Mutt/1.5.20 (2009-06-14)
On Wed, Sep 01, 2010 at 02:22:31AM +0200, Michael Monnerie wrote:
> On Mittwoch, 1. September 2010 Dave Chinner wrote:
> > You're probably getting RMW cycles on inode writeback. I've been
> > noticing this lately with my benchmarking - the VM is being _very
> > aggressive_ reclaiming page cache pages vs inode caches and as a
> > result the inode buffers used for IO are being reclaimed between the
> > time it takes to create the inodes and when they are written back.
> > Hence you get lots of reads occurring during inode writeback.
> > 
> > By issuing a sync, you clear out all the inode writeback and all the
> > RMW cycles go away. As a result, there is more disk throughput
> > availble for the unlink processes.  There is a good chance this is
> > the case as the number of reads after the sync drop by an order of
> > magnitude...
> Nice explanation.
> > > Now it can be that the sync just causes more writes and stalls
> > > reads so overall it's slower, but I'm wondering why none of the
> > > devices says "100% util", which should be the case on deletes? Or
> > > is this again the "mistake" of the utilization calculation that
> > > writes do not really show up there?
> > 
> > You're probably CPU bound, not IO bound.
> This is a hexa-core AMD Phenom(tm) II X6 1090T Processor with up to 
> 3.2GHz per core, so that shouldn't be

I'm getting a 8core/16thread server being CPU bound with multithreaded
unlink workloads using delaylog, so it's entirely possible that all
CPU cores are fully utilised on your machine.

> - or is there only one core used? 
> I think I read somewhere that each AG should get a core or so...

If all the files are in one AG, then it will serialise on the AGI
header and won't use much more than one CPU.


Dave Chinner

<Prev in Thread] Current Thread [Next in Thread>