[CentOS] 3Ware 9550SX and latency/system responsiveness
Ross S. W. Walker
rwalker at medallion.com
Wed Sep 26 13:14:57 UTC 2007
Simon Banton wrote:
>
> At 13:26 -0400 25/9/07, Ross S. W. Walker wrote:
> >Off of 3ware's support site I was able to download and compile the
> >latest stable release which has this modinfo:
> >
> >[root at mfg-nyc-iscsi1 driver]# modinfo 3w-9xxx.ko
> >filename: 3w-9xxx.ko
> >version: 2.26.06.002-2.6.18
>
> OK, driver source from the 9.4.1.3 codeset
> (3w-9xxx-2.6.18kernel_9.4.1.3.tgz) now built and installed for RHEL5,
> new initrd created and machine re-tested.
>
> [root at serv1 ~]# modinfo 3w-9xxx
> filename:
> /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/3w-9xxx.ko
> version: 2.26.06.002-2.6.18
> license: GPL
> description: 3ware 9000 Storage Controller Linux Driver
> author: AMCC
> srcversion: 7F428E7BA74EAFF0FF137E2
> alias: pci:v000013C1d00001004sv*sd*bc*sc*i*
> alias: pci:v000013C1d00001003sv*sd*bc*sc*i*
> alias: pci:v000013C1d00001002sv*sd*bc*sc*i*
> depends: scsi_mod
> vermagic: 2.6.18-8.el5 SMP mod_unload 686 REGPARM
> 4KSTACKS gcc-4.1
>
> tw_cli output just to be sure:
>
> //serv1> /c0 show all
> /c0 Driver Version = 2.26.06.002-2.6.18
> /c0 Model = 9550SX-8LP
> /c0 Memory Installed = 112MB
> /c0 Firmware Version = FE9X 3.08.02.007
> /c0 Bios Version = BE9X 3.08.00.002
> /c0 Monitor Version = BL9X 3.01.00.006
>
> >Well bottom line, there is something very wrong with the 3ware
> >drivers on the RHEL 5 implementation.
>
> There still is then, because the figures for the LTP disktest are
> almost identical post-update.
>
> Sequential reads:
>
> RHEL5, RAID 0:
> | 2007/09/26-09:11:27 | START | 2962 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p l -P T -T 30 -r (-N 976519167) (-c)
> (-p u)
> | 2007/09/26-09:11:57 | STAT | 2962 | v1.2.8 | /dev/sdb | Total read
> throughput: 2430429.9B/s (2.32MB/s), IOPS 593.4/s.
>
> RHEL5, RAID 1:
> | 2007/09/26-09:59:41 | START | 3210 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p l -P T -T 30 -r (-N 488259583) (-c)
> (-p u)
> | 2007/09/26-10:00:11 | STAT | 3210 | v1.2.8 | /dev/sdb | Total read
> throughput: 2566280.5B/s (2.45MB/s), IOPS 626.5/s.
>
> Sequential writes:
>
> RHEL5, RAID 0:
> | 2007/09/26-09:11:57 | START | 2971 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p l -P T -T 30 -w (-N 976519167) (-c)
> (-p u)
> | 2007/09/26-09:12:27 | STAT | 2971 | v1.2.8 | /dev/sdb | Total
> write throughput: 66337450.7B/s (63.26MB/s), IOPS 16195.7/s.
>
> RHEL5, RAID 1:
> | 2007/09/26-10:00:11 | START | 3217 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p l -P T -T 30 -w (-N 488259583) (-c)
> (-p u)
> | 2007/09/26-10:00:41 | STAT | 3217 | v1.2.8 | /dev/sdb | Total
> write throughput: 54108160.0B/s (51.60MB/s), IOPS 13210.0/s.
>
> Random reads:
>
> RHEL5, RAID 0:
> | 2007/09/26-09:12:28 | START | 2978 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p r -P T -T 30 -r (-N 976519167) (-c)
> (-D 100:0)
> | 2007/09/26-09:12:57 | STAT | 2978 | v1.2.8 | /dev/sdb | Total read
> throughput: 269206.1B/s (0.26MB/s), IOPS 65.7/s.
>
> RHEL5, RAID 1:
> | 2007/09/26-10:00:41 | START | 3231 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p r -P T -T 30 -r (-N 488259583) (-c)
> (-D 100:0)
> | 2007/09/26-10:01:11 | STAT | 3231 | v1.2.8 | /dev/sdb | Total read
> throughput: 262144.0B/s (0.25MB/s), IOPS 64.0/s.
>
> Random writes:
>
> RHEL5, RAID 0:
> | 2007/09/26-09:12:57 | START | 2987 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p r -P T -T 30 -w (-N 976519167) (-c)
> (-D 0:100)
> | 2007/09/26-09:13:34 | STAT | 2987 | v1.2.8 | /dev/sdb | Total
> write throughput: 1378440.5B/s (1.31MB/s), IOPS 336.5/s.
>
> RHEL5, RAID 1:
> | 2007/09/26-10:01:12 | START | 11539 | v1.2.8 | /dev/sdb | Start
> args: -B 4k -h 1 -I BD -K 4 -p r -P T -T 30 -w (-N 488259583) (-c)
> (-D 0:100)
> | 2007/09/26-10:01:41 | STAT | 11539 | v1.2.8 | /dev/sdb | Total
> write throughput: 638976.0B/s (0.61MB/s), IOPS 156.0/s.
>
> I re-ran the tests again, just to be sure (same order as above -
> SeqR, SeqW, RandomR, RandomW):
>
> RAID 0:
> SR| 2007/09/26-10:16:53 | STAT | 4602 | v1.2.8 | /dev/sdb | Total
> read throughput: 2456328.8B/s (2.34MB/s), IOPS 599.7/s.
> SW| 2007/09/26-10:17:23 | STAT | 4611 | v1.2.8 | /dev/sdb | Total
> write throughput: 66434662.4B/s (63.36MB/s), IOPS 16219.4/s.
> RR| 2007/09/26-10:17:53 | STAT | 4618 | v1.2.8 | /dev/sdb | Total
> read throughput: 273612.8B/s (0.26MB/s), IOPS 66.8/s.
> RW| 2007/09/26-10:18:31 | STAT | 4626 | v1.2.8 | /dev/sdb | Total
> write throughput: 1424701.8B/s (1.36MB/s), IOPS 347.8/s.
>
> RAID 1:
> SR| 2007/09/26-10:12:49 | STAT | 4509 | v1.2.8 | /dev/sdb | Total
> read throughput: 2479718.4B/s (2.36MB/s), IOPS 605.4/s.
> SW| 2007/09/26-10:13:19 | STAT | 4516 | v1.2.8 | /dev/sdb | Total
> write throughput: 53864721.1B/s (51.37MB/s), IOPS 13150.6/s.
> RR| 2007/09/26-10:13:49 | STAT | 4525 | v1.2.8 | /dev/sdb | Total
> read throughput: 268151.5B/s (0.26MB/s), IOPS 65.5/s.
> RW| 2007/09/26-10:14:19 | STAT | 4532 | v1.2.8 | /dev/sdb | Total
> write throughput: 549287.7B/s (0.52MB/s), IOPS 134.1/s.
>
> Baffled, I am.
Could you try the benchmarks with the 'deadline' scheduler?
echo deadline >/sys/block/sdb/queue/scheduler
In my tests here I found the 'cfq' scheduler does not let overlapping
io shine, it actually acts as a governor.
-Ross
______________________________________________________________________
This e-mail, and any attachments thereto, is intended only for use by
the addressee(s) named herein and may contain legally privileged
and/or confidential information. If you are not the intended recipient
of this e-mail, you are hereby notified that any dissemination,
distribution or copying of this e-mail, and any attachments thereto,
is strictly prohibited. If you have received this e-mail in error,
please immediately notify the sender and permanently delete the
original and any copy or printout thereof.
More information about the CentOS
mailing list