netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "David S. Miller" <davem@davemloft.net>
To: hadi@cyberus.ca
Cc: mitch.a.williams@intel.com, john.ronciak@intel.com,
	jdmason@us.ibm.com, shemminger@osdl.org, netdev@oss.sgi.com,
	Robert.Olsson@data.slu.se, ganesh.venkatesan@intel.com,
	jesse.brandeburg@intel.com
Subject: Re: RFC: NAPI packet weighting patch
Date: Fri, 03 Jun 2005 12:01:26 -0700 (PDT)	[thread overview]
Message-ID: <20050603.120126.41874584.davem@davemloft.net> (raw)
In-Reply-To: <1117824150.6071.34.camel@localhost.localdomain>

From: jamal <hadi@cyberus.ca>
Date: Fri, 03 Jun 2005 14:42:30 -0400

> When you reduce the weight, the system is spending less time in the
> softirq processing packets before softirq yields. If this gives more
> opportunity to your app to run, then the performance will go up.
> Is this what you are seeing? 

Jamal, this is my current theory as well, we hit the jiffies
check.

It it the only logical explanation I can come up with for the
single adapter case.

There are some ways we can mitigate this.  Here is one idea
off the top of my head.

When the jiffies check is hit, lower the weight of the most recently
polled device towards some minimum (perhaps divide by two).  If we
successfully poll without hitting the jiffies check, make a small
increment of the weight up to some limit.

It is Van Jacobson TCP congestion avoidance applied to NAPI :-)

Just a simple AIMD (Additive Increase, Multiplicative Decrease).
So, hitting the jiffies work limit is congestion, and the cause
of the congestion is the most recently polled device.

In this regime, what the driver currently specifies as "->weight"
is actually the maximum we'll use in the congestion control
algorithm.  And we can choose some constant minimum, something
like "8" ought to work well.

