IDE RAID performance


F

fj

I've set up a two drive RAID array [Striping only, 4K stripes] using the
built in RAID controller on a late model Gigabyte motherboard. The drives
are one SATA and one PATA.

The only purpose of the array is to improve disk read/write performance -
the OS [Win XP SP2] and the applications are on the array. [pagefile is on
a separate drive]. From a recent article at Tom's Hardware it looked like
read/write performance should be ~ doubled. Does that seem right? I.e.,
should I expect about double the read write performance?

Disk performance does seem to be significantly faster, but I'm having second
thoughts because Dantz's Retrospect is having problems due to having a RAID
array [i.e., Retrospect's Disaster Recovery CD fails and Retrospect now
doesn't recognize the DVD drive].

Thanks
 
Ad

Advertisements

F

fj

fj said:
I've set up a two drive RAID array [Striping only, 4K stripes] using the
built in RAID controller on a late model Gigabyte motherboard. The drives
are one SATA and one PATA.

The only purpose of the array is to improve disk read/write performance -
the OS [Win XP SP2] and the applications are on the array. [pagefile is
on a separate drive]. From a recent article at Tom's Hardware it looked
like read/write performance should be ~ doubled. Does that seem right?
I.e., should I expect about double the read write performance?

Disk performance does seem to be significantly faster, but I'm having
second thoughts because Dantz's Retrospect is having problems due to
having a RAID array [i.e., Retrospect's Disaster Recovery CD fails and
Retrospect now doesn't recognize the DVD drive].

Sorry to respond to my own post.

Just remembered I had run sisoft on the previous, non RAID setup - it ran
59MB/s. The RAID array just ran 89MB/s - so about 50% improvement with two
drives.
 
D

dg

Are you saying you have 2 physical drives, one PATA and one SATA and you
have then configured together in a RAID 0 config? Thats odd to use two
different interfaces, and its surprising that the RAID controller allows
this. Am I misunderstanding?

What kind of drives are these? You said in your response that the single
disk was running (reading?) at 59MBS and now with RAID 0 you are getting
89MBS. Well, 59MBS is pretty freakin good for a single disk, makes me
wonder what kind of disk it is. At 59MBs I would consider RAID 1 and be
happy, unless you just absolutly need faster disk performance.

Are you sure about the 4k stripe size? That just seems ridiculously small,
I think I run 128k stripe size IIRC. I am pretty sure in general you get
better performance from a larger stripe size. Style of disk access
determines what size stripes are best.

--Dan
 
F

fj

dg said:
Are you saying you have 2 physical drives, one PATA and one SATA and you
have then configured together in a RAID 0 config? Thats odd to use two
different interfaces, and its surprising that the RAID controller allows
this. Am I misunderstanding?
Right. I'm using a Gigabyte K8NSC-939 and it allows you to build a RAID
array from any of the installed SATA and PATA drives. The SATA controllers
are built into the MB.
Kinda cool - I hadn't expected it either.
What kind of drives are these?
Both the SATA and PATA drive are 80gb versions of Hitachi's 250K line.
You said in your response that the single
disk was running (reading?) at 59MBS and now with RAID 0 you are getting
89MBS. Well, 59MBS is pretty freakin good for a single disk, makes me
wonder what kind of disk it is. At 59MBs I would consider RAID 1 and be
happy, unless you just absolutly need faster disk performance.
The read/write performance of 59MB/s is right in line with tests done at
Tom's Hardware
http://www.tomshardware.com/storage/20050523/hitachi-deskstar-06.html
My results came from both SiSoft and from Nvidia's speed test built into
their ATA controller.
Are you sure about the 4k stripe size? That just seems ridiculously
small,
I think I run 128k stripe size IIRC. I am pretty sure in general you get
better performance from a larger stripe size.
I picked 4kb stripe based on the understanding that a stripe works like a
cluster. I'm thinking that since the average file [not counting video/photo
editing] is around 4kb that would be the best match. But, if increasing the
stripe size would increase performance, I'll try it - the array is only 5%
full.
Given 99% of my useage is office productivity apps, would you expect that a
larger stripe would yield higher performance?

Thanks

Style of disk access
determines what size stripes are best.

--Dan

fj said:
I've set up a two drive RAID array [Striping only, 4K stripes] using the
built in RAID controller on a late model Gigabyte motherboard. The
drives
are one SATA and one PATA.

The only purpose of the array is to improve disk read/write performance -
the OS [Win XP SP2] and the applications are on the array. [pagefile is on
a separate drive]. From a recent article at Tom's Hardware it looked
like
read/write performance should be ~ doubled. Does that seem right? I.e.,
should I expect about double the read write performance?

Disk performance does seem to be significantly faster, but I'm having second
thoughts because Dantz's Retrospect is having problems due to having a RAID
array [i.e., Retrospect's Disaster Recovery CD fails and Retrospect now
doesn't recognize the DVD drive].

Thanks
 
D

dg

fj said:
I picked 4kb stripe based on the understanding that a stripe works like a
cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But, if
increasing the stripe size would increase performance, I'll try it - the
array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect that
a larger stripe would yield higher performance?

I don't feel experienced enough in this matter to suggest a stripe size, but
I will tell you that if your average file is 4kb you probably don't want a
4kb stripe size as how will the controller split 4kb into 4kb stripes? I
came across a decent article on a web search that will give you something to
think about concerning stripe size:

http://www.techspot.com/vb/all/windows/t-1596-Recommendations-for-RAID-0-Stripe-Size.html

Either way you go, small or large, there are drawbacks to both. A guy would
really need to analyze his disk usage to have the absolute optimum stripe
size.

--Dan
 
C

craigm

dg said:
I picked 4kb stripe based on the understanding that a stripe works like a
cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But, if
increasing the stripe size would increase performance, I'll try it - the
array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect that
a larger stripe would yield higher performance?


I don't feel experienced enough in this matter to suggest a stripe size, but
I will tell you that if your average file is 4kb you probably don't want a
4kb stripe size as how will the controller split 4kb into 4kb stripes?

The controller will split the data (file) as it needs. Consider your
Raid 0 storage to be like the pages of a book. Even pages on one drive
and odd pages on the other drive. (Pages = stripes) Look at any
paragraph. It can be all on a single page, broken across two pages, or,
if it is really long, it can cover multiple pages. (paragraph = file)

Stripes are not like clusters. In windows, the smallest amount of disk
that can be allocated is a cluster. In the storage (disk or raid) the
smallest amount of disk that can be selected is the sector (512 bytes).

In the book analogy, you can consider a line on the page to be a cluster
and the single character to be the sector. Windows puts no more than one
paragraph on a single line and may waste space on the last line of the
paragraph. (Using a single character to represent a sector makes for a
small sector, but from a storage viewpoint the analogy works.)

I
came across a decent article on a web search that will give you something to
think about concerning stripe size:

http://www.techspot.com/vb/all/windows/t-1596-Recommendations-for-RAID-0-Stripe-Size.html

Be aware, there are some errors in what is presented on that page.
Either way you go, small or large, there are drawbacks to both. A guy would
really need to analyze his disk usage to have the absolute optimum stripe
size.

The pertinent factors include the OS, type of application, size of the
files, how the files are accessed, nature of the raid system, number of
drives the data is striped across, and several areas in the way the
individual drives work. If you can find a set of benchmark data that
matches your application, then you may be able to determine the best
strip size for your application.

craigm
 
Ad

Advertisements

R

Ron Reaugh

dg said:
fj said:
I picked 4kb stripe based on the understanding that a stripe works like a
cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But, if
increasing the stripe size would increase performance, I'll try it - the
array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect that
a larger stripe would yield higher performance?

I don't feel experienced enough in this matter to suggest a stripe size,
but I will tell you that if your average file is 4kb you probably don't
want a 4kb stripe size as how will the controller split 4kb into 4kb
stripes? I came across a decent article on a web search that will give
you something to think about concerning stripe size:

http://www.techspot.com/vb/all/windows/t-1596-Recommendations-for-RAID-0-Stripe-Size.html


For starters that article has got the concept of stripe size wrong. The
classic definition of stripe size is the band of data spanning all the
drives before the next stripe starts back on the first drive. For instance
a 64k stripe size on a 4 drive RAID 0 array means that the data is divided
into 16k chunks on eack of the four drives. Those 16k chunks are called
stripe units.

NOW, with the recent popularity of EIDE RAID and loose use of terms, the
question is what is current usage of the term "stripe size" in various RAID
0 implementations. In at least soe cases the usage remains classic but I
haven't had time to fully research it. ANYONE?
 
R

Ron Reaugh

craigm said:
dg said:
I picked 4kb stripe based on the understanding that a stripe works like a
cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But, if
increasing the stripe size would increase performance, I'll try it - the
array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect that
a larger stripe would yield higher performance?


I don't feel experienced enough in this matter to suggest a stripe size,
but I will tell you that if your average file is 4kb you probably don't
want a 4kb stripe size as how will the controller split 4kb into 4kb
stripes?

The controller will split the data (file) as it needs. Consider your Raid
0 storage to be like the pages of a book. Even pages on one drive and odd
pages on the other drive. (Pages = stripes)

NO, two pages sets are a stripe.
Look at any paragraph. It can be all on a single page, broken across two
pages, or, if it is really long, it can cover multiple pages. (paragraph =
file)

Stripes are not like clusters. In windows, the smallest amount of disk
that can be allocated is a cluster. In the storage (disk or raid) the
smallest amount of disk that can be selected is the sector (512 bytes).

In the book analogy, you can consider a line on the page to be a cluster
and the single character to be the sector. Windows puts no more than one
paragraph on a single line and may waste space on the last line of the
paragraph. (Using a single character to represent a sector makes for a
small sector, but from a storage viewpoint the analogy works.)

All nonsensical as it relates to RAID 0 and performance.
 
C

craigm

Ron said:
dg said:
I picked 4kb stripe based on the understanding that a stripe works like a
cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But, if
increasing the stripe size would increase performance, I'll try it - the
array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect that
a larger stripe would yield higher performance?


I don't feel experienced enough in this matter to suggest a stripe size,
but I will tell you that if your average file is 4kb you probably don't
want a 4kb stripe size as how will the controller split 4kb into 4kb
stripes?

The controller will split the data (file) as it needs. Consider your Raid
0 storage to be like the pages of a book. Even pages on one drive and odd
pages on the other drive. (Pages = stripes)


NO, two pages sets are a stripe.

You can talk stripes or stripe groups. I was trying to use the same
terms as the previous post.
All nonsensical as it relates to RAID 0 and performance.

I also did not mention performance with respect to the analogy. I was
only talking about the layout of the data. If you have trouble with the
analogy, present another. As there seems to be confusion about the
layout of data on the disks, I tried to present an analogy that would
help make it easier to understand. If you consider it to be nonsense,
that is your opinion.

craigm
 
R

Ron Reaugh

craigm said:
Ron said:
dg wrote:



I picked 4kb stripe based on the understanding that a stripe works like
a cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But,
if increasing the stripe size would increase performance, I'll try it -
the array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect
that a larger stripe would yield higher performance?


I don't feel experienced enough in this matter to suggest a stripe size,
but I will tell you that if your average file is 4kb you probably don't
want a 4kb stripe size as how will the controller split 4kb into 4kb
stripes?

The controller will split the data (file) as it needs. Consider your Raid
0 storage to be like the pages of a book. Even pages on one drive and odd
pages on the other drive. (Pages = stripes)


NO, two pages sets are a stripe.

You can talk stripes or stripe groups.

Nope, stripes or stripe units.
 
C

craigm

Ron said:
Ron said:
dg wrote:





I picked 4kb stripe based on the understanding that a stripe works like
a cluster. I'm thinking that since the average file [not counting
video/photo editing] is around 4kb that would be the best match. But,
if increasing the stripe size would increase performance, I'll try it -
the array is only 5% full.
Given 99% of my useage is office productivity apps, would you expect
that a larger stripe would yield higher performance?


I don't feel experienced enough in this matter to suggest a stripe size,
but I will tell you that if your average file is 4kb you probably don't
want a 4kb stripe size as how will the controller split 4kb into 4kb
stripes?

The controller will split the data (file) as it needs. Consider your Raid
0 storage to be like the pages of a book. Even pages on one drive and odd
pages on the other drive. (Pages = stripes)


NO, two pages sets are a stripe.

You can talk stripes or stripe groups.


Nope, stripes or stripe units.

OK, we use different terms. You may be ignoring that some people may
talk in slightly different terms based upon experience. Rather than try
to make me use your terms, how about adding some substance to the
discussion?

craigm
 
Ad

Advertisements

D

dg

For starters that article has got the concept of stripe size wrong. The
classic definition of stripe size is the band of data spanning all the
drives before the next stripe starts back on the first drive. For
instance a 64k stripe size on a 4 drive RAID 0 array means that the data
is divided into 16k chunks on eack of the four drives. Those 16k chunks
are called stripe units.

Thats really good to know, thanks. Apparently that article pretty much
sucks. I thought if it was in the internet it MUST be true.

--Dan
 
F

Folkert Rienstra

Yeah right.

That's a stripe width.

Or stripes. Or chunks.
Thats really good to know, thanks.

Yeah, if it were true.
Apparently that article pretty much sucks.

Apparently, if you believe Ronnie.
I thought if it was in the internet it MUST be true.

You are such a sucker.
There are several reputable sites all saying the same thing
What chance that they are all wrong?
 
D

dg

Folkert Rienstra said:
You are such a sucker.
There are several reputable sites all saying the same thing
What chance that they are all wrong?

Your a great guy.
As to the use of terms dealing with RAID stripes, thanks for everybody's
input. Its actually pretty good seeing this discussion, that way a guy can
know that there are at least two different interpretations of terms and be
aware of that in the future when somebody else uses them. Reminds me a bit
of "low level formatting". What some people call "low level format" is not,
yet the term continues to be used incorrectly quite often.

Thanks,
--Dan
 
Ad

Advertisements

O

Odie Ferrous

dg said:
Your a great guy.
As to the use of terms dealing with RAID stripes, thanks for everybody's
input. Its actually pretty good seeing this discussion, that way a guy can
know that there are at least two different interpretations of terms and be
aware of that in the future when somebody else uses them. Reminds me a bit
of "low level formatting". What some people call "low level format" is not,
yet the term continues to be used incorrectly quite often.

Thanks,
--Dan

Welcome to the world of comp.sys.ibm.pc.hardware.storage.

Each regular claims to know everything, yet each regular's advice will
always differ from that of the next.

Makes you wonder.

Or was that a song by Pink Floyd?


Odie
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top