Hello,

Sum-up:
-------

We try to use NFS server in different machines and network
environments and we have very poor performances. Our main test
is creating a big tar archive on local NFS server. With NFS
server on OpenBSD 4.5: speed result is about 500 Kbit/s for NFS
Linux clients, and about 2 Mbit/s for NFS OpenBSD clients.

Details:
--------

Two years ago we deploy a NFS server with OpenBSD 4.0 on DELL
PowerEdge 1900 server (RAID 5 with PERC 5/i on SCSI disks,
Broadcom BCM5708 network card, see dmesg in attachment). NFS
clients are machines on the same local network (Linux, SunOS,
etc.). No problem was reported. We upgrade to 4.1, all was
always right. But after upgrading to 4.2, users begin to be
unhappy during big files transfers or big tarball creations (note
we are not really sure they did these operations before). Then we
try to optimize NFS (trying differents options - tcp/udp for
example - for clients or increasing nfsd number for server) and
change hardware (use another network card, another wires, another
switches). Always very slow... while there are no problem with
SunOS or Linux NFS servers. Moreover connections to OpenBSD NFS
server are often locked with classical messages:
nfs: server FOO not responding, still trying
nfs: server FOO OK
During the creation of a big tarball, nfsd process are often in
run state "D" (disk wait). We verify disk performances but they
are pretty good in local filesystem. We upgrade to 4.3. Same
behaviour. 4.4 too. In another office, we try with a
different machine (see dmesg in attachment) with OpenBSD 4.5 on a
new network environment. It's a little better, but too slow
again.

Example when creating a big tar archive.
With OpenBSD NFS client, it's not too bad:

obsd-nfs-client:/mnt/nfs% du -sh test/
1.5G
obsd-nfs-client:/mnt/nfs% tar cf test.tar test/
....during about 1.5 hours...

With Linux NFS client, it's too slow:

linux-nfs-client:/mnt/nfs% du -sh test/
1.5G
linux-nfs-client:/mnt/nfs% tar cf test.tar test/
....during about 7 hours...

We are aware some sysadmins use OpenBSD NFS server with success
(we find happy users in openbsd-misc archives). But we don't.
Have you ideas for us ?

Regards,
-- 
Gregory Colpart <r...@evolix.fr>  GnuPG:1024D/C1027A0E
Evolix - Informatique et Logiciels Libres http://www.evolix.fr/
OpenBSD 4.4 (GENERIC) #1021: Tue Aug 12 17:16:55 MDT 2008
    dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel(R) Xeon(R) CPU 5110 @ 1.60GHz ("GenuineIntel" 686-class) 1.60 GHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,TM2,CX16,xTPR
