[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090429193744.GA17797@mit.edu>
Date: Wed, 29 Apr 2009 15:37:44 -0400
From: Theodore Tso <tytso@....edu>
To: Curt Wohlgemuth <curtw@...gle.com>
Cc: Andreas Dilger <adilger@....com>,
ext4 development <linux-ext4@...r.kernel.org>
Subject: Re: Question on block group allocation
On Wed, Apr 29, 2009 at 03:16:47PM -0400, Theodore Tso wrote:
>
> When you have a chance, can you send out the details from your test run?
>
Oops, sorry, our two e-mails overlapped. Sorry, I didn't see your new
e-mail when I sent my ping-o-gram.
On Wed, Apr 29, 2009 at 11:38:49AM -0700, Curt Wohlgemuth wrote:
>
> Okay, my phrasing was not as precise as it could have been. What I
> meant by "total fragmentation" was simply that the range of physical
> blocks for the 10GB file was much lower with Andreas' patch:
>
> Before patch: 8282112 - 103266303
> After patch: 271360 - 5074943
>
> The number of extents is much larger. See the attached debugfs output.
Ah, OK. You didn't attach the "e2fsck -E fragcheck" output, but I'm
going to guess that the blocks for 10g, 4g, and 4g-2 ended up getting
interleaved, possibly because they were written in parallel, and not
one after each other? Each of the extents in the "after" debugfs were
proximately 2k blocks (8 megabytes) in length, and are separated by a
largish cnumber of blocks.
Now, if my theory that the files were written in an interleaved
fashion is correct, if it is also true that they will be read in an
interleaved pattern, the layout on disk might actually be the best
one. If however they are going to be read sequentially, and you
really want them to be allocated contiguously, then if you know what
the final size of these files will be, then the probably the best
thing to do is to use the fallocate system call.
Does that make sense?
- Ted
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists