Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Oct 1998 08:30:00 -0700
From:      Tamiji Homma <thomma@BayNetworks.COM>
To:        matthew@wolfepub.com
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Network device slowdown?
Message-ID:  <19981021083000X.thomma@baynetworks.com>
In-Reply-To: Your message of "Tue, 20 Oct 1998 22:46:56 -0400" <3.0.5.32.19981020224656.007b76b0@firebat.wolfepub.com>
References:  <3.0.5.32.19981020224656.007b76b0@firebat.wolfepub.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> I was wondering if there are any known problems with the ed driver?  I had
> a Kingston 10/100 PCI ethernet card based on a DEC chipset in my 2.2.6-R
> box and the performance was terrible (<1Mbs).  I switched to a plain ISA
> 10Mbs ethernet card and the performance shot through the roof.  I figured
> that the driver for DEC based cards was probably not mature yet, so I stuck
> with the ISA ethernet.

Coincidentally, I was wondering(how many more?) if there is a way to
improve(or fix) de0 (sorry not ed driver) performance.  The problem
that I have is:

Machine A:                Machine B:
FIC PA-2007 K6/233        PR-440FX P6/200-512KBx2 SMP
64MB EDO                  128MB EDO ECC
-current(10/17/98)        -current(10/17/98)
Quantum Fireball 6.4G     IBM 9ZX (9G)
Maxtor 2880     11.5G     IBM 9ES (4.3G)
IDE DMA is on.

I used the following command to get timing (I know it is not a good one but...)

# rsh machineA dd if=/dev/zero bs=64k count=1000 >/dev/null (on machine B)
# rsh machineA dd if=/dev/zero bs=64k count=1000 >/usr/tmp/junk (on machine B)

# rsh machineB dd if=/dev/zero bs=64k count=1000 >/dev/null (on machine A)
# rsh machineB dd if=/dev/zero bs=64k count=1000 >/usr/tmp/junk (on machine A)

A ---> B means that a large amount of TCP transfer from machine A to B.
Machine A and machine B are connected by cross-over cable for this
experiement.

100Mbps/Full-duplex:
 Machine A           Machine B
 de0        ---->         fxp0 (over 9MByte/sec with disk write)
 de0        <----         fxp0 (somewhere 60KB/sec with disk write)
 fxp0       ---->         fxp0 (11MB/sec without disk write)
 fxp0       ---->         fxp0 (9MB/sec with disk write)
 fxp0       <----         fxp0 (9MB/sec without disk write)
 de0        ---->         de0  (over 7MB/sec without disk write)

10Mbps/Full-duplex:
 de0        <--->         de0  (1.06MB with disk write)

netstat -i shows that de0 on FIC-2007 is having 2 to 3 ierrors
per second when de0 receives a large amount of data with 100Mbps.
That explains terrible performance 60KB/sec.

fxp0 sees no errors on both machines as well as de0 on PR-440FX 
has no errors.  When I switch to 10Mbps, there is no error what
 so ever on both de0 and fxp0 on both machines.

The experiment above is not really systematic yet but one thing I
can tell is that de0 on FIC PA-2007 (VP2/97 chipset) does not handle
100Mbps input stream very well but 440FX does it well with both
fxp0 and de0.

I tried tweaking PCI timing to be all aggressive on FIC PA-2007 
but it doesn't show any visible effect.  Well, it is very hard 
to know what is really changed in PCI bus timing parameters from 
BIOS menu :(

Just data point...  Well, next step is to read de driver code to
see if anything I can do with it.

Tammy

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



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