How to setup polling on 'bge' interface

Peter Jeremy peterjeremy at
Thu Jul 20 11:26:18 UTC 2006

On Wed, 2006-Jul-19 22:38:56 -0400, Ed Maste wrote:
>- You may have to adjust some parameters in the kern.polling sysctl
>  tree - specifically, kern.polling.burst_max, kern.polling.each_burst
>  and kern.polling.user_frac might need tweaking.

Note that increasing kern.polling.burst_max and kern.polling.each_burst
will also increase the number of soft interrupts.

>- The polling feedback algorithm does not work very well if your
>  workload is focused largely on per-packet tasks (such as routing or
>  bridging).  You'll find that there is still idle CPU time at the
>  point you start dropping packets.  I have some work in progress to
>  address this, but it's not yet committed.

I thought setting kern.polling.idle_poll would allow the CPU to
utilise all idle time.  The downside is that the system always shows
as 100% utilised so it's very difficult to know how busy the system
actually is.

>- Polling's major advantage is the avoidance of livelock on UP systems,
>  and not improved performance.

The limited testing I've done on a Sun V20z at work suggests that you
can get better routing throughput in interrupt mode than polling mode.
YMMV and this is before tweaking the polling parameters.  (My testing
also suggests that I don't really need to do any tweaking because
the limiting factor is the gigabit interfaces rather than the V20z).

Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url :

More information about the freebsd-stable mailing list