Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Apr 2009 10:09:57 +0200
From:      Fabien Thomas <fabien.thomas@netasq.com>
To:        barney_cordoba@yahoo.com
Cc:        freebsd-net@freebsd.org, Ed Maste <emaste@freebsd.org>
Subject:   Re: Interrupts + Polling mode (similar to Linux's NAPI)
Message-ID:  <F14F044E-B39E-476B-A9DE-0EDB4D5265BE@netasq.com>
In-Reply-To: <160513.83122.qm@web63904.mail.re1.yahoo.com>
References:  <160513.83122.qm@web63904.mail.re1.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail-148-605993175
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed;
	delsp=yes
Content-Transfer-Encoding: 7bit


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.

Regards,
Fabien


--Apple-Mail-148-605993175--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F14F044E-B39E-476B-A9DE-0EDB4D5265BE>