Thread (11 messages) 11 messages, 3 authors, 2018-02-06

Re: Rationale for hardware RAID 10 su, sw values in FAQ

From: Ewen McNeill <hidden>
Date: 2017-09-27 23:36:45

Hi Dave,

On 27/09/17 17:33, Dave Chinner wrote:
On Wed, Sep 27, 2017 at 02:56:16PM +1300, Ewen McNeill wrote:
quoted
As a suggestion the FAQ section [hint at reason for RAID10 sw=N/2]
This assumes the reader understands exactly how RAID works and how
the different types of RAID affect IO performance. The FAQ simply
tries to convey how to get it right without going into the
complicated reasons for doing it that way.
Fair enough.

However, as a "sysadmin searching for answers" it is.... difficult to 
judge the up-to-date-ness and accuracy of "use these magic values" 
tuning information without some insight into why and thus whether those 
values (a) are still applicable with modern software/hardware or (b) 
applicable in one's own situation.  Particularly so when one has already 
read N different variations on recommendations, all without 
justification, some with conflicting (or confused) advice.

If the FAQ isn't the right place to even hint at the reasons, then it 
would at least be very helpful if the FAQ said "see this $REFERENCE for 
more information" and said $REFERENCE had some more "behind the scenes" 
information.
https://git.kernel.org/pub/scm/fs/xfs/xfs-documentation.git/tree/admin/XFS_Performance_Tuning/filesystem_tunables.asciidoc

You'll see the section about all this reads: [TODO]
because nobody (well, me, really) has had the time to write
everything down that is needed to cover this topic sufficiently...
Perhaps the perfect is the enemy of the good here.  Would it help if I 
were to write up some text covering:

- key storage alignment tuning aims (avoid work amplification, eg RMW; 
avoid hot spots; increase parallelism)

- summary of physical storage technology concerns (4K sectors, seek 
latency, SSD erase blocks)

- summary of considerations for RAID levels (1 - none; 0 - hot spots; 
5/6 RMW, hot spots; 10 - hot spots; stripe size/width)

- summary of storage virtualisation considerations on alignment (eg, LVM)

- high level advice on determining su/sw given the above, and short 
rationale for each formula

- some observations on unit confusion (sunit/su swidth/sw, values 
supplied in 512 byte sectors / kB versus reported in usually 4kB blocks)

I'm obviously not an expert in filesystem layout optimisation.  But I 
have many years sysadmin experience dealing with lots of types of 
storage, and can write a couple of pages of text on the "background" 
bits next time I have a free moment.  The more advanced tunables could 
remain "todo" until there's time for the perfect version...

(No promises when, but "October" seems plausible if this would be useful.)

Ewen
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help