igb(4) Raising IGB_MAX_TXD ??
Sean Bruno
seanbru at yahoo-inc.com
Wed Apr 18 16:49:53 UTC 2012
ok, good. that at least confirms that I correctly translated between
the driver code and documented specification.
I will try 8k as a test for now and see how that runs.
sean
On Wed, 2012-04-18 at 09:46 -0700, Jack Vogel wrote:
> The MAX value is something I set, not a hardware thing, it was based
> on reports
> I had from the various driver engineers in our org. If you increase
> the ring size
> you might run into other performance issues, however there's nothing
> stopping
> you from trying. Just be aware that its not something that's been
> tested.
>
> Let me know how it goes please :)
>
> Jack
>
>
> On Wed, Apr 18, 2012 at 9:27 AM, Sean Bruno <seanbru at yahoo-inc.com>
> wrote:
> On Wed, 2012-04-18 at 00:28 -0700, Luigi Rizzo wrote:
> > On Tue, Apr 17, 2012 at 04:24:24PM -0700, Sean Bruno wrote:
> > > We're running a service with a 82576 configured with 4
> queues and a
> > > maxed rxd/txd configuration:
> > >
> > > http://people.freebsd.org/~sbruno/igb_stats.txt
> >
> > these stats show that over half of your incoming traffic is
> > made of small packets (65..127 bytes) but especially, that
> > the "missed packets" count is very small (18k out of 40G
> packets)
> > none of them is reported as "no_desc_avail", and only 76 are
> > "recv_no_buffer".
> >
> > Are you dropping packets in the ip interrupt handler by
> chance ?
> > what are your settings there ?
> >
>
> nope, doesn't look like it.
>
> http://people.freebsd.org/~sbruno/igb_ip_stats.txt
>
> > BTW it seems that there is only one global setting for the
> dispatch
> > policy, but for instance there are two netisr_dispatch()
> calls
> > in the incoming path, one for layer2 and one for layer3.
> > The former has relatively little work to do and so it might
> > make sense to have direct dispatch, the other can be
> expensive
> > so i wonder if it wouldn't be better to use deferred
> dispatch.
> > If not, perhaps you might try to reduce the
> rx_processing_limit
> > to bring down the load on the intr thread.
>
>
> I don't really see any issue with horsepower on this host at
> the moment
> with 4 queues. I mean it looks a little something like this
> under high
> load:
>
> http://people.freebsd.org/~sbruno/igb_top.txt
>
> I guess my question still stands though, since the ethernet
> controller
> is reporting that it doesn't have any more descriptors
> available is the
> hardcoded 4k max descriptors a limit that an be raised?
>
> > With your numbers i doubt that raising the queue size helps.
>
>
> Indeed, you're probably right and this is more than likely an
> application problem that will have to be resolved. However,
> I'm still
> curious if the MAX_RXD/TXD is really 4k or if the
> documentation is
> correct and we can raise it to 32k for testing?
>
> Sean
>
More information about the freebsd-net
mailing list