Subject: low performance on intel fxp driver
To: NetBSD-users list <netbsd-users@netbsd.org>
From: Rogier Krieger <rogier@virgiel.nl>
List: tech-net
Date: 06/10/2001 19:39:02
--=====================_992187542==_
Content-Type: text/plain; charset="us-ascii"

Hello everyone,

despite digging through the archives, I can't find the solution for my
'problem' with the intel 82557 cards in my NetBSD machine.

To sketch the configuration, I have a P2-333 running NetBDS 1.5 which is
linked to a Win95b workstation over a cross-link cable. Both machines
employ intel 82557-based NICs exclusively, originating from HP
Netservers that replaced. Fairly reasonable hardware, I'd say.

First of all, the NetBSD machine is fully stable, also at higher loads.
For the Win95b machine, surprisingly, the same holds. I'm not satisfied
where the transfer speeds on the cross-link connection. Whether it's
with ftp or smb transfers, I only achieve a 3.75Mbyte/s on average. This
at times drops to 1.9Mbyte/s on very large (say, 675Mb) files. This is
in fact slower than on the RealTek 8139 cards I had in use previously
(running at 4.5Mbyte/s). The link speed remains constant at 100TX-FDX.
No autodetection problems occur on either side.

Is there anyone with a clue as to how I can get a more decent transfer
speed or as to what the problems in my configuration may be (e.g.
suggested BIOS settings)?. If this is too vague a question, I'm happy to
supply more information. I'm confident that these cards can do better,
given their 9.5Mbyte/s performance in the old HP Netservers. Digging
through the archives, I saw several times the fxp driver was mentioned
having problems and sub-optimal performance.

Thanks in advance,

Rogier Krieger


- Configuration information included below -

In the NetBSD machine, I have:			In the Win95b machine, I have:
fxp0	outside, 10Mbit-HDX link
fxp1	inside, 100Mbit-FDX link	<--crosslink-->	intel 82557, 100Mbit-FDX
fxp2	inside, unused

Here's the quick dmesg dump for the NetBSD machine

fxp0 at pci0 dev 10 function 0: Intel i82557 Ethernet, rev 2
fxp0: interrupting at irq 5
fxp0: Ethernet address 00:60:b0:68:f4:5e, 10/100 Mb/s
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 0
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp1 at pci0 dev 11 function 0: Intel i82557 Ethernet, rev 2
fxp1: interrupting at irq 12
fxp1: Ethernet address 00:60:b0:58:43:a5, 10/100 Mb/s
inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 0
inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp2 at pci0 dev 12 function 0: Intel i82557 Ethernet, rev 2
fxp2: interrupting at irq 10
fxp2: Ethernet address 00:60:b0:58:43:a2, 10/100 Mb/s
inphy2 at fxp2 phy 1: i82555 10/100 media interface, rev. 0
inphy2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto



--=====================_992187542==_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment; filename="p2-333-dmesg.txt"

NetBSD 1.5 (GENERIC) #1: Sun Nov 19 21:42:11 MET 2000
    fvdl@sushi:/work/trees/netbsd-1-5/sys/arch/i386/compile/GENERIC
cpu0: Intel Pentium II (Deschutes) (686-class)
total memory =3D 159 MB
avail memory =3D 142 MB
using 2068 buffers containing 8272 KB of memory
BIOS32 rev. 0 found at 0xf0550
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82443BX Host Bridge/Controller (rev. 0x03)
ppb0 at pci0 dev 1 function 0: Intel 82443BX AGP Interface (rev. 0x03)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
vga1 at pci1 dev 0 function 0: ATI Technologies Mach64 GB (rev.=
 0x5c)
wsdisplay0 at vga1: console (80x25, vt100 emulation)
pcib0 at pci0 dev 7 function 0
pcib0: Intel 82371AB PCI-to-ISA Bridge (PIIX4) (rev. 0x02)
pciide0 at pci0 dev 7 function 1: Intel 82371AB IDE controller (PIIX4) (rev.=
 0x01)
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <QUANTUM FIREBALL ST3.2A>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 3079 MB, 6256 cyl, 16 head, 63 sec, 512 bytes/sect x 6306048=
 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
wd1 at pciide0 channel 0 drive 1: <WDC AC24300L>
wd1: drive supports 16-sector pio transfers, lba addressing
wd1: 4112 MB, 8912 cyl, 15 head, 63 sec, 512 bytes/sect x 8421840=
 sectors
wd1: 32-bit data port
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
pciide0: primary channel interrupting at irq 14
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data=
 transfers)
wd1(pciide0:0:1): using PIO mode 4, Ultra-DMA mode 2 (using DMA data=
 transfers)
pciide0: secondary channel wired to compatibility mode
wd2 at pciide0 channel 1 drive 0: <IBM-DTLA-305040>
wd2: drive supports 16-sector pio transfers, lba addressing
wd2: 39266 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 80418240=
 sectors
wd2: 32-bit data port
wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5
pciide0: secondary channel interrupting at irq 15
wd2(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data=
 transfers)
uhci0 at pci0 dev 7 function 2: Intel 82371AB USB Host Controller (PIIX4)=
 (rev. 0x01)
uhci0: interrupting at irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
Intel 82371AB Power Management Controller (PIIX4) (miscellaneous bridge,=
 revision 0x02) at pci0 dev 7 function 3 not configured
fxp0 at pci0 dev 10 function 0: Intel i82557 Ethernet, rev 2
fxp0: interrupting at irq 5
fxp0: Ethernet address 00:60:b0:68:f4:5e, 10/100 Mb/s
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 0
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp1 at pci0 dev 11 function 0: Intel i82557 Ethernet, rev 2
fxp1: interrupting at irq 12
fxp1: Ethernet address 00:60:b0:58:43:a5, 10/100 Mb/s
inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 0
inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp2 at pci0 dev 12 function 0: Intel i82557 Ethernet, rev 2
fxp2: interrupting at irq 10
fxp2: Ethernet address 00:60:b0:58:43:a2, 10/100 Mb/s
inphy2 at fxp2 phy 1: i82555 10/100 media interface, rev. 0
inphy2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
lpt0 at isa0 port 0x378-0x37b irq 7
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
isapnp0: no ISA Plug 'n Play devices found
biomask eb45 netmask ff65 ttymask ffe7
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
IP Filter: v3.4.9 initialized.  Default =3D pass all, Logging =3D=
 enabled
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0

--=====================_992187542==_--