Interrupts + Polling mode (similar to Linux's NAPI)

Julian Elischer julian at
Tue Apr 28 16:52:34 UTC 2009

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.

so it would (might) be worth while working out a framework
by which this could be achieved.

> Regards,
> Fabien

More information about the freebsd-net mailing list