Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Jan 2004 10:50:57 -0800
From:      Luigi Rizzo <rizzo@icir.org>
To:        Steve Francis <steve@expertcity.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: Device polling, kern.polling.burst_max and gig-e
Message-ID:  <20040130105057.A8098@xorpc.icir.org>
In-Reply-To: <401AA66E.3090708@expertcity.com>; from steve@expertcity.com on Fri, Jan 30, 2004 at 10:46:06AM -0800
References:  <401AA3A0.7080208@expertcity.com> <20040130103855.A7798@xorpc.icir.org> <401AA66E.3090708@expertcity.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jan 30, 2004 at 10:46:06AM -0800, Steve Francis wrote:
...
> No tuning of
> 
> kern.polling.each_burst recommended?

on a fast box maybe you can bring it up to 10-15, not clear that
it will give a lot of performance gain, though.

	cheers
	luigi

> 
> >If you are having a lot of load, it is natural that you are
> >going to get losses, the 2sec period is probably how often the
> >nic updates the stats.
> >
> >	cheers
> >	luigi
> >
> >On Fri, Jan 30, 2004 at 10:34:08AM -0800, Steve Francis wrote:
> >  
> >
> >>We have a 4.9-RELEASE-p1 box dedicated to some traffic analysis.   It 
> >>monitors on two em interfaces: about 200,000 pps on one interface, and 
> >>180,000 pps on the other.
> >>It's been dealing with that OK, but our traffic levels are increasing - 
> >>we reached over 240,000 pps on one interface last week. This made CPU 
> >>reach 100%, and some packets not get processed.
> >>So, last night we enabled polling on the nics.
> >>Initially, great result - CPU dropped from 82% load (45% system load due 
> >>to interupts) yesterday to 55% load today (12% in system), for same pps 
> >>load (about 300,000 pps total) at the time.
> >>
> >>However, input errors went from 0 to about 1200 (oddly, it was 1200 
> >>every other second, and 0 for the seconds in-between.)
> >>
> >>A bit of digging around led me to increase kern.polling.burst_max.
> >>According to http://info.iet.unipi.it/~luigi/polling/, "The default 
> >>value is enough for a 100Mbit ethernet".  I increased it gradually to 
> >>900, whcih has almost (but not entirely) eliminated the errors. Now the 
> >>errors are zero for most intervals, but every 10 or so intervals there 
> >>are between 10 and 100 input errors.
> >>
> >>So:
> >>- does it make sense to leave the default at 150, in this day of gigabit 
> >>nics?
> >>- is there a danger in increasing the burt_max?  (My burst size goes 
> >>straight to the max of 900.)
> >>- can it be increased more ?
> >>-  are there other variables that make sense to increase for gigabit? 
> >>(like kern.polling.each_burst:?)
> >>
> >>Since I increased the burst max, I now have slowly incrementing 
> >>kern.polling.lost_polls - about 1 every 2 seconds. Anything to worry about?
> >>
> >>Thanks
> >>Steve Francis
> >>
> >>
> >>
> >>
> >>_______________________________________________
> >>freebsd-net@freebsd.org mailing list
> >>http://lists.freebsd.org/mailman/listinfo/freebsd-net
> >>To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
> >>    
> >>
> 



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