RAID0 setup on FC3 (effect of IDE controllers and how to maximize throughput)
- From: "sasan3@xxxxxxxxx" <sasan3@xxxxxxxxx>
- Date: 15 Dec 2005 03:08:56 -0800
I posted the following question last week but there was no answer. I
therefore assume what I learned might be of use to the others.
You can skip the details and jump to the end for my summary and answers
to questions.
S
My intial post
-----------------------------------------------------------------------------------------------------
A summary of my ide controller configuration is included below.
I would appreciate an answer or a pointer to a document on these
questoins:
1-Is the cable for ide1 in fact half that of ide0 (as shown in category
"cable type" below)
2-Assuming that drive speed is not the bottleneck, would drives on ide1
run half as fast as drives on ide0?
3-For a RAID0 array to provide speed gains, do the two partitions have
to be on different controllers or can they both be on the same ide
controller (i.e. ide0)
4-The "cycle time" for ide0 and ide0 are different below. Is this
because of the cable difference? controller design, or something else?
And is this a feature of this controller or are all controllers the
same?
Thanks.
----------VIA BusMastering IDE Configuration----------------
Driver Version: 3.38
South Bridge: VIA vt8237
Revision: ISA 0x0 IDE 0x6
Highest DMA rate: UDMA133
BM-DMA base: 0xc400
PCI clock: 33.3MHz
Master Read Cycle IRDY: 0ws
Master Write Cycle IRDY: 0ws
BM IDE Status Register Read Retry: yes
Max DRDY Pulse Width: No limit
-----------------------Primary IDE-------Secondary IDE------
Read DMA FIFO flush: yes yes
End Sector FIFO flush: no no
Prefetch Buffer: yes yes
Post Write Buffer: yes yes
Enabled: yes yes
Simplex only: no no
Cable Type: 80w 40w
-------------------drive0----drive1----drive2----drive3-----
Transfer Mode: UDMA UDMA UDMA UDMA
Address Setup: 120ns 120ns 120ns 120ns
Cmd Active: 90ns 90ns 90ns 90ns
Cmd Recovery: 30ns 30ns 30ns 30ns
Data Active: 90ns 90ns 90ns 90ns
Data Recovery: 30ns 30ns 30ns 30ns
Cycle Time: 22ns 22ns 60ns 60ns
Transfer Rate: 88.8MB/s 88.8MB/s 33.3MB/s 33.3MB/s
=======================================================
Now what I did and what I learned:
I was trying to underdstand the effect of IDE controllers on RAID
performance.
First I tried different combinations of my two RAID0 drive on different
IDE controllers. Here is the results:
IDE0 and IDE1 parameters are shown in the above post detailing the
timing for each.
Raid Drives on IDE0 (hda and hdb)
-----------------------
unix> hdparm -Tt /dev/hda
/dev/hda:
Timing cached reads: 936 MB in 2.01 seconds = 466.44 MB/sec
Timing buffered disk reads: 128 MB in 3.03 seconds = 42.28 MB/sec
unix> hdparm -Tt /dev/hdb
/dev/hdb:
Timing cached reads: 888 MB in 2.00 seconds = 443.62 MB/sec
Timing buffered disk reads: 128 MB in 3.03 seconds = 42.21 MB/sec
unix> hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 936 MB in 2.00 seconds = 467.84 MB/sec
Timing buffered disk reads: 170 MB in 3.00 seconds = 56.62 MB/sec
Result: Performance over single drive not increased significantly!! My
guess is that the bottleneck is the bandwidth handled by the IDE
controller.
Raid Drives on IDE0 and IDE1 (hdb and hdd)
---------------------------------------------------------
unix> hdparm -Tt /dev/hdb
/dev/hdb:
Timing cached reads: 820 MB in 2.00 seconds = 409.04 MB/sec
Timing buffered disk reads: 128 MB in 3.03 seconds = 42.24 MB/sec
unix> hdparm -Tt /dev/hdd
/dev/hdd:
Timing cached reads: 908 MB in 2.00 seconds = 452.94 MB/sec
Timing buffered disk reads: 74 MB in 3.07 seconds = 24.12 MB/sec
unix> hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 896 MB in 2.00 seconds = 447.62 MB/sec
Timing buffered disk reads: 128 MB in 3.02 seconds = 42.40 MB/sec
Result: RAID0 bandwidth is twice the bandwidth of the slower IDE
controller (ID1 at 20MB/sec). Hence total bandwidth is only 40MB/sec
Raid Drives on IDE0 and IDE1 (hdb and hdd) and replacing the 40 pin
cable
------------------------------------------------------------
Thanks to a reply I received to my original post, I started playing
around with the cables for IDE0 and IDE1.
I initially assumed IDE1 is slower because of its design (obviously I
don't know much about this subject!). By replacing the 40pin cable on
my IDE1 with an 80pin cable I got the same speed on IDE1 as that of
IDE0. With this modification, I got the following results:
root@earth(27):hdparm -Tt /dev/hdb
/dev/hdb:
Timing cached reads: 936 MB in 2.01 seconds = 466.21 MB/sec
Timing buffered disk reads: 126 MB in 3.02 seconds = 41.70 MB/sec
root@earth(29):hdparm -Tt /dev/hdd
/dev/hdd:
Timing cached reads: 932 MB in 2.00 seconds = 465.14 MB/sec
Timing buffered disk reads: 126 MB in 3.04 seconds = 41.49 MB/sec
root@earth(30):hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 940 MB in 2.00 seconds = 469.84 MB/sec
Timing buffered disk reads: 236 MB in 3.00 seconds = 78.63 MB/sec
Result: I LIKE IT! :)
Summary:
To make sure your RAID0 is working as good as it can:
1-Make sure you have 80 pin cables on both IDE controllers
2-Make sure to place one drive per IDE controller
3-Use hdparm command in linux to optimize the performance for each ATA
drive
4-Even though the manual indicates that setting "unmaskirq" is
dangerous, leave it at 1 if your operating systems sets it to 1 during
bootup.
Answers to my own questions (learned through replies and
experimentation):
1-Is the cable for ide1 in fact half that of ide0 (as shown in category
"cable type" below)
Yes it is. And you better replace the 40pin cable with an 80pin cable
if you plan to place any hard drives on that second IDE controller.
2-Assuming that drive speed is not the bottleneck, would drives on ide1
run half as fast as drives on ide0?
Yes. It does. Replacing the cable to an 80 wire cable allows IDE1 to
run as fast as IDE0.
3-For a RAID0 array to provide speed gains, do the two partitions have
to be on different controllers or can they both be on the same ide
controller (i.e. ide0)
The two partitions must definitely be on different IDE controllers.
Also, he speed of RAID0 is twice that of the slower bandwidth of the
two IDE controller. As such, you must make sure that both IDE
controllers run at maximum speed.
4-The "cycle time" for ide0 and ide0 are different below. Is this
because of the cable difference? controller design, or something else?
And is this a feature of this controller or are all controllers the
same?
Obviously it is because of the cable havingonly 40wires.
.
- Prev by Date: Re: Fedora Core 2/Windows XP dual boot: selecting Linux doesn't work
- Next by Date: Re: Fedora Core 2/Windows XP dual boot: selecting Linux doesn't work
- Previous by thread: reinstalling grub
- Next by thread: Network and audio drivers for onboard devices in fedora core 4
- Index(es):
Relevant Pages
|