On 1/28/11 8:15 AM, Stefan Lambrev wrote:
The overhead comes from badly written software.
This software is optimized for linux and you have to optimize it for freebsd, 
then you will have the same overhead.
All those *popular* benchmarks like hping, iperf, netperf have some strange 
optimizations for linux - we call them linuxism.
Just search the archives - I'm pretty sure patches are flying around.


He wants to know why the freeBSD driver spends 8 x as much time on each interrupt.

there are of course several possible answers, including:

1/ Sometimes BSD and Linux report things differently. Linux may or may not
account for the lowest level interrupt tie the same as BSD
2/ the BSD driver for that chip may be badly written, or may
be doing more or different work for some reason
3/ the FreeBSD interrupt code may be misconfigured for that driver.

or maybe combinations...

there are profiling tools that you may decide to run.

Julian



On Jan 28, 2011, at 6:10 PM, Slawa Olhovchenkov wrote:

On Fri, Jan 28, 2011 at 06:03:15PM +0200, Stefan Lambrev wrote:

Do the test with netblast ;)
Most perf tools are written badly and for Linux.
In our internal test netblast running on freebsd outperform everything else.
I don't speak about bad performance.
I speak about overhead.

Linux: overhead 7% for 56K int/s
FreeBSD: overhead 59% for 14K int/s

For processing 1/4 interrupts FreeBSD need 8x CPU.

P.S. - /usr/src/tools/tools/netrate/netblast - we have tested little more 
expensive card - em/igb and bce.

On Jan 28, 2011, at 4:33 PM, Slawa Olhovchenkov wrote:

I test network performance and found some strange result -- on the
same hardware Linux more then 10x used CPU resources for interrupt
processing.

FreeBSD system utilise 70% CPU (32% idle, 59% interrupt, 9% sys) and
network card generate 14K-18K interrupt per second.

Linux system utilise 20% CPU (80% idle, 13% system, 3% hiq, 4% siq)
and network card generate 56K interrupt per second.

I used 'netperf -H host -t UDP_STREAM -l 60 -C -c -- -m 8972 -s
128K -S 128K' for generate network traffic.

NIC:

re0:<RealTek 8169SC/8110SC Single-chip Gigabit Ethernet>  port 0x4000-0x40ff 
mem 0xf0100000-0xf01000ff irq 19 at device 4.0 on pci11
re0: Chip rev. 0x18000000
re0: MAC rev. 0x00000000
miibus0:<MII bus>  on re0
rgephy0:<RTL8169S/8110S/8211B media interface>  PHY 1 on miibus0


CPU:

CPU: Intel(R) Celeron(R) CPU          420  @ 1.60GHz (1596.05-MHz K8-class CPU)
Origin = "GenuineIntel"  Id = 0x10661  Family = 6  Model = 16
Stepping = 1
Features=0xafebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,PBE>
Features2=0xe31d<SSE3,DTES64,MON,DS_CPL,TM2,SSSE3,CX16,xTPR,PDCM>
AMD Features=0x20100800<SYSCALL,NX,LM>
AMD Features2=0x1<LAHF>
TSC: P-state invariant

RAM: one DDR2-667 DIMM.

OS: 8.2-RC2, amd64

_______________________________________________
freebsd-performance@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "freebsd-performance-unsubscr...@freebsd.org"
--
Best Wishes,
Stefan Lambrev
ICQ# 24134177





_______________________________________________
freebsd-performance@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "freebsd-performance-unsubscr...@freebsd.org"
--
Best Wishes,
Stefan Lambrev
ICQ# 24134177





_______________________________________________
freebsd-performance@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "freebsd-performance-unsubscr...@freebsd.org"


_______________________________________________
freebsd-performance@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "freebsd-performance-unsubscr...@freebsd.org"

Reply via email to