bge interrupt coalescing sysctls
Igor Sysoev
is at rambler-co.ru
Thu Jun 18 14:24:15 UTC 2009
On Thu, Jun 11, 2009 at 11:54:29AM +1000, Bruce Evans wrote:
> On Wed, 10 Jun 2009, Igor Sysoev wrote:
>
> >For a long time I used Bruce Evans' patch to tune bge interrupt coalescing:
> >http://lists.freebsd.org/pipermail/freebsd-net/2007-November/015956.html
> >However, recent commit SVN r192478 in 7-STABLE (r192127 in HEAD) had broken
> >the patch. I'm not sure how to fix the collision, and since I do not
> >use dynamic tuning
>
> That commit looked ugly (lots of internal API changes and bloat in interrupt
> handlers in many network drivers to support polling which mostly shouldn't
> be supported at all and mostly doesn't use the interrupt handlers).
>
> >I has left only static coalescing parameters in the patch
> >and has added a loader tunable to set number of receive descriptors and
> >read only sysctl to read the tunable. I usually use these parameters:
> >
> >/boot/loader.conf:
> >hw.bge.rxd=512
> >
> >/etc/sysctl.conf:
> >dev.bge.0.rx_coal_ticks=500
> >dev.bge.0.tx_coal_ticks=10000
> >dev.bge.0.rx_max_coal_bds=64
>
> These rx settings give to high a latency for me.
Probably, however, I use this on a host that has 6000 packets/s.
> >dev.bge.0.tx_max_coal_bds=128
> ># apply the above parameters
> >dev.bge.0.program_coal=1
> >
> >Could anyone commit it ?
>
> Not me, sorry.
>
> The patch is quite clean. If I committed then I would commit the
> dynamic coalescing configuration separately anyway.
So have you any objections if some one else will commit this patch ?
> You can probably make hw.bge.rxd a sysctl too (it would take a down/up
> to get it changed, but that is already needed for too many parameters
> in network drivers anyway). I should use a sysctl for the ifq length
> too. This could be done at a high level for each driver. Limiting
> queue lengths may be a good way to reduce cache misses, while increasing
> them is sometimes good for reducing packet loss.
Do you mean simple command sequence:
sysctl hw.bge.rxd=512
ifconfig down
ifconfig up
or SYSCTL_ADD_PROC for hw.bge.rxd ?
--
Igor Sysoev
http://sysoev.ru/en/
More information about the freebsd-net
mailing list