• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Raptor RAID 0 Stripe/Cluster Size????

ZoNtO

Diamond Member
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!
 
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.
 
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.
 
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.
 
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.
 
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 😉
 
So would 64 be a good solid number? I'm going to be using the Raptors for my windows/apps and video editing....
 
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.
 
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.
 
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--;
}
 
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--;
}
 
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.
 
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!
 
Back
Top