From: Rick Jones <rick.jones2@hp.com>
To: hadi@cyberus.ca
Cc: Robert Iakobashvili <coroberti@gmail.com>,
Arjan van de Ven <arjan@infradead.org>,
netdev@vger.kernel.org
Subject: Re: Network card IRQ balancing with Intel 5000 series chipsets
Date: Tue, 02 Jan 2007 09:56:53 -0800 [thread overview]
Message-ID: <459A9CE5.8020403@hp.com> (raw)
In-Reply-To: <1167171089.3746.23.camel@localhost>
> The best way to achieve such balancing is to have the network card help
> and essentially be able to select the CPU to notify while at the same
> time considering:
> a) avoiding any packet reordering - which restricts a flow to be
> processed to a single CPU at least within a timeframe
> b) be per-CPU-load-aware - which means to busy out only CPUs which are
> less utilized
>
> Various such schemes have been discussed here but no vendor is making
> such nics today (search Daves Blog - he did discuss this at one point or
> other).
I thought that Neterion were doing something along those lines with
their Xframe II NICs - perhaps not CPU loading aware, but doing stuff to
spread the work of different connections across the CPUs.
I would add a:
c) some knowledge of the CPU on which the thread accessing the socket
for that "connection" will run. This could be as simple as the CPU on
which the socket was last accessed. Having a _NIC_ know this sort of
thing is somewhat difficult and expensive (perhaps too much so). If a
NIC simply hashes the connection idendifiers you then have the issue of
different connections, each "owned/accessed" by one thread, taking
different paths through the system. No issues about reordering, but
perhaps some on cache lines going hither and yon.
The question boils down to - Should the application (via the scheduler)
dictate where its connections are processed, or should the connections
dictate where the application runs?
rick jones
next prev parent reply other threads:[~2007-01-02 17:57 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-24 9:34 Network card IRQ balancing with Intel 5000 series chipsets Robert Iakobashvili
2006-12-25 9:35 ` Arjan van de Ven
2006-12-25 11:26 ` Robert Iakobashvili
2006-12-25 11:34 ` Arjan van de Ven
2006-12-25 12:54 ` Robert Iakobashvili
2006-12-26 18:44 ` jamal
2006-12-26 19:51 ` Robert Iakobashvili
2006-12-26 22:11 ` jamal
2007-01-02 17:56 ` Rick Jones [this message]
2006-12-26 22:06 ` Arjan van de Ven
2006-12-26 22:46 ` jamal
2006-12-27 0:28 ` Arjan van de Ven
2006-12-27 3:47 ` jamal
2006-12-27 7:09 ` Robert Iakobashvili
2006-12-27 14:31 ` jamal
2006-12-29 2:04 ` Krzysztof Oledzki
2006-12-29 17:36 ` Robert Iakobashvili
2006-12-27 13:08 ` Arjan van de Ven
2006-12-27 14:44 ` jamal
2006-12-27 15:06 ` Arjan van de Ven
2007-01-02 17:57 ` Rick Jones
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=459A9CE5.8020403@hp.com \
--to=rick.jones2@hp.com \
--cc=arjan@infradead.org \
--cc=coroberti@gmail.com \
--cc=hadi@cyberus.ca \
--cc=netdev@vger.kernel.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).