From: "Martin J. Bligh" <mbligh@aracnet.com>
To: "Nakajima, Jun" <jun.nakajima@intel.com>,
Arjan van de Ven <arjanv@redhat.com>
Cc: Jeff Garzik <jgarzik@pobox.com>, Andrew Morton <akpm@osdl.org>,
Anton Blanchard <anton@samba.org>,
linux-kernel@vger.kernel.org
Subject: RE: CONFIG_IRQBALANCE for AMD64?
Date: Fri, 28 May 2004 11:33:32 -0700 [thread overview]
Message-ID: <2750000.1085769212@flay> (raw)
In-Reply-To: <7F740D512C7C1046AB53446D372001730182BB40@scsmsx402.amr.corp.intel.com>
>> On Fri, May 28, 2004 at 10:46:18AM -0700, Martin J. Bligh wrote:
>>>
>>> Personally, I find the argument that it's hardware-specific control
> code
>>> a much better reason for it to belong in the kernel.
>>
>> Is it really hardware specific ??
>
> I think automatic IRQ binding business should belong to the user-level;
> it can use generic statistics, application, or platform configuration
> knowledge.
>
> The kernel-level should have some simple chipset model, such as lowest
> priority delivery mode with finer granularity of control. The kirqd at
> this point, is doing automatic IRQ binding business as well today,
> although it does not literally bind them. So I think we need to remove
> that part of code from kirqd.
My personal feeling is that we can't get to happen from userspace what
really needs to happen .... but we're going about this ass-backwards.
Instead of starting with a solution, and seeing what we can wedge into
it ... what do we actually want to do?
Here's my start at a list ... I'm sure it's woefully incomplete.
1. Utilize all CPUs roughly evenly for IRQ processing load (anything that's
not measured by the scheduler at least, because it's unfair to other
processes). Also, we may well have more than 1 CPU's worth of traffic to
process in a large network server.
2. Provide some sort of cache-affinity for network interrupt processing,
which also helps us not get into out-of-order packet situations.
3. Utilize idle CPUs where possible to shoulder the load.
4. Provide such a solution for all architectures.
What else? I think we started doing this because of (1 & 2) mainline,
especially as the P4 is moronically stupid by default but I know Dave
Olien looked at 3 as well at some point past.
ISTR one of the objections to the in-kernel stuff was that the way it
calculated costs was to look only at the in_interrupt() part of the
processing ... does the backend stuff get accounted currently to the
poor sucker who is currently running, in the same was as the interrupt?
Whatever we do ... all arches are going to need to provide a way to direct
interrupts to a certain CPU, or group thereof. Can they all do that already?
I'll confess to not having looked at non-i386 arches. And are others as
brain damaged as the P4? or do they do something round-robin by default?
M.
next prev parent reply other threads:[~2004-05-28 18:34 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-28 18:20 CONFIG_IRQBALANCE for AMD64? Nakajima, Jun
2004-05-28 18:33 ` Martin J. Bligh [this message]
2004-05-28 18:44 ` Arjan van de Ven
2004-05-28 18:57 ` Martin J. Bligh
2004-05-28 19:01 ` Arjan van de Ven
2004-05-29 8:38 ` michael
2004-05-29 8:41 ` michael
2004-05-29 8:45 ` Arjan van de Ven
-- strict thread matches above, loose matches on Subject: below --
2004-05-28 23:37 Nakajima, Jun
2004-05-28 22:05 Nakajima, Jun
2004-05-28 22:54 ` Andi Kleen
2004-05-29 1:27 ` Nick Piggin
2004-05-29 10:06 ` Andi Kleen
2004-05-29 10:10 ` Nick Piggin
2004-05-29 11:18 ` Andi Kleen
[not found] <20Uhn-7bP-11@gated-at.bofh.it>
[not found] ` <20UqZ-7i7-5@gated-at.bofh.it>
2004-05-28 21:45 ` Andi Kleen
2004-05-28 17:09 Nakajima, Jun
2004-05-28 17:40 ` Jeff Garzik
2004-05-28 17:45 ` Arjan van de Ven
2004-05-28 17:46 ` Martin J. Bligh
2004-05-28 17:57 ` Arjan van de Ven
2004-05-28 19:51 ` Nivedita Singhvi
2004-05-28 19:58 ` Jeff Garzik
2004-05-28 20:14 ` Nivedita Singhvi
2004-05-28 21:45 ` Jeff Garzik
2004-05-28 20:03 ` Arjan van de Ven
2004-05-27 3:48 Thomas Zehetbauer
2004-05-27 5:13 ` Jeff Garzik
2004-05-27 16:36 ` Thomas Zehetbauer
2004-05-27 16:50 ` Arjan van de Ven
2004-05-27 21:37 ` Chris Wedgwood
2004-05-27 17:03 ` Anton Blanchard
2004-05-27 22:36 ` Thomas Zehetbauer
2004-05-28 5:57 ` Arjan van de Ven
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=2750000.1085769212@flay \
--to=mbligh@aracnet.com \
--cc=akpm@osdl.org \
--cc=anton@samba.org \
--cc=arjanv@redhat.com \
--cc=jgarzik@pobox.com \
--cc=jun.nakajima@intel.com \
--cc=linux-kernel@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