Thursday, October 22, 2009

SATA2 and linux software RAID performance

A server I have to manage has 9 SATAII disks of 1TB each. Six of them are plugged directly to an ASRock motherboard, and three of them on a Promise PCI card providing 4 SATA II ports. These disks are partitioned on the same design: 2 partitions, a small one (1GB) for a RAID-1 and a the remaining for a RAID-5. I am therefore not using dedicated hardware but the great software RAID implemented in linux kernel.

I was wondering what were the performances of these disks and the RAID volumes, so I performed a very simple test with hdparm. First, there is an hddtemp for you to see disk models and temperature of operation.
# hddtemp /dev/sd?
/dev/sda: SAMSUNG HD103UJ: 18°C
/dev/sdb: Hitachi HDT721010SLA360: 28°C
/dev/sdc: ST31000340AS: 25°C
/dev/sdd: WDC WD10EACS-00D6B0: 37°C
/dev/sde: MAXTOR STM31000340AS: 38°C
/dev/sdf: ST31000340AS: 38°C
/dev/sdg: Hitachi HDT721010SLA360: 39°C
/dev/sdh: SAMSUNG HD103UJ: 25°C
/dev/sdi: ST31000528AS: 30°C

# hdparm -tT /dev/sd? /dev/md?

/dev/sda:
Timing cached reads: 4956 MB in 2.00 seconds = 2478.45 MB/sec
Timing buffered disk reads: 278 MB in 3.00 seconds = 92.62 MB/sec

/dev/sdb:
Timing cached reads: 4912 MB in 2.00 seconds = 2456.58 MB/sec
Timing buffered disk reads: 290 MB in 3.01 seconds = 96.24 MB/sec

/dev/sdc:
Timing cached reads: 4938 MB in 2.00 seconds = 2469.78 MB/sec
Timing buffered disk reads: 250 MB in 3.00 seconds = 83.29 MB/sec

/dev/sdd:
Timing cached reads: 4924 MB in 2.00 seconds = 2462.42 MB/sec
Timing buffered disk reads: 252 MB in 3.01 seconds = 83.59 MB/sec

/dev/sde:
Timing cached reads: 4798 MB in 2.00 seconds = 2400.08 MB/sec
Timing buffered disk reads: 306 MB in 3.01 seconds = 101.79 MB/sec

/dev/sdf:
Timing cached reads: 4970 MB in 2.00 seconds = 2486.40 MB/sec
Timing buffered disk reads: 308 MB in 3.01 seconds = 102.33 MB/sec

/dev/sdg:
Timing cached reads: 4914 MB in 2.00 seconds = 2458.28 MB/sec
Timing buffered disk reads: 324 MB in 3.00 seconds = 107.92 MB/sec

/dev/sdh:
Timing cached reads: 4964 MB in 2.00 seconds = 2482.84 MB/sec
Timing buffered disk reads: 334 MB in 3.02 seconds = 110.78 MB/sec

/dev/sdi:
Timing cached reads: 4908 MB in 2.00 seconds = 2454.37 MB/sec
Timing buffered disk reads: 322 MB in 3.03 seconds = 106.30 MB/sec

/dev/md1:
Timing cached reads: 4004 MB in 2.00 seconds = 2002.08 MB/sec
Timing buffered disk reads: 236 MB in 3.01 seconds = 78.28 MB/sec

/dev/md5:
Timing cached reads: 4530 MB in 2.00 seconds = 2265.74 MB/sec
Timing buffered disk reads: 670 MB in 3.00 seconds = 223.07 MB/sec
Besides the impressive cached reads, you can see how the disks perform. On their own, they are at about 100MB/s, or 800Mbit/s which is not so bad compared to SATAII 's 3Gbit/s. RAID-5 performs twice better that the disk solely (I already knew it was better, but not so much!), while RAID-1 is 30% lower (which I didn't expect).

Funny thing, did you notice how temperature influenced the disk performance? The cold (18°C) disks seems to be slower than the hot (39°C) ones.

1 comments:

StalkR said...

I reshaped my 8 disks RAID-5 array + 1 hot spare into a 9 disks RAID-6 in order to have better redundancy (with 9 disks, it becomes dangerous).

I observed that RAID-6 performances are lower than RAID-5, but still twice performant as disks alone.

/dev/md6:
Timing cached reads: 5256 MB in 2.00 seconds = 2628.75 MB/sec
Timing buffered disk reads: 564 MB in 3.00 seconds = 187.92 MB/sec

Post a Comment