real mem  = 1068400640 (1018MB)
avail mem = 1024663552 (977MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 09/12/08, BIOS32 rev. 0 @ 0xffe90, SMBIOS 
rev. 2.5 @ 0x3fb9c000 (67 entries)
bios0: vendor Dell Inc. version "2.5.0" date 09/12/2008
bios0: Dell Inc. PowerEdge 1900
acpi0 at bios0: rev 2
acpi0: tables DSDT FACP APIC SPCR HPET MCFG WD__ SLIC ERST HEST BERT EINJ TCPA
acpi0: wakeup devices PCI0(S5)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 6 (PEX2)
acpiprt2 at acpi0: bus 7 (UPST)
acpiprt3 at acpi0: bus 8 (DWN1)
acpiprt4 at acpi0: bus 9 (DWN2)
acpiprt5 at acpi0: bus 10 (PE2X)
acpiprt6 at acpi0: bus 11 (PEX3)
acpiprt7 at acpi0: bus 12 (PEX4)
acpiprt8 at acpi0: bus 1 (PEX5)
acpiprt9 at acpi0: bus 2 (PE2P)
acpiprt10 at acpi0: bus 13 (PEX6)
acpiprt11 at acpi0: bus 4 (SBEX)
acpiprt12 at acpi0: bus 15 (COMP)
acpicpu0 at acpi0
bios0: ROM list: 0xc0000/0x9000! 0xc9000/0x5400 0xec000/0x4000!
ipmi at mainbus0 not configured
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 5000P Host" rev 0x92
ppb0 at pci0 dev 2 function 0 "Intel 5000 PCIE" rev 0x92
pci1 at ppb0 bus 6
ppb1 at pci1 dev 0 function 0 "Intel 6321ESB PCIE" rev 0x01
pci2 at ppb1 bus 7
ppb2 at pci2 dev 0 function 0 "Intel 6321ESB PCIE" rev 0x01
pci3 at ppb2 bus 8
ppb3 at pci2 dev 1 function 0 "Intel 6321ESB PCIE" rev 0x01: irq 5
pci4 at ppb3 bus 9
ppb4 at pci1 dev 0 function 3 "Intel 6321ESB PCIE-PCIX" rev 0x01
pci5 at ppb4 bus 10
ppb5 at pci0 dev 3 function 0 "Intel 5000 PCIE" rev 0x92
pci6 at ppb5 bus 11
ppb6 at pci0 dev 4 function 0 "Intel 5000 PCIE" rev 0x92
pci7 at ppb6 bus 12
ppb7 at pci0 dev 5 function 0 "Intel 5000 PCIE" rev 0x92
pci8 at ppb7 bus 1
ppb8 at pci8 dev 0 function 0 "Intel IOP333 PCIE-PCIX" rev 0x00
pci9 at ppb8 bus 2
mfi0 at pci9 dev 14 function 0 "Dell PERC 5" rev 0x00: irq 6, 0x1f031028
mfi0: logical drives 1, version 5.2.2-0072, 256MB RAM
scsibus0 at mfi0: 1 targets, initiator 64
sd0 at scsibus0 targ 0 lun 0: <DELL, PERC 5/i, 1.03> SCSI3 0/direct fixed
sd0: 475648MB, 60636 cyl, 255 head, 63 sec, 512 bytes/sec, 974127104 sec total
ppb9 at pci8 dev 0 function 2 "Intel IOP333 PCIE-PCIX" rev 0x00
pci10 at ppb9 bus 3
ppb10 at pci0 dev 6 function 0 "Intel 5000 PCIE x8" rev 0x92
pci11 at ppb10 bus 13
ppb11 at pci0 dev 7 function 0 "Intel 5000 PCIE" rev 0x92
pci12 at ppb11 bus 14
pchb1 at pci0 dev 16 function 0 "Intel 5000 Error Reporting" rev 0x92
pchb2 at pci0 dev 16 function 1 "Intel 5000 Error Reporting" rev 0x92
pchb3 at pci0 dev 16 function 2 "Intel 5000 Error Reporting" rev 0x92
pchb4 at pci0 dev 17 function 0 "Intel 5000 Reserved" rev 0x92
pchb5 at pci0 dev 19 function 0 "Intel 5000 Reserved" rev 0x92
pchb6 at pci0 dev 21 function 0 "Intel 5000 FBD" rev 0x92
pchb7 at pci0 dev 22 function 0 "Intel 5000 FBD" rev 0x92
ppb12 at pci0 dev 28 function 0 "Intel 6321ESB PCIE" rev 0x09
pci13 at ppb12 bus 4
ppb13 at pci13 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xc3
pci14 at ppb13 bus 5
bnx0 at pci14 dev 0 function 0 "Broadcom BCM5708" rev 0x12: irq 5
uhci0 at pci0 dev 29 function 0 "Intel 6321ESB USB" rev 0x09: irq 11
uhci1 at pci0 dev 29 function 1 "Intel 6321ESB USB" rev 0x09: irq 10
uhci2 at pci0 dev 29 function 2 "Intel 6321ESB USB" rev 0x09: irq 11
uhci3 at pci0 dev 29 function 3 "Intel 6321ESB USB" rev 0x09: irq 10
ehci0 at pci0 dev 29 function 7 "Intel 6321ESB USB" rev 0x09: irq 11
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb14 at pci0 dev 30 function 0 "Intel 82801BA Hub-to-PCI" rev 0xd9
pci15 at ppb14 bus 15
vga1 at pci15 dev 13 function 0 "ATI ES1000" rev 0x02
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
drm at vga1 unsupported
ichpcib0 at pci0 dev 31 function 0 "Intel 6321ESB LPC" rev 0x09: PM disabled
pciide0 at pci0 dev 31 function 1 "Intel 6321ESB IDE" rev 0x09: DMA, channel 0 
configured to compatibility, channel 1 configured to compatibility
atapiscsi0 at pciide0 channel 0 drive 0
scsibus1 at atapiscsi0: 2 targets, initiator 7
cd0 at scsibus1 targ 0 lun 0: <HL-DT-ST, DVD-ROM GDR8164B, 0D08> ATAPI 5/cdrom 
removable
cd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
pciide0: channel 1 ignored (disabled)
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci3: USB revision 1.0
uhub4 at usb4 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at ichpcib0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
biomask fdc5 netmask fde5 ttymask ffff
mtrr: Pentium Pro MTRR support
uhub5 at uhub0 port 7 "Cypress Semiconductor USB2 Hub" rev 2.00/0.0b addr 2
uhidev0 at uhub2 port 1 configuration 1 interface 0 "DELL DELL USB Keyboard" 
rev 1.10/1.05 addr 2
uhidev0: iclass 3/1
ukbd0 at uhidev0: 8 modifier keys, 6 key codes
wskbd1 at ukbd0 mux 1
wskbd1: connecting to wsdisplay0
softraid0 at root
root on sd0a swap on sd0b dump on sd0b
bnx0: address 00:19:b9:cc:42:06
brgphy0 at bnx0 phy 1: BCM5708C 10/100/1000baseT PHY, rev. 6
OpenBSD 4.5 (GENERIC) #1749: Sat Feb 28 14:51:18 MST 2009
    dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: AMD Sempron(tm) ("AuthenticAMD" 686-class, 256KB L2 cache) 1.01 GHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE
real mem  = 267939840 (255MB)
avail mem = 250789888 (239MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 09/09/04, BIOS32 rev. 0 @ 0xfda90, SMBIOS 
rev. 2.3 @ 0xf0630 (21 entries)
bios0: vendor American Megatrends Inc. version "Version 07.00T" date 04/02/01
bios0: MSI MS-7021
apm0 at bios0: Power Management spec V1.2
apm0: AC on, battery charge unknown
acpi at bios0 function 0x0 not configured
pcibios0 at bios0: rev 2.1 @ 0xf0000/0x10000
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xf7f00/192 (10 entries)
pcibios0: PCI Interrupt Router at 000:17:0 ("VIA VT8237 ISA" rev 0x00)
pcibios0: PCI bus #1 is the last bus
bios0: ROM list: 0xc0000/0xf400 0xcfc00/0x1800
cpu0 at mainbus0: (uniprocessor)
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 "VIA VT8377 PCI" rev 0x80
viaagp0 at pchb0: v3
agp0 at viaagp0: aperture at 0xe0000000, size 0x10000000
ppb0 at pci0 dev 1 function 0 "VIA VT8377 AGP" rev 0x00
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "NVIDIA GeForce FX 5200" rev 0xa1
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
pciide0 at pci0 dev 15 function 0 "VIA VT82C571 IDE" rev 0x06: ATA133, channel 
0 configured to compatibility, channel 1 configured to compatibility
wd0 at pciide0 channel 0 drive 0: <Maxtor 6E040L0>
wd0: 16-sector PIO, LBA, 39205MB, 80293248 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 6
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <_NEC, DVD-ROM DV-5700A, 3.42> ATAPI 5/cdrom 
removable
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
uhci0 at pci0 dev 16 function 0 "VIA VT83C572 USB" rev 0x81: irq 11
uhci1 at pci0 dev 16 function 1 "VIA VT83C572 USB" rev 0x81: irq 11
uhci2 at pci0 dev 16 function 2 "VIA VT83C572 USB" rev 0x81: irq 5
uhci3 at pci0 dev 16 function 3 "VIA VT83C572 USB" rev 0x81: irq 5
ehci0 at pci0 dev 16 function 4 "VIA VT6202 USB" rev 0x86: irq 12
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "VIA EHCI root hub" rev 2.00/1.00 addr 1
viapm0 at pci0 dev 17 function 0 "VIA VT8237 ISA" rev 0x00
iic0 at viapm0
iic0: addr 0x1b 06=f4 08=1e 09=0e 0b=ff 0c=0a 0d=0a 0e=f4 0f=07 10=0c 11=03 
14=55 15=55 17=ff 18=ff 1c=02 1f=1e 20=ff 21=0a 22=07 26=30 29=ff words 00=00ff 
01=00ff 02=00ff 03=00ff 04=00ff 05=00ff 06=f4ff 07=00ff
iic0: addr 0x2f 00=10 01=07 02=00 03=00 04=07 05=00 06=00 07=00 14=14 15=62 
16=03 17=02 words 00=10ff 01=07ff 02=00ff 03=00ff 04=07ff 05=00ff 06=00ff 
07=00ff
spdmem0 at iic0 addr 0x50: 256MB DDR SDRAM non-parity PC3200CL2.5
auvia0 at pci0 dev 17 function 5 "VIA VT8233 AC97" rev 0x60: irq 12
ac97: codec id 0x414c4760 (Avance Logic ALC655 rev 0)
audio0 at auvia0
vr0 at pci0 dev 18 function 0 "VIA RhineII-2" rev 0x78: irq 11, address 
00:11:09:31:05:eb
rlphy0 at vr0 phy 1: RTL8201L 10/100 PHY, rev. 1
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci3: USB revision 1.0
uhub4 at usb4 "VIA UHCI root hub" rev 1.00/1.00 addr 1
isa0 at mainbus0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
wbsio0 at isa0 port 0x2e/2: W83697HF rev 0x12
lm1 at wbsio0 port 0x290/8: W83697HF
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
biomask ff6d netmask ff6d ttymask ffff
mtrr: Pentium Pro MTRR support
softraid0 at root
root on wd0a swap on wd0b dump on wd0b

Reply via email to