Date: Tue, 28 Apr 2009 11:04:52 +0200 From: Paolo Pisati <p.pisati@oltrelinux.com> To: fabient@freebsd.org Cc: barney_cordoba@yahoo.com, Ed Maste <emaste@freebsd.org>, freebsd-net@freebsd.org Subject: Re: Interrupts + Polling mode (similar to Linux's NAPI) Message-ID: <49F6C6B4.4080108@oltrelinux.com> In-Reply-To: <F14F044E-B39E-476B-A9DE-0EDB4D5265BE@netasq.com> References: <160513.83122.qm@web63904.mail.re1.yahoo.com> <F14F044E-B39E-476B-A9DE-0EDB4D5265BE@netasq.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Fabien Thomas wrote: > > To share my results: > > I have done at work modification to the polling code to do SMP polling > (previously posted to this ml). > > SMP polling (dynamic group of interface binded to CPU) does not > significantly improve the throughput (lock contention seems to be the > cause here). > The main advantage of polling with modern interface is not the PPS > (which is nearly the same) but the global efficiency of the system > when using multiple interfaces (which is the case for Firewall). > The best configuration we have found with FreeBSD 6.3 is to do polling > on one CPU and keep the other CPU free for other processing. In this > configuration the whole system > is more efficient than with interrupt where all the CPU are busy > processing interrupt thread. out of curiosity: did you try polling on 4.x? i know it doesn't "support" SMP over there, but last time i tried polling on 7.x (or was it 6.x? i don't remember...) i found it didn't gave any benefit, while switching the system to 4.x showed a huge improvement. -- bye, P.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49F6C6B4.4080108>