Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Sep 2004 11:42:11 +0200
From:      =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@DeepCore.dk>
To:        Frode Nordahl <frode@nordahl.net>
Cc:        current@freebsd.org
Subject:   Re: Promise PDC20267 ATA RAID, poor write performance
Message-ID:  <41456B73.9000701@DeepCore.dk>
In-Reply-To: <B09A569C-0566-11D9-AA63-000A95A9A574@nordahl.net>
References:  <EC95929E-031F-11D9-AA63-000A95A9A574@nordahl.net> <4142D833.4060802@DeepCore.dk> <B09A569C-0566-11D9-AA63-000A95A9A574@nordahl.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Frode Nordahl wrote:
> On Sep 11, 2004, at 12:49, S=F8ren Schmidt wrote:
>> pizzabox# dd if=3D/dev/zero of=3Dfill bs=3D1m count=3D2000
>> 2000+0 records in
>> 2000+0 records out
>> 2097152000 bytes transferred in 122.908771 secs (17062672 bytes/sec)
>=20
> I have done some more test now, reseated cables, disabling other IDE=20
> controllers etc. to no avail. I have tested both drives against the ICH=
2=20
> controller with very good results.
>=20
> After some fooling around I found the following:
> ar0: ATA RAID1 subdisks: ad4 ad6 status: READY
> # dd if=3D/dev/zero of=3Dfill bs=3D1m count=3D100
> 100+0 records in
> 100+0 records out
> 104857600 bytes transferred in 29.298259 secs (3578970 bytes/sec)
> # atacontrol detach ata2
> # dd if=3D/dev/zero of=3Dfill bs=3D1m count=3D100
> 100+0 records in
> 100+0 records out
> 104857600 bytes transferred in 3.080246 secs (34041957 bytes/sec)
>=20
> (this also works when writing 2GB...)
>=20
> That is, whenever I run with a single disk or a degraded RAID transfer =

> speeds are ok. I have tried this both ways, so it is not one of the=20
> disks / cables that is broken. As soon as I rebuild the RAID again,=20
> write speeds drop to 3MB/s.
>=20
> Any ideas as of how to debug this?

Sounds strange indeed, there is some performance degradation to be=20
expected from RAID1 (you have to write to both disks) but nothing that=20
ruins performance this badly. I cannot reproduce it no matter what I=20
try, so I'm pretty sure the reason should be found outside ATA.
It could be because the two channels are competing for the PCI bus and=20
the arbitration of that fails so you get alot of PCI retries, that is=20
outside ATA's reach to control..

-S=F8ren



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41456B73.9000701>