Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Jul 1997 22:10:36 +0200
From:      Stefan Esser <se@FreeBSD.ORG>
To:        =?iso-8859-1?Q?S=F8ren_Schmidt?= <sos@sos.freebsd.dk>
Cc:        freebsd-current@FreeBSD.ORG
Subject:   Re: code talks:  announcing EIDE bus master patches
Message-ID:  <19970729221036.52544@mi.uni-koeln.de>
In-Reply-To: =?iso-8859-1?Q?=3C199707291949=2EVAA00271=40sos=2Efreebsd=2Edk=3E=3B_fro?= =?iso-8859-1?Q?m_S=F8ren_Schmidt_on_Tue=2C_Jul_29=2C_1997_at_09=3A49=3A2?= =?iso-8859-1?Q?9PM_%2B0200?=
References:  <19970729210723.18104@mi.uni-koeln.de> <199707291949.VAA00271@sos.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Jul 29, Søren Schmidt <sos@sos.freebsd.dk> wrote:
> > I'd love to see Bonnie results for them
> > with the bus-master EIDE driver ...
> > 
> > You don't have, by chance, any numbers 
> > to share ?  :)
> 
> Sure, on my dev machine (P6@233Mhz-Natoma/64MB/2*Maxtor 84000A6)

This seems to be an OEM version of the 83840a6, if I 
interpret the data sheets on their web page correctly.
AFAIK the fastest EIDE drive series on the market today!

> First without busmatering DMA:
> 
>               -------Sequential Output-------- ---Sequential Input-- --Random--
>               -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
> Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec %CPU
>           100  4871 35.9  4738  9.4  1722  3.6  4488 37.2  6973  8.5 126.7  2.2

Well, as was discussed before, the PIO transfers take
place mostly in an interrupt handler, which prevents 
accounting of the cycles to the process that caused
them ...

> Then with busmastering DMA:
> 
>               -------Sequential Output-------- ---Sequential Input-- --Random--
>               -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
> Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec %CPU
>           100  5225 39.8  5278 11.1  2017  4.4  7315 60.2  8737 10.8 149.6  2.2

And the result is apparently *higher* CPU load, at least 
if you (did) trust the numbers reported by Bonnie ...

But the "per char" read performance improvement indicates
what's really going on: CPU cycles spent in the interrupt
handler probably account for the 4.5MB/s mark in the PIO
case, while raw data rate of the disk is approached with
the DMA driver.

But writes are still significantly slower than reads, which
makes me think, that one revolution of the media is lost per
64KB written ...

> Not bad, for a "simple" software upgrade :)

True! But there is still room for improvement ... ;)

> It has improved my worldstone by ~10% if that counts for real world use..

Yes, one thing that is often underestimated is the fact, 
that while PIO mode transfers consume only a small fraction
of the cycles of a fast CPU, but they tend to consume them
exactly at the time, when the CPU is highly loaded anyway.

Thanks for sending those very interesting Bonnie results!

Regards, STefan



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