Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jul 2006 22:38:56 -0400
From:      Ed Maste <emaste@phaedrus.sandvine.ca>
To:        Marcelo Gardini do Amaral <marcelo@registro.br>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: How to setup polling on 'bge' interface
Message-ID:  <20060720023856.GA65960@sandvine.com>
In-Reply-To: <20060711190908.GC69272@registro.br>
References:  <20060711190908.GC69272@registro.br>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jul 11, 2006 at 04:09:08PM -0300, Marcelo Gardini do Amaral wrote:

> Hi,
> 
> I'm trying to setup polling in my box. [...]
> But I always get some packet loss. 

A few points:

- Polling and SMP are compatible in 6.1.  In fact, they were compatible
  in earlier versions too; basically it's just the compile-time check
  that had to be "fixed."

- 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.

- 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.

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

What level of traffic are you putting through this box?  Is it routing/
bridging, or an endpoint like a web server?

Ed Maste



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060720023856.GA65960>