Comments?

  reply	other threads:[~2005-06-03 19:01 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-03  0:11 RFC: NAPI packet weighting patch Ronciak, John
2005-06-03  0:18 ` David S. Miller
2005-06-03  2:32   ` jamal
2005-06-03 17:43     ` Mitch Williams
2005-06-03 18:38       ` David S. Miller
2005-06-03 18:42       ` jamal
2005-06-03 19:01         ` David S. Miller [this message]
2005-06-03 19:28           ` Mitch Williams
2005-06-03 19:59             ` jamal
2005-06-03 20:31               ` David S. Miller
2005-06-03 21:12                 ` Jon Mason
2005-06-03 20:22             ` David S. Miller
2005-06-03 20:29               ` David S. Miller
2005-06-03 19:49                 ` Michael Chan
2005-06-03 20:59                   ` Lennert Buytenhek
2005-06-03 20:35                     ` Michael Chan
2005-06-03 22:29                       ` jamal
2005-06-04  0:25                         ` Michael Chan
2005-06-05 21:36                           ` David S. Miller
2005-06-06  6:43                             ` David S. Miller
2005-06-03 23:26                       ` Lennert Buytenhek
2005-06-05 20:11                       ` David S. Miller
2005-06-03 21:07                     ` Edgar E Iglesias
2005-06-03 23:30                       ` Lennert Buytenhek
2005-06-03 20:30             ` Ben Greear
2005-06-03 19:40           ` jamal
2005-06-03 20:23             ` jamal
2005-06-03 20:28               ` Mitch Williams
  -- strict thread matches above, loose matches on Subject: below --
2005-06-07 16:23 Ronciak, John
2005-06-07 20:21 ` David S. Miller
2005-06-08  2:20   ` Jesse Brandeburg
2005-06-08  3:31     ` David S. Miller
2005-06-08  3:43     ` David S. Miller
2005-06-08 13:36       ` jamal
2005-06-09 21:37         ` Jesse Brandeburg
2005-06-09 22:05           ` Stephen Hemminger
2005-06-09 22:12             ` Jesse Brandeburg
2005-06-09 22:21               ` David S. Miller
2005-06-09 22:21               ` jamal
2005-06-09 22:22             ` David S. Miller
2005-06-09 22:20           ` jamal
2005-06-06 20:29 Ronciak, John
2005-06-06 23:55 ` Mitch Williams
2005-06-07  0:08   ` Ben Greear
2005-06-08  1:50     ` Jesse Brandeburg
2005-06-07  4:53   ` Stephen Hemminger
2005-06-07 12:38     ` jamal
2005-06-07 12:06       ` Martin Josefsson
2005-06-07 13:29         ` jamal
2005-06-07 12:36           ` Martin Josefsson
2005-06-07 16:34             ` Robert Olsson
2005-06-07 23:19               ` Rick Jones
2005-06-21 20:37         ` David S. Miller
2005-06-22  7:27           ` Eric Dumazet
2005-06-22  8:42           ` P
2005-06-22 19:37             ` jamal
2005-06-23  8:56               ` P
2005-06-21 20:20     ` David S. Miller
2005-06-21 20:38       ` Rick Jones
2005-06-21 20:55         ` David S. Miller
2005-06-21 21:47         ` Andi Kleen
2005-06-21 22:22           ` Donald Becker
2005-06-21 22:34             ` Andi Kleen
2005-06-22  0:08               ` Donald Becker
2005-06-22  4:44                 ` Chris Friesen
2005-06-22 11:31                   ` Andi Kleen
2005-06-22 16:23                 ` Leonid Grossman
2005-06-22 16:37                   ` jamal
2005-06-22 18:00                     ` Leonid Grossman
2005-06-22 18:06                       ` Andi Kleen
2005-06-22 20:22                         ` David S. Miller
2005-06-22 20:35                           ` Rick Jones
2005-06-22 20:43                             ` David S. Miller
2005-06-22 21:10                           ` Andi Kleen
2005-06-22 21:16                             ` David S. Miller
2005-06-22 21:53                             ` Chris Friesen
2005-06-22 22:11                               ` Andi Kleen
2005-06-22 21:38                           ` Eric Dumazet
2005-06-22 22:13                             ` Eric Dumazet
2005-06-22 22:30                               ` David S. Miller
2005-06-22 22:23                             ` David S. Miller
2005-06-23 12:14                               ` jamal
2005-06-23 17:36                                 ` David Mosberger
2005-06-22 22:42                           ` Leonid Grossman
2005-06-22 23:13                             ` Andi Kleen
2005-06-22 23:19                               ` David S. Miller
2005-06-22 23:23                                 ` Andi Kleen
2005-06-22 17:05                   ` Andi Kleen
2005-06-06 15:35 Ronciak, John
2005-06-06 19:47 ` David S. Miller
2005-06-03 18:19 Ronciak, John
2005-06-03 18:33 ` Ben Greear
2005-06-03 18:49   ` David S. Miller
2005-06-03 18:59     ` Ben Greear
2005-06-03 19:02       ` David S. Miller
2005-06-03 20:17 ` Robert Olsson
2005-06-03 20:30   ` David S. Miller
2005-06-03 17:40 Ronciak, John
2005-06-03 18:08 ` Robert Olsson
2005-06-02 21:19 Ronciak, John
2005-06-02 21:31 ` Stephen Hemminger
2005-06-02 21:40   ` David S. Miller
2005-06-02 21:51   ` Jon Mason
2005-06-02 22:12     ` David S. Miller
2005-06-02 22:19       ` Jon Mason
2005-06-02 22:15     ` Robert Olsson
2005-05-26 21:36 Mitch Williams
2005-05-27  8:21 ` Robert Olsson
2005-05-27 11:18 ` jamal
2005-05-27 15:50 ` Stephen Hemminger
2005-05-27 20:27   ` Mitch Williams
2005-05-27 21:01     ` Stephen Hemminger
2005-05-28  0:56       ` jamal
2005-05-31 17:35         ` Mitch Williams
2005-05-31 17:40           ` Stephen Hemminger
2005-05-31 17:43             ` Mitch Williams
2005-05-31 22:07           ` Jon Mason
2005-05-31 22:14             ` David S. Miller
2005-05-31 23:28               ` Jon Mason
2005-06-02 12:26                 ` jamal
2005-06-02 17:30                   ` Stephen Hemminger

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=20050603.120126.41874584.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=Robert.Olsson@data.slu.se \
    --cc=ganesh.venkatesan@intel.com \
    --cc=hadi@cyberus.ca \
    --cc=jdmason@us.ibm.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=john.ronciak@intel.com \
    --cc=mitch.a.williams@intel.com \
    --cc=netdev@oss.sgi.com \
    --cc=shemminger@osdl.org \
    /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).