Interrupt performance

Slawa Olhovchenkov slw at zxy.spb.ru
Fri Jan 28 18:45:02 UTC 2011


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.
> 
> P.S. - /usr/src/tools/tools/netrate/netblast - we have tested little more expensive card - em/igb and bce.

Now I install 8.2-RC2/i386 and use netblast:

# /usr/obj/usr/src/tools/tools/netrate/netblast/netblast 10.200.0.1  1122 1400 10

start:             1296239273.106911353
finish:            1296239283.107222845
send calls:        2703219
send errors:       2090049
approx send rate:  61317
approx error rate: 0

CPU load (No difference with netperf):

iostat:
       tty             ad0             cpu
 tin  tout  KB/t tps  MB/s  us ni sy in id
   1    48  0.00   0  0.00   4  0 47 20 29
   0    44  0.00   0  0.00   2  0 68 30  0
   0    44  0.00   0  0.00  12  0 65 23  0
   0    44  0.00   0  0.00   6  0 73 21  0
   0    44  0.00   0  0.00   8  0 54 38  0
   0    44  0.00   0  0.00   5  0 66 29  0
   0    44  0.00   0  0.00   7  0 65 29  0
   0    44  0.00   0  0.00   7  0 64 29  0
   0    44  0.00   0  0.00   8  0 64 28  0
   0    44  0.00   0  0.00   7  0 57 35  0
   0   235  0.00   0  0.00   4  0 13 12 71

vmstat:
 procs      memory      page                   disk         faults         cpu
 r b w     avm    fre   flt  re  pi  po    fr  sr ad0   in   sy       cs us sy id
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15331 269981 30697  6 94  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15333 269072 30716  5 95  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15332 269512 30690  9 91  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15331 269633 30698  8 92  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15334 269613 30693  7 93  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15332 269438 30713 13 87  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15337 269460 30705  7 93  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15299 266321 30617  6 94  0
 1 0 0  97748K   431M     0   0   0   0     0   0   0 15300 266147 30625 11 89  0


(Linux, for compare, only 1279 cs)

systat -vmstat 1
    3 users    Load  0.29  0.09  0.07                  Jan 28 21:31

Mem:KB    REAL            VIRTUAL                       VN PAGER   SWAP PAGER
        Tot   Share      Tot    Share    Free           in   out     in   out
Act   16068    4496    99772     5208  440312  count
All   37664    6644  2227916    10384          pages
Proc:                                                            Interrupts
  r   p   d   s   w   Csw  Trp  Sys  Int  Sof  Flt        cow   17372 total
  1          23       30k   12 270k  15k  30k             zfod        atkbd0 1
                                                          ozfod       ata0 irq14
63.2%Sys  29.3%Intr  7.5%User  0.0%Nice  0.0%Idle        %ozfod       ata1 irq15
|    |    |    |    |    |    |    |    |    |    |       daefr 15366 re0 irq19
================================++++++++++++++>>>>        prcfr  2006 cpu0: time
                                         1 dtbuf          totfr
Namei     Name-cache   Dir-cache     34738 desvn          react
   Calls    hits   %    hits   %       595 numvn          pdwak
                                        34 frevn          pdpgs
                                                          intrn
Disks   ad0                                         26572 wire
KB/t   0.00                                         12800 act
tps       0                                         12732 inact
MB/s   0.00                                           104 cache
%busy     0                                        440208 free
                                                    11552 buf


> 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 at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-performance
> > To unsubscribe, send any mail to "freebsd-performance-unsubscribe at freebsd.org"
> 
> --
> Best Wishes,
> Stefan Lambrev
> ICQ# 24134177
> 
> 
> 
> 
> 


More information about the freebsd-performance mailing list