Solved

mke2fs stride and stripe-width

Posted on 2008-11-02
12
1,615 Views
Last Modified: 2012-05-05
I encountered http://wiki.centos.org/HowTos/Disk_Optimization the "Raid math", but it seems incorrect.
According to my understanding of man page for mke2fs, the pointed out webpage is talking about stripe-width calculation, not the stride.

What You think? Are those CentOS guys misleading (unintentionally of course)?
0
Comment
Question by:ravenpl
  • 6
  • 3
  • 2
12 Comments
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 22869702
Hi,
there is nothing to calculate for stripe width, because stripe width is the number of parallel stripes that can be written to or read from simultaneously. This is of course equal to the number of disks in the array.
Stride, on the other hand, is the number of filesystem blocks per stripe, i.e. the size of the stripes written to each disk.
So the stride is, roughly, the same as stripe-size.
wmp
0
 
LVL 43

Author Comment

by:ravenpl
ID: 22869876
woolmilkporc: So You confirm the referred webpage is incorrect?
0
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 22869986
No, not at all.
They refer to stripe size in units of Kilobytes, and what they call stride is the stripe size in units of filesystem blocks (in their example 4K).
A bit confusing, but that's all they say, and it's correct.
wmp

 
0
 
LVL 43

Author Comment

by:ravenpl
ID: 22870213
Is it? From the webpage
"For example if you have a 4 drive raid 5 and it is using 64K chunks, your stripe size will be 256K."
chunk size and stipe-size is usually the same, isn't it? So 256K is the strip-width(in bytes).
What's more in the example the stripe-width is in fact 192K(only 3 drives are holding data)

"Given a 4K filesystem block size you would then have a stride of 64 (256/4)."
Now IMHO it's not stride(they claim), but stripe-width (in block of course).

So who's right?
The mke2fs accepts both arguments, stride and stripe-width, so mixing them up is not the best idea.
0
 
LVL 43

Author Comment

by:ravenpl
ID: 22870493
OK, i think the whole confision comes from e2fstools inconsistency
From CentOS mke2fs manpage (very succinct and dully and unclear, IMHO)
       stride=stripe-size
                          Configure the filesystem for a RAID array with stripe-size filesystem  blocks  per
                          stripe.

From Fedora mke2fs manpage
                   stride=stride-size
                          Configure the filesystem for a RAID array with stride-size filesystem blocks. This
                          is  the number of blocks read or written to disk before moving to next disk, which
                          is sometimes referred to as the chunk size.   This  mostly  affects  placement  of
                          filesystem  metadata like bitmaps at mke2fs time to avoid placing them on a single
                          disk, which can hurt the performanace.  It may also be used by block allocator.

                   stripe-width=stripe-width
                          Configure the filesystem for a RAID array with stripe-width filesystem blocks  per
                          stripe.  This is typically be stride-size * N, where N is the number of data-bear-
                          ing disks in the RAID (e.g. for RAID 5 there is one parity disk so N will  be  the
                          number of disks in the array minus 1).  This allows the block allocator to prevent
                          read-modify-write of the parity in a RAID stripe if  possible  when  the  data  is
                          written.

Now the question is whether "stride=" has changed it's meaning or not?
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 68

Expert Comment

by:woolmilkporc
ID: 22870536
OK,
it seems one must read their text more than once.
There is actually one point where they confuse stripe-size and stripe-width (in K, which is uncommon, as one measures stripe-width usually in # of parallel stripes/chunks), which leads to a very strange sort of reckoning. The stride calculation in their example should result in 16 (right?), given they call a 5-disk RAID-5 a "4 drive raid 5", strange enough, too.
I overlooked this at first sight because of the coincidence of 4 "drives" and 4K blocks.
Now that I agree with you, what should we do with 'em? Tarring and feathering? ;-))
Cheers
Norbert




0
 
LVL 43

Author Comment

by:ravenpl
ID: 22870574
After reading the CentOS shipped mke2fs manual there's even more unknowns. Thanx for Your help, I'll contact CentOS maintainers. After I get feedback from them I'll post here with the results.
Thanx for Your time.
0
 
LVL 43

Accepted Solution

by:
ravenpl earned 0 total points
ID: 23025760
I've made that support req, hopefully I'll get the answer... https://sourceforge.net/tracker/?func=detail&atid=202406&aid=2236511&group_id=2406
I also could look at the diff between those mentioned version, but so far i'm too lazy :)
0
 
LVL 87

Expert Comment

by:rindi
ID: 23245587
Any news, ravenpl?
0
 
LVL 43

Author Comment

by:ravenpl
ID: 23245610
Not really. I tried to read the mentioned e2fsprogs diff, and it looks like the old option is passed same way as previously, and the stripe-width is new value.
So I suppose the wiki/centOs is wrong.
It's pity that nobody from e2fsprogs developers said anything.
0
 
LVL 87

Expert Comment

by:rindi
ID: 23245670
In that case I guess you can close the Q?

Thanx and happy holidays.
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

Daily system administration tasks often require administrators to connect remote systems. But allowing these remote systems to accept passwords makes these systems vulnerable to the risk of brute-force password guessing attacks. Furthermore there ar…
Setting up Secure Ubuntu server on VMware 1.      Insert the Ubuntu Server distribution CD or attach the ISO of the CD which is in the “Datastore”. Note that it is important to install the x64 edition on servers, not the X86 editions. 2.      Power on th…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now