Subject: Re: RFC: possible NAPI improvements to reduce interrupt rates for low traffic rates

From: Stephen Hemminger <[email-masked]>
Date: Wed, 12 Sep 2007 16:02:39 +0200

On Wed, 12 Sep 2007 14:50:01 +0100
James Chapman <[email-masked]> wrote:

> jamal wrote:
> > On Wed, 2007-12-09 at 03:04 -0400, Bill Fink wrote:
> >> On Fri, 07 Sep 2007, jamal wrote:
> > 
> >>> I am going to be the devil's advocate[1]:
> >> So let me be the angel's advocate.  :-)
> > 
> > I think this would make you God's advocate ;->
> > (http://en.wikipedia.org/wiki/God%27s_advocate)
> > 
> >> I view his results much more favorably.  
> > 
> > The challenge is, under _low traffic_: bad bad CPU use.
> > Thats what is at stake, correct?
> 
> By low traffic, I assume you mean a rate at which the NAPI driver 
> doesn't stay in polled mode. The problem is that that rate is getting 
> higher all the time, as interface and CPU speeds increase. This results 
> in too many interrupts and NAPI thrashing in/out of polled mode very 
> quickly.

But if you compare this to non-NAPI driver the same softirq
overhead happens. The problem is that for many older devices disabling IRQ's
require an expensive non-cached PCI access. Smarter, newer devices
all use MSI which is pure edge triggered and with proper register
usage, NAPI should be no worse than non-NAPI.