I'm looking to improve my samba writing performance but I Fear I've
either tweaked something wrong or not tweaked it enough and as such
I'm looking for any and all criticism that might improve my situation.

Admittedly I'm running somewhat of a Frankenstein system - older P3 /w
too many pci cards that sadly in some ways have to share the same IRQ
(the Compaq BIOS in manual IRQ assignment is not very flexible). I
have however gone out of my way to disable whatever I am not using  -
- eg sound, PATA, onboard usb 1.1, etc. And yes that is a CMD Silicon
Image 3512 PCI add-in card /w 1TB western digital SATA drive on IRQ 14
-- it was fun to watch the machine boot from the SATA DVDRW.

"Out of the box" was performance just short of abysmal. I can't
currently remember the exact output numbers but doing a windows to
samba copy worked at about 2MB/s (watching systat vmstat as it writes
to the HD).

By adding the following to OpenBSD:
--------------
net.inet.ip.ifq.maxlen=768      # Maximum input queue (256*number of interfaces)
net.inet.icmp.errppslimit=1000  # Maximum outgoing ICMP error messages per sec
net.inet.ip.ttl=254             # TTL = "min-ttl" in scrub rule in pf.conf
net.inet.tcp.ackonpush=1        # acks for packets with the push bit  no delay
net.inet.tcp.ecn=1              # Explicit Congestion Notification enabled
net.inet.tcp.mssdflt=1452       # maximum segment size (1452 from scrub pf.conf)
net.inet.tcp.rfc1323=1          # RFC1323 TCP window scaling
net.inet.tcp.recvspace=262144   # Increase TCP "recieve" windows size to increas
e performance
net.inet.tcp.sendspace=262144   # Increase TCP "send" windows size to increase p
erformance
net.inet.tcp.sack=1             # enable TCP Selective ACK (SACK) Packet Recover
y
net.inet.udp.recvspace=262144   # Increase UDP "recieve" windows size to increas
e performance
net.inet.udp.sendspace=262144   # Increase UDP "send" windows size to increase p
erformance
--------------

and the following performance option in smb.conf
--------------
   socket options = IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
   sync always = no
   read raw = no
   write raw = no
--------------

I managed to get my internal network interface (re0) to 4000
interupts/sec and a wd0 write speed between 4MB and 12MB per second.
Again any help anyone can give me that might improve my overall write
speed would be greatly appriciated.

incase you're wondering the system is for a home network firewall /w
wireless support. dmesg follows:

OpenBSD 4.4 (GENERIC) #1021: Tue Aug 12 17:16:55 MDT 2008
    [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel Pentium III ("GenuineIntel" 686-class) 864 MHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE
real mem  = 402026496 (383MB)
avail mem = 380039168 (362MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 09/13/02, BIOS32 rev. 0 @
0xe7300, SMBIOS rev. 2.3 @ 0xfd33c (50 entries)
bios0: vendor Compaq version "686P2 v3.14" date 09/13/2002
bios0: Compaq Deskpro
apm at bios0 function 0x15 not configured
acpi0 at bios0: rev 0
acpi0: tables DSDT FACP SSDT SSDT SSDT APIC SSDT SSDT SSDT SSDT
acpi0: wakeup devices PCI0(S4) HUB_(S4) COM1(S4) COM2(S4) USB1(S3)
USB2(S3) PBTN(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 2 (HUB_)
acpicpu0 at acpi0
acpibtn0 at acpi0: PBTN
bios0: ROM list: 0xc0000/0x8000 0xc8000/0x4800 0xe0000/0x10000!
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82815 Host" rev 0x02
ppb0 at pci0 dev 1 function 0 "Intel 82815 AGP" rev 0x02
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "ATI Rage Pro" rev 0x5c
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
agp0 at vga1: aperture at 0x44000000, size 0x2400000
drm at vga1 unsupported
ppb1 at pci0 dev 30 function 0 "Intel 82801BA Hub-to-PCI" rev 0x01
pci2 at ppb1 bus 2
fxp0 at pci2 dev 8 function 0 "Intel 82562" rev 0x01, i82562: irq 5,
address 00:02:a5:01:6b:f8
inphy0 at fxp0 phy 1: i82562EM 10/100 PHY, rev. 0
ral0 at pci2 dev 9 function 0 "Ralink RT2860" rev 0x00: irq 11,
address 00:1b:fc:df:3e:f9
ral0: MAC/BBP RT2860 (rev 0x0101), RF RT2820 (2T3R)
pciide0 at pci2 dev 10 function 0 "CMD Technology SiI3512 SATA" rev 0x01: DMA
pciide0: using irq 14 for native-PCI interrupt
pciide0: port 0: device present, speed: 1.5Gb/s
atapiscsi0 at pciide0 channel 0 drive 0
scsibus0 at atapiscsi0: 2 targets, initiator 7
cd0 at scsibus0 targ 0 lun 0: <HL-DT-ST, DVD-RAM GH22NS30, 1.00> ATAPI
5/cdrom removable
cd0(pciide0:0:0): using BIOS timings, Ultra-DMA mode 5
pciide0: port 1: device present, speed: 1.5Gb/s
wd0 at pciide0 channel 1 drive 0: <WDC WD1001FALS-00J7B0>
wd0: 16-sector PIO, LBA48, 953869MB, 1953525168 sectors
wd0(pciide0:1:0): using BIOS timings, Ultra-DMA mode 6
ohci0 at pci2 dev 11 function 0 "NEC USB" rev 0x43: irq 10, version 1.0
ohci1 at pci2 dev 11 function 1 "NEC USB" rev 0x43: irq 10, version 1.0
ehci0 at pci2 dev 11 function 2 "NEC USB" rev 0x04: irq 11
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "NEC EHCI root hub" rev 2.00/1.00 addr 1
re0 at pci2 dev 13 function 0 "Realtek 8169" rev 0x10: RTL8169S
(0x0400), irq 11, address 00:40:f4:ce:51:7a
rgephy0 at re0 phy 7: RTL8169S/8110S PHY, rev. 0
usb1 at ohci0: USB revision 1.0
uhub1 at usb1 "NEC OHCI root hub" rev 1.00/1.00 addr 1
usb2 at ohci1: USB revision 1.0
uhub2 at usb2 "NEC OHCI root hub" rev 1.00/1.00 addr 1
ichpcib0 at pci0 dev 31 function 0 "Intel 82801BA LPC" rev 0x01
pciide1 at pci0 dev 31 function 1 "Intel 82801BA IDE" rev 0x01: DMA,
unused (couldn't map registers), channel 0 wired to compatibility,
channel 1 wired to compatibility
pciide1: channel 0 ignored (disabled)
pciide1: channel 1 ignored (disabled)
uhci0 at pci0 dev 31 function 4 "Intel 82801BA USB" rev 0x01: can't
map i/o space
auich0 at pci0 dev 31 function 5 "Intel 82801BA AC97" rev 0x01: can't
map codec i/o space
isa0 at ichpcib0
isadma0 at isa0
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 fddd netmask fdfd ttymask ffff
mtrr: Pentium Pro MTRR support
softraid0 at root
root on wd0a swap on wd0b dump on wd0b

Thanks in advance!
-- 
I know too much and yet not enough

Reply via email to