Raptor RAID 0 Stripe/Cluster Size????

ZoNtO

Diamond Member
Sep 27, 2003
3,709
0
0
www.rileylovendale.com
Hey there guys! I know that all of you are busy, but I just had a quick question that I'm pretty sure someone can help me with. I'm going to be RAIDing two Western Digital 36GB Raptors together in RAID 0 for my system/program drive and I was wondering what stripe size I should set it to. I heard that 128 was better for applications and 16 better for just plain files and such, but I have no idea! Someone please help me out with this, I just want the fastest read/write performance for applications!

Thanks!
 

Sheriff

Golden Member
Mar 14, 2001
1,182
0
0
16 is better for apps and small files whereas 128 is best for large Files and huge Vid encoding files, so I would recommend the later.
 

Pariah

Elite Member
Apr 16, 2000
7,357
20
81
Originally posted by: Sheriff
16 is better for apps and small files whereas 128 is best for large Files and huge Vid encoding files, so I would recommend the later.

You have it reversed. The smaller the files you have the larger the stripe size you want because depending on the controller it will reduce the number of drives that need to be accessed for each file which will improve access times. If you work with larger files, you want a smaller stripe size which will increase the number a drives a file is stored on, thus improving sustained throughput. So, if you are after better responsiveness, go with a larger stripe size. If you want higher throughput go with a smaller stripe size. In reality the stripe size doesn't have a whole lot of effect on performance unless you compare extremes. Just pick the middle value (64k probably) and leave it alone.
 

robcy

Senior member
Jun 8, 2003
503
0
0
I agree with the 64kb stripe size. I have tried them most sizes, and 64 has shown the best comprimize in responce, and max throughput for game load times. I did read somewhere that a larger stripe sizes were benefitial for video editing, but I do not remember where.
 

billyjak

Platinum Member
Oct 9, 1999
2,869
1
81
I had 128k and just reformatted to 64k cluster.
I like the 64k better, it seems more responsive, I burn alot of DVD also.
The 128k size was a little faster in the DVD department. But everything else the 64k stripe seems faster.
 

Sheriff

Golden Member
Mar 14, 2001
1,182
0
0
Originally posted by: Pariah
Originally posted by: Sheriff
16 is better for apps and small files whereas 128 is best for large Files and huge Vid encoding files, so I would recommend the later.

You have it reversed. The smaller the files you have the larger the stripe size you want because depending on the controller it will reduce the number of drives that need to be accessed for each file which will improve access times. If you work with larger files, you want a smaller stripe size which will increase the number a drives a file is stored on, thus improving sustained throughput. So, if you are after better responsiveness, go with a larger stripe size. If you want higher throughput go with a smaller stripe size. In reality the stripe size doesn't have a whole lot of effect on performance unless you compare extremes. Just pick the middle value (64k probably) and leave it alone.

No I belive you have it reversed as I, they and many others beg to diifer ;)
 

nitromullet

Diamond Member
Jan 7, 2004
9,031
36
91
Originally posted by: billyjak
I had 128k and just reformatted to 64k cluster.
I like the 64k better, it seems more responsive, I burn alot of DVD also.
The 128k size was a little faster in the DVD department. But everything else the 64k stripe seems faster.

Was the differnce quite noticable or negligable? My stripe size is currently 128k, and I was wondering if I should try a 64k stripe size. There is a bit of hassle involved with this, since the system is dual boot so I don't really want to mess with it right away if the gains are not really noticable.
 

Smilin

Diamond Member
Mar 4, 2002
7,357
0
0
Unless you have a really good reason to go above 64k stripe sizes you'll probably get the best overall performance out of that.

You would want to bump it up if the files on the drive were *exclusively* large in size.
For instance your OS is on one drive and your large photos/videos that you are editing are on a different drive that is a raid set.
 

reapsy

Junior Member
Jan 15, 2004
9
0
0
Hello,

I've just setup a raid0 array with 2 160gb wd drives and have been doing some research into what stripe size to use. I've found that it all depends on the size of files on the hdd. If you have a 64k stripe size then any file < 64k gets written to one disk and therefore has no benifit from the raid array when reading it. On the other hand a very large file will be split into lots of chunks and therefore will put more work on the raid controller to read it.

