From owner-freebsd-performance@FreeBSD.ORG Fri Jan 28 17:42:46 2011 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7FBF21065679 for ; Fri, 28 Jan 2011 17:42:46 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) by mx1.freebsd.org (Postfix) with ESMTP id CCE488FC15 for ; Fri, 28 Jan 2011 17:42:45 +0000 (UTC) Received: from julian-mac.elischer.org (h-67-100-89-137.snfccasy.static.covad.net [67.100.89.137]) (authenticated bits=0) by vps1.elischer.org (8.14.4/8.14.4) with ESMTP id p0SH1F4f071459 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Fri, 28 Jan 2011 17:01:27 GMT (envelope-from julian@freebsd.org) Message-ID: <4D42F87C.7020909@freebsd.org> Date: Fri, 28 Jan 2011 09:10:20 -0800 From: Julian Elischer User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.4; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Stefan Lambrev References: <20110128143355.GD18170@zxy.spb.ru> <22E77EED-6455-4164-9115-BBD359EC8CA6@moneybookers.com> <20110128161035.GF18170@zxy.spb.ru> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-performance@freebsd.org, Slawa Olhovchenkov Subject: Re: Interrupt performance X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Jan 2011 17:42:46 -0000 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: port 0x4000-0x40ff mem 0xf0100000-0xf01000ff irq 19 at device 4.0 on pci11 >>>> re0: Chip rev. 0x18000000 >>>> re0: MAC rev. 0x00000000 >>>> miibus0: on re0 >>>> rgephy0: 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 >>>> Features2=0xe31d >>>> AMD Features=0x20100800 >>>> AMD Features2=0x1 >>>> 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-unsubscribe@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-unsubscribe@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-unsubscribe@freebsd.org" >