Re: FreeBSD 5.3b7and poor ata performance

From: Emanuel Strobl <Emanuel.Strobl_at_gmx.net>
Date: Tue, 19 Oct 2004 23:44:02 +0200
Am Dienstag, 19. Oktober 2004 22:25 schrieb Julian Elischer:

Quoting Emanuel Strobl <Emanuel.Strobl_at_gmx.net>:

> Am Samstag, 16. Oktober 2004 19:44 schrieb fandino:
[...]
>> How is possible that FreeBSD performs as bad?
>
> I have to confirm that I also have even worse transfer rates.
> It's a ICH2 (i815e) with a not so brand new 80GB WD, but I'd expext about
> 50MB/s and I get 16MB/s.
>
> One interesting thing is that the transferrate is constant with blocksizes
> from 256 Byte on. Only with a blocksize of 128 Bytes I can see reduced
> throughput (10MB/s).
> I can remember, when I last did such "esoteric" tests throughput reached
> maximum at about 16k blocksize and rapidly degraded with blocksizes smaller
> than 10k. But now only very very small blocksizes limit the throughput!
>
> Some excerpts: (i815 ich2, 5.3-RC1, custom kernel)
>
> cale:/usr#22: atacontrol mode 0
> Master = UDMA100
> Slave  = BIOSPIO
>
> ATA channel 0:
>     Master:  ad0 <WDC WD800AB-00CBA0/03.06A03> ATA/ATAPI revision 5
>
> atapci0: <Intel ICH2 UDMA100 controller> port
> 0xffa0-0xffaf,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 31.1 on pci0
> ata0: channel #0 on atapci0
> ata1: channel #1 on atapci0
>
> cale:/usr#25: uname -a
> FreeBSD cale.flintsbach.schmalzbauer.de 5.3-STABLE FreeBSD 5.3-STABLE #4: 
Sun
> Oct 17 02:33:58 CEST 2004
> root_at_cale.flintsbach.schmalzbauer.de:/usr/obj/usr/src/sys/CALE  i386

[...]

> try add
> options PREEMPTION


Regarding my message 
http://docs.freebsd.org/cgi/getmsg.cgi?fetch=1339485+0+current/freebsd-current
I also tried Julians suggestion and added PREEMPTION to my kernel.

I get exactly the same really low transferrates of 16MB/s, no change at any 
blocksize.

cale:/usr#9: dd if=/dev/zero of=testfile bs=256 count=50000
50000+0 records in
50000+0 records out
12800000 bytes transferred in 0.770128 secs (16620613 bytes/sec)
cale:/usr#10: dd if=/dev/zero of=testfile bs=128 count=50000
50000+0 records in
50000+0 records out
6400000 bytes transferred in 0.645674 secs (9912123 bytes/sec)
cale:/usr#11: dd if=/dev/zero of=testfile bs=16k count=5000
5000+0 records in
5000+0 records out
81920000 bytes transferred in 5.008406 secs (16356502 bytes/sec)

I think it's not worth changing the HD and compare these results against any 
other os, 16MB/s is _really_ slow. Out of curiosity I compared a very old BX 
based PII_at_300 with a old Seagate HD:
OpenBSD 3.5: 24MB/s
FreeBSD 5.3-stable: 15MB/s
I don't expect this system to provide much more than 25MB/s but it's much more 
than my 1.1GHz Tualatin Celeron with ICH2 and FreeBSD 5.3-stable provides!

Thanks,

-Harry


>
> fandino wrote:
> > Kenneth Culver wrote:
> >>> # dd if=/dev/stripe/test of=/dev/null bs=1024k count=1024
> >>> 1073741824 bytes transferred in 30.072215 secs (35705445 bytes/sec)

Received on Tue Oct 19 2004 - 19:44:13 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:18 UTC