Anyway I wrote a perl script to determine the average file size of files in a directory heiraracy. I'm not a programmer so its a bit rubbish but it seems to work. I've been meaning to add new features but haven't got round to it yet so there is some redundant code in it. Anyway you may find it useful so here it is:

my $i = 16;
our %Count = ();

while ( $i <= 512 ) {
$Count{$i} = 0;
$i *= 2;
}

=comment out
our $Count16 = 0;
our $Count32 = 0;
our $Count64 = 0;
our $Count128 = 0;
our $Count256 = 0;
our $Count512 = 0;
=cut

our $TCount = 0;
our $TSize;
our $FH;
my $Average;

my ($Dir) = shift;
die "No args" if $Dir eq '';

&Read_Dir ($Dir);
if ($TCount) {
$Average = $TSize / $TCount;
$Average = int ($Average / 1024) . 'K' if $Average > 1024;
}
print "Total Files = $TCount Total Size = $TSize Average File Size = $Average\n";
exit;

sub Read_Dir {

my ($Dir) = @_;
$FH = '00';
$FH++;

opendir ($FH, $Dir);
foreach $FN (readdir ($FH)) {
next if $FN eq '.';
next if $FN eq '..';
my $Full_FN = "$Dir/$FN";
if (-d $Full_FN) {
&Read_Dir ($Full_FN)
}
$Size = (-s $Full_FN);
unless (-d $Full_FN) {
$TCount++;
$TSize += $Size;
}

}
$FH--;
}
 

reapsy

Junior Member
Jan 15, 2004
9
0
0
Hello,

I've just setup a raid0 array with 2 160gb wd drives and have been doing some research into what stripe size to use. I've found that it all depends on the size of files on the hdd. If you have a 64k stripe size then any file < 64k gets written to one disk and therefore has no benifit from the raid array when reading it. On the other hand a very large file will be split into lots of chunks and therefore will put more work on the raid controller to read it.

Anyway I wrote a perl script to determine the average file size of files in a directory heiraracy. I'm not a programmer so its a bit rubbish but it seems to work. I've been meaning to add new features but haven't got round to it yet so there is some redundant code in it. Anyway you may find it useful so here it is:

my $i = 16;
our %Count = ();

while ( $i <= 512 ) {
$Count{$i} = 0;
$i *= 2;
}

=comment out
our $Count16 = 0;
our $Count32 = 0;
our $Count64 = 0;
our $Count128 = 0;
our $Count256 = 0;
our $Count512 = 0;
=cut

our $TCount = 0;
our $TSize;
our $FH;
my $Average;

my ($Dir) = shift;
die "No args" if $Dir eq '';

&Read_Dir ($Dir);
if ($TCount) {
$Average = $TSize / $TCount;
$Average = int ($Average / 1024) . 'K' if $Average > 1024;
}
print "Total Files = $TCount Total Size = $TSize Average File Size = $Average\n";
exit;

sub Read_Dir {

my ($Dir) = @_;
$FH = '00';
$FH++;

opendir ($FH, $Dir);
foreach $FN (readdir ($FH)) {
next if $FN eq '.';
next if $FN eq '..';
my $Full_FN = "$Dir/$FN";
if (-d $Full_FN) {
&Read_Dir ($Full_FN)
}
$Size = (-s $Full_FN);
unless (-d $Full_FN) {
$TCount++;
$TSize += $Size;
}

}
$FH--;
}
 

billyjak

Platinum Member
Oct 9, 1999
2,869
1
81
The difference was negligable between 64 and 128
If your working with alot of large files the 128 stripe is better.
For me it just seems to respond better with the 64 stripe on my setup.
 

ZoNtO

Diamond Member
Sep 27, 2003
3,709
0
0
www.rileylovendale.com
I have no idea what that code that you posted means dude! Sorry if I'm a programming n00b, although that thing about writing to only one hard drive does make sense..... I think I'll do 128 just because I want to do video editing on it as well for half hour stuff. Thanks!