device polling takes more CPU hits??

Luigi Rizzo rizzo at icir.org
Tue Jul 27 07:39:33 PDT 2004


On Tue, Jul 27, 2004 at 01:36:34PM +0200, Marko Zec wrote:
> James,
> 
> what timecounter method are you using, i8254 or TSC? The polling code 
> frequently calls microuptime(), which is very expensive (slow) with i8254, 

it is not _that_ frequently, it should be twice per tick. Even with
the 8254 i don't think this amounts to more than 4-5us, which
is a couple of percent.

cheers
luigi

> while being reasonable fast with TSC. Since you are running with quite high 
> system clock (4 kHz), using i8254 could be causing the problems you've 
> described.
> 
> Cheers,
> 
> Marko
> 
> 
> 
> On Monday 26 July 2004 22:27, Don Bowman wrote:
> > From: James [mailto:haesu at towardex.com]
> >
> > > I have two boxes behind em0 that I can use to generate
> > > 250kpps to another vlan
> > > within em0 card as a test, so that bge0 is not involved in
> > > the stress test.
> > > Even when doing so, CPU load climbs higher with device
> > > polling turned on.
> > > Opened up systat, etc to check the interrupts, and em0 is
> > > generating 0
> > > interrupts with device polling on (as obvious), but general
> > > interrupt load
> > > climbs rock high.. so I don't know what's causing it to
> > > climb. Cleared the
> > > firewall rules as well as a test... no difference :(
> > >
> > > Oh also, just FYI, each vlan interface has link0 set, since
> > > em(4) supports
> > > hardware 802.1q tag/detagging.
> >
> > The CPU time during the 'polling' is charged to interrupt,
> > even though it occurs during softclock. That's why you
> > see 0 interrupts, but high CPU usage in interrupt.
> > Did u try lowering the 'register' access?
> >
> > --don
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"


More information about the freebsd-net mailing list