Date: Fri, 28 Jan 2011 19:44:57 +0200 From: Stefan Lambrev <stefan.lambrev@moneybookers.com> To: Slawa Olhovchenkov <slw@zxy.spb.ru> Cc: freebsd-performance@freebsd.org, Julian Elischer <julian@freebsd.org> Subject: Re: Interrupt performance Message-ID: <E8E33338-7A76-407C-9D84-4184458FB538@moneybookers.com> In-Reply-To: <20110128172516.GG18170@zxy.spb.ru> References: <20110128143355.GD18170@zxy.spb.ru> <22E77EED-6455-4164-9115-BBD359EC8CA6@moneybookers.com> <20110128161035.GF18170@zxy.spb.ru> <CDBFAB7F-1EBC-4B3A-B2F5-6162DD58A93D@moneybookers.com> <4D42F87C.7020909@freebsd.org> <20110128172516.GG18170@zxy.spb.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, On Jan 28, 2011, at 7:25 PM, Slawa Olhovchenkov wrote: > On Fri, Jan 28, 2011 at 09:10:20AM -0800, Julian Elischer wrote: >=20 >> 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. >>=20 >>=20 >> He wants to know why the freeBSD driver spends 8 x as much time on=20 >> each interrupt. >=20 > Yes! >=20 >> there are of course several possible answers, including: >>=20 >> 1/ Sometimes BSD and Linux report things differently. Linux may or = may not >> account for the lowest level interrupt tie the same as BSD >=20 > But I see only 20% idle on FreeBSD and 80% idle on Linux. >=20 >> 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. >>=20 >> or maybe combinations... >>=20 >> there are profiling tools that you may decide to run. >=20 > What tools I can use on amd64? Look at this document - = http://software.intel.com/sites/oss/pdfs/profiling_debugging_freebsd_kerne= l_321772.pdf It contains brief information for all useful profiling tools, or just = google for "freebsd kernel profiling" I'm not sure what the situation with RealTek driver, but in the past = when I have done profiling, I saw that much of the CPU time was spent on expensive (for FreeBSD) calls, which where = very cheap in linux. >=20 > I boot kernel configured with 'config -p'. > Most time in spinlock_exit and acpi_cpu_c1. >=20 -- Best Wishes, Stefan Lambrev ICQ# 24134177
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E8E33338-7A76-407C-9D84-4184458FB538>