Feature changed by: Bernhard Wiedemann (bmwiedemann) Feature #311037, revision 2 Title: let partitioner create faster RAID openSUSE Distribution: Unconfirmed Priority Requester: Desirable Requested by: Bernhard Wiedemann (bmwiedemann) Partner organization: openSUSE.org Description: Both mkfs.ext[234] and mkfs.xfs have options to tune the filesystem for striped RAID (i.e. RAID0/RAID10), so it would be nice if yast2/disk could make use of it. The options are -E stride=x -E stripe-width=y and -d sunit=x,swidth=y notice that units of above sizes may vary. There are several sites out there describing how to choose the proper values for x and y, e.g. http://www.mythtv.org/wiki/Optimizing_Performance + Discussion: + #1: Bernhard Wiedemann (bmwiedemann) (2011-01-04 16:14:20) + I have found this perl code doing the calculations #!/usr/bin/perl -w + use strict; my $raiddev="/dev/md0"; my $raidlevel=0; # one of 0,5,6 for + striping with 0,1,2 redundant disks my $blocksize=4; # FS block size + KiBiBytes my $chunksize=128; # 4-256 KiBiBytes (multiple of $blocksize) + my @physdevs=(); # ... # create new RAID system(qw(echo mdadm -- + create), $raiddev, "--level", $raidlevel, "--chunk", $chunksize, "-- + raid-devices", scalar @physdevs, @physdevs); + # create FS my $stripewidth=@physdevs; if($raidlevel==1) + {$stripewidth=1;} if($raidlevel==5) {$stripewidth--;} if($raidlevel==6) + {$stripewidth-=2;} $stripewidth*=$chunksize/$blocksize; system(qw(echo + mkfs.ext3 -b), $blocksize*1024, "-R", "stride=". + ($chunksize/$blocksize), "-R", "stripe-width=".$stripewidth, + $raiddev); -- openSUSE Feature: https://features.opensuse.org/311037