Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Jul 2004 19:57:49 -0700 (PDT)
From:      Kelly Yancey <kbyanc@posi.net>
To:        Luigi Rizzo <rizzo@icir.org>
Cc:        'James' <haesu@towardex.com>
Subject:   Re: device polling takes more CPU hits??
Message-ID:  <20040726195434.V76990@gateway.posi.net>
In-Reply-To: <20040726132618.A37401@xorpc.icir.org>
References:  <FE045D4D9F7AED4CBFF1B3B813C85337051D9435@mail.sandvine.com> <20040726132618.A37401@xorpc.icir.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 26 Jul 2004, Luigi Rizzo wrote:

> On Mon, Jul 26, 2004 at 01:18:46PM -0700, Kelly Yancey wrote:
> ...
> >   Out of curiousity, what sort of testing did you do to arrive at these
> > settings?  I did some testing a while back with a SmartBits box pumping
> > packets through a FreeBSD 2.8Ghz box configured to route between two em
> > gigabit interfaces; I found that changing the burst_max and each_burst
> > parameters had almost no effect on throughput (maximum 1% difference).
>
> fast boxes are pci-bus limited, not CPU limited(*) so changing the burst
> size (which basically amortizes some CPU costs) has little if any
> effect.
>
> (*) this doesn't mean that the box cannot livelock, as depending on
> the traffic on the bus, the CPU might stall for long intervals
> waiting for bus transactions to complete, and becomes unable to
> do anything at all. So you might still need polling.
>
> 	cheers
> 	luigi
>

  Oh, I found polling to be vastly superior to interrupts under load on
the test machine.  Not only did it avoid livelock, the throughput was
about 10Mbps higher for small (64-byte) frames.  I just didn't find much
difference whether I used small burst sizes versus large burst sizes.  It
may have had to do with the fact that both the sending and receiving
interfaces were gigabit em cards and were polling (no interrupts from the
NICs at all).

  Kelly

--
Kelly Yancey  -  kbyanc@{posi.net,FreeBSD.org}  -  kelly@nttmcl.com
Join distributed.net Team FreeBSD: http://www.posi.net/freebsd/Team-FreeBSD/



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