From: jamal <hadi@cyberus.ca>
To: David Miller <davem@davemloft.net>
Cc: jeff@garzik.org, peter.p.waskiewicz.jr@intel.com,
krkumar2@in.ibm.com, johnpol@2ka.mipt.ru,
herbert@gondor.apana.org.au, kaber@trash.net,
shemminger@linux-foundation.org, jagana@us.ibm.com,
Robert.Olsson@data.slu.se, rick.jones2@hp.com, xma@us.ibm.com,
gaagaan@gmail.com, netdev@vger.kernel.org, rdreier@cisco.com,
mingo@elte.hu, mchan@broadcom.com, general@lists.openfabrics.org,
kumarkr@linux.ibm.com, tgraf@suug.ch, randy.dunlap@oracle.com,
sri@us.ibm.com, linux-kernel@vger.kernel.org
Subject: Re: parallel networking
Date: Mon, 08 Oct 2007 18:30:18 -0400 [thread overview]
Message-ID: <1191882618.4373.99.camel@localhost> (raw)
In-Reply-To: <20071008.141154.107706003.davem@davemloft.net>
On Mon, 2007-08-10 at 14:11 -0700, David Miller wrote:
> The problem is that the packet schedulers want global guarantees
> on packet ordering, not flow centric ones.
>
> That is the issue Jamal is concerned about.
indeed, thank you for giving it better wording.
> The more I think about it, the more inevitable it seems that we really
> might need multiple qdiscs, one for each TX queue, to pull this full
> parallelization off.
>
> But the semantics of that don't smell so nice either. If the user
> attaches a new qdisc to "ethN", does it go to all the TX queues, or
> what?
>
> All of the traffic shaping technology deals with the device as a unary
> object. It doesn't fit to multi-queue at all.
If you let only one CPU at a time access the "xmit path" you solve all
the reordering. If you want to be more fine grained you make the
serialization point as low as possible in the stack - perhaps in the
driver.
But I think even what we have today with only one cpu entering the
dequeue/scheduler region, _for starters_, is not bad actually ;-> What
i am finding (and i can tell you i have been trying hard;->) is that a
sufficiently fast cpu doesnt sit in the dequeue area for "too long" (and
batching reduces the time spent further). Very quickly there are no more
packets for it to dequeue from the qdisc or the driver is stoped and it
has to get out of there. If you dont have any interupt tied to a
specific cpu then you can have many cpus enter and leave that region all
the time.
cheers,
jamal
next prev parent reply other threads:[~2007-10-08 22:30 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1190674298.4264.24.camel@localhost>
[not found] ` <D5C1322C3E673F459512FB59E0DDC32903A51462@orsmsx414.amr.corp.intel.com>
[not found] ` <1190677099.4264.37.camel@localhost>
[not found] ` <20071007.215124.85709188.davem@davemloft.net>
[not found] ` <1191850490.4352.41.camel@localhost>
2007-10-08 14:22 ` parallel networking (was Re: [PATCH 1/4] [NET_SCHED] explict hold dev tx lock) Jeff Garzik
2007-10-08 15:18 ` jamal
2007-10-08 21:11 ` parallel networking David Miller
2007-10-08 22:30 ` jamal [this message]
2007-10-08 22:33 ` David Miller
2007-10-08 22:35 ` Waskiewicz Jr, Peter P
2007-10-08 23:42 ` jamal
2007-10-09 1:53 ` Jeff Garzik
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=1191882618.4373.99.camel@localhost \
--to=hadi@cyberus.ca \
--cc=Robert.Olsson@data.slu.se \
--cc=davem@davemloft.net \
--cc=gaagaan@gmail.com \
--cc=general@lists.openfabrics.org \
--cc=herbert@gondor.apana.org.au \
--cc=jagana@us.ibm.com \
--cc=jeff@garzik.org \
--cc=johnpol@2ka.mipt.ru \
--cc=kaber@trash.net \
--cc=krkumar2@in.ibm.com \
--cc=kumarkr@linux.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mchan@broadcom.com \
--cc=mingo@elte.hu \
--cc=netdev@vger.kernel.org \
--cc=peter.p.waskiewicz.jr@intel.com \
--cc=randy.dunlap@oracle.com \
--cc=rdreier@cisco.com \
--cc=rick.jones2@hp.com \
--cc=shemminger@linux-foundation.org \
--cc=sri@us.ibm.com \
--cc=tgraf@suug.ch \
--cc=xma@us.ibm.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