stride (fwd)
Richard Jackson
rjackson at mason.gmu.edu
Tue Jun 24 12:30:29 UTC 2008
Two things;
1. Most likely I missed it but I could not find how to report the stride
setting for a ext3 filesystem. I do not see stride mentioned in the
man pages for dumpe2fs and tune2fs nor in the dumpe2fs report.
2. It has been pointed out the mke2fs man page description for stride needs
improvement. Andreas Dilger in a post last year,
http://osdir.com/ml/file-systems.ext3.user/2007-06/msg00003.html,
mentioned a patch was submitted. I assume to address the mke2fs man page.
If this is not the case then I suggest adding something similar to Ted's
or Andreas' descriptions to replace the current stride mke2fs man page.
If nothing else change from
stride=<stripe-size>
Configure the filesystem for a RAID array with
<stripe-size> filesystem blocks per stripe.
to
stride=<stride-size>
The number of filesystem blocks on a single disk. The purpose
is to spread the filesystem metadata across the disks. For
example, if the RAID chunk/segment size is 64KB and the
filesystem block size is 4KB, then the stride size is 16
(64KB/4KB).
These types of explanations are more helpful than something like...
-f fragment-size
Specify the size of fragments in bytes.
taken from the mke2fs man pages. As you can see the explanation adds very
little value. The stride explanation simply seems wrong.
Richard
Forwarded message:
> On Thu, Jun 19, 2008 at 06:21:24AM -0400, Mag Gam wrote:
> > ok, in a way its like a stripe? I though when you do a stripe you put the
> > metadata on number of disks too. How is that different? Is there a diagram I
> > can refer to?
>
> Yes, which is why the mke2fs man page states:
>
> stride=<stripe-size>
> Configure the filesystem for a RAID array with
> <stripe-size> filesystem blocks per stripe.
>
> So if the size of a stripe on each a disk is 64k, and you are using a
> 4k filesystem blocksize, then 64k/4k == 16, and that would be an
> "ideal" stride size, in that for each successive block group, the
> inode and block bitmap would increased by an offset of 16 blocks from
> the beginning of the block group.
>
> The reason for doing this is to avoid problems where the block bitmap
> ends up on the same disk for every single block group. The classic
> case where this would happen is if you have a 5 disks in a RAID 5
> configuration, which means with 4 disks per stripe, and 8192 blocks in
> a blockgroup, then if the block bitmap is always at the same offset
> from the beginning of the block group, one disk will get all of the
> block bitmaps, and that ends up being a major hot spot problem for the
> hard drive.
>
> As it turns out, if you use 4 disks in a RAID 5 configuration, or 6
> disks in a RAID 5 configuration, this problem doesn't arise at all,
> and you don't need to use the stride option. And in most cases,
> simply using a stride=1, that is actually enough to make sure that
> each block and inode bitmaps will get forced onto successively
> different disks.
>
> With ext4's flex_bg enhancement, the need to specify stride option of
> RAID arrays will also go away.
>
> - Ted
>
> _______________________________________________
> Ext3-users mailing list
> Ext3-users at redhat.com
> https://www.redhat.com/mailman/listinfo/ext3-users
>
--
Regards, /~\ The ASCII
Richard Jackson \ / Ribbon Campaign
Computer Systems Engineer, X Against HTML
Information Technology Unit, Technology Systems Division / \ Email!
Enterprise Servers and Operations Department
George Mason University, Fairfax, Virginia
More information about the Ext3-users
mailing list