netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Hemminger <shemminger@osdl.org>
To: "David S. Miller" <davem@davemloft.net>
Cc: gnb@sgi.com, hadi@cyberus.ca, ak@muc.de, akepner@sgi.com,
	jesse.brandeburg@intel.com, netdev@oss.sgi.com, davem@redhat.com
Subject: Re: NAPI, e100, and system performance problem
Date: Sat, 23 Apr 2005 12:51:53 +1000	[thread overview]
Message-ID: <20050423125153.65189ea0@localhost.localdomain> (raw)
In-Reply-To: <20050422164301.724343f6.davem@davemloft.net>

On Fri, 22 Apr 2005 16:43:01 -0700
"David S. Miller" <davem@davemloft.net> wrote:

> On Sat, 23 Apr 2005 09:40:38 +1000
> Stephen Hemminger <shemminger@osdl.org> wrote:
> 
> > My experience is that NAPI adds latency and that can cause worse performance.
> > I haven't seen a good analysis of the problem and/or simple tests to reproduce
> > the problem
> 
> Right, and it's cpu and bus speed dependant as to when you hit
> this bad case.  If your packet rate is perfectly such that
> only 1 or 2 packets get processed per interrupt then NAPI loses
> badly due to the extra PIO overhead entailed from enabling and
> disabling interrupts.
> 
> This is essential and well understood, and I personally don't need
> to see "numbers" to acknowledge this flaw.
> 
> I hope that minimal mitigation settings alleviate this problem for
> the most part.
> 
> When I moved tg3 over to NAPI, the happiest part of that was deleting
> the dynamic hw mitigation setting code the tg3 driver had.  If ever
> that kind of thing goes back into the drivers, it should be based
> upon a common feedback variable (something based upon dev->weight
> perhaps), not reimplemented N times, once in every driver.
> 
> With the dynamic schemes comes a new issue, how quickly to respond
> to changes in traffic patterns.

One of the problem with the dynamic schemes, is there is no generic infrastructure
to support it. There are some drivers that have tried dynamic schemes
but each seems to reinvent some adhoc scheme. Seems like a good area
for future research.

Another related problem is some drivers use NAPI for both TX and RX and
this can cause asymmetric behavior and scheduling issues. The whole
dev->weight limit stuff assumes RX not TX usage of NAPI

  reply	other threads:[~2005-04-23  2:51 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-18  6:11 NAPI, e100, and system performance problem Brandeburg, Jesse
2005-04-18 12:14 ` jamal
2005-04-18 15:36 ` Robert Olsson
2005-04-18 16:55 ` Arthur Kepner
2005-04-18 19:34   ` Robert Olsson
2005-04-18 20:26   ` jamal
2005-04-19  5:55     ` Greg Banks
2005-04-19 18:36       ` David S. Miller
2005-04-19 20:38         ` NAPI and CPU utilization [was: NAPI, e100, and system performance problem] Arthur Kepner
2005-04-19 20:52           ` Rick Jones
2005-04-19 21:09           ` David S. Miller
     [not found]         ` <20050420145629.GH19415@sgi.com>
2005-04-20 15:15           ` NAPI, e100, and system performance problem jamal
2005-04-22 11:36       ` Andi Kleen
2005-04-22 12:33         ` jamal
2005-04-22 17:21           ` Andi Kleen
2005-04-22 18:18             ` jamal
2005-04-22 18:30               ` Andi Kleen
2005-04-22 18:37                 ` Arthur Kepner
2005-04-22 18:52                   ` David S. Miller
     [not found]                     ` <Pine.LNX.4.61.0504241845070.2934@linux.site>
2005-04-25 11:25                       ` jamal
2005-04-25 18:51                         ` David S. Miller
2005-04-25 11:41                       ` jamal
2005-04-25 12:16                         ` Jamal Hadi Salim
2005-04-22 19:01                 ` jamal
2005-04-22 19:07                   ` David S. Miller
2005-04-22 19:21                     ` jamal
2005-04-23 20:50                       ` Robert Olsson
2005-04-23 16:56                 ` Robert Olsson
2005-04-22 23:28               ` Greg Banks
2005-04-22 23:40                 ` Stephen Hemminger
2005-04-22 23:43                   ` David S. Miller
2005-04-23  2:51                     ` Stephen Hemminger [this message]
2005-04-23 17:54                       ` Robert Olsson
2005-04-23  3:04                     ` jamal
2005-04-23 17:14                     ` Robert Olsson
2005-04-22 14:52         ` Robert Olsson
2005-04-22 15:37           ` jamal
2005-04-22 17:22             ` Andi Kleen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050423125153.65189ea0@localhost.localdomain \
    --to=shemminger@osdl.org \
    --cc=ak@muc.de \
    --cc=akepner@sgi.com \
    --cc=davem@davemloft.net \
    --cc=davem@redhat.com \
    --cc=gnb@sgi.com \
    --cc=hadi@cyberus.ca \
    --cc=jesse.brandeburg@intel.com \
    --cc=netdev@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).