linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: irq balancing; kernel vs. userspace
@ 2003-04-22 21:54 Bill Davidsen
  0 siblings, 0 replies; 7+ messages in thread
From: Bill Davidsen @ 2003-04-22 21:54 UTC (permalink / raw)
  To: Linux-Kernel Mailing List; +Cc: kpfleming, arjanv


---------- Forwarded message ----------
Subject: Re: irq balancing; kernel vs. userspace
From: "Kevin P. Fleming" <kpfleming@cox.net>
Date: Sun, 20 Apr 2003 11:37:00 -0700
To: linux-kernel@vger.kernel.org

Arjan van de Ven wrote:

> On Sun, 2003-04-20 at 15:23, Sean Neakums wrote:
> 
>>I thought I'd play with the userspace IRQ-balancer, but booting with
>>noirqbalance seems not to not balance.  Possibly I misunderstand how
>>this all fits together.
> 
> 
> this looks like you haven't started the userspace daemon (yet)

I thought the same thing reading his original message, then I looked 
closer. He booted using "noirqbalance", did not start the userspace 
balancer, and yet his IRQs are still being balanced.

---------- Forwarded message ----------
Subject: Re: irq balancing; kernel vs. userspace
From: Arjan van de Ven <arjanv@redhat.com>
Date: 20 Apr 2003 21:10:18 +0200
To: "Kevin P. Fleming" <kpfleming@cox.net>
Cc: linux-kernel@vger.kernel.org

On Sun, 2003-04-20 at 20:37, Kevin P. Fleming wrote:

> I thought the same thing reading his original message, then I looked 
> closer. He booted using "noirqbalance", did not start the userspace 
> balancer, and yet his IRQs are still being balanced.

if you don't do a thing, pIII cpu based machines will balance by
themselves while pIV cpu based machines will redirect everything to CPU
0. 

It would seem that there might be four commonly desirable modes of
operation:
 1 - All IRQ on CPU0
 2 - Spread IRQ between all processors evenly
 3 - Bind ints to CPUs to get about the same int count per CPU
 4 - Fancy other stuff controlled by user app

Now (1) is what you get if you disable apic, Alan Cox recommends this on
the smp list from time to time, and in most cases it works fine. Mode (2)
is what happens on Pentium-III unless you prevent it. It has more cache
overhead for some loads, but it's preferabe to trying to explain anything
else to certain managers. Note the total lack of a smiley on that
statement.

Now if that user program (4) could give me (2), and maybe even (1) with
apic enabled for the really odd load and testing, I suspect that (3) is
pretty much going to be included.

Think we could support a few other modes in the user tool and have the
kernel default to either (1) or whatever the apic wants to do? And how
does this map on non-Intel hardware?

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: irq balancing; kernel vs. userspace
  2003-04-20 13:23 ` irq balancing; kernel vs. userspace Sean Neakums
  2003-04-20 18:31   ` Arjan van de Ven
@ 2003-04-20 20:11   ` Zwane Mwaikambo
  1 sibling, 0 replies; 7+ messages in thread
From: Zwane Mwaikambo @ 2003-04-20 20:11 UTC (permalink / raw)
  To: Sean Neakums; +Cc: linux-kernel

On Sun, 20 Apr 2003, Sean Neakums wrote:

> I thought I'd play with the userspace IRQ-balancer, but booting with
> noirqbalance seems not to not balance.  Possibly I misunderstand how
> this all fits together.
> 
> $ uname -a
> Linux peng-33 2.5.68 #1 SMP Sun Apr 20 13:06:57 IST 2003 i686 unknown unknown GNU/Linux
> $ cat /proc/cmdline
> auto BOOT_IMAGE=default ro root=801 noirqbalance
> $ cat /proc/interrupts 
>            CPU0       CPU1       
>   0:     853487     854900    IO-APIC-edge  timer
>   1:          9          4    IO-APIC-edge  i8042
>   2:          0          0          XT-PIC  cascade
>   4:      15548      15161    IO-APIC-edge  serial
>   8:          2          1    IO-APIC-edge  rtc
>   9:          3          2   IO-APIC-level  eth1
>  10:       1784       1805   IO-APIC-level  via82cxxx, eth0
>  11:      10939      10860   IO-APIC-level  aic7xxx
>  12:         39         21    IO-APIC-edge  i8042
> NMI:          0          0 
> LOC:    1708150    1708149 
> ERR:          0
> MIS:          0

Local APICs before P4 by default arbitrated for interrupt handling, via a 
round robin type scheme, this doesn't seem to be the case with P4 since the 
Arbitration ID register is also gone now.

	Zwane
-- 
function.linuxpower.ca

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: irq balancing; kernel vs. userspace
  2003-04-20 18:37     ` Kevin P. Fleming
@ 2003-04-20 19:10       ` Arjan van de Ven
  0 siblings, 0 replies; 7+ messages in thread
From: Arjan van de Ven @ 2003-04-20 19:10 UTC (permalink / raw)
  To: Kevin P. Fleming; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 403 bytes --]

On Sun, 2003-04-20 at 20:37, Kevin P. Fleming wrote:

> I thought the same thing reading his original message, then I looked 
> closer. He booted using "noirqbalance", did not start the userspace 
> balancer, and yet his IRQs are still being balanced.

if you don't do a thing, pIII cpu based machines will balance by
themselves while pIV cpu based machines will redirect everything to CPU
0. 

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: irq balancing; kernel vs. userspace
  2003-04-20 18:31   ` Arjan van de Ven
  2003-04-20 18:37     ` Kevin P. Fleming
@ 2003-04-20 18:55     ` Sean Neakums
  1 sibling, 0 replies; 7+ messages in thread
From: Sean Neakums @ 2003-04-20 18:55 UTC (permalink / raw)
  To: linux-kernel

Arjan van de Ven <arjanv@redhat.com> writes:

> On Sun, 2003-04-20 at 15:23, Sean Neakums wrote:
>> I thought I'd play with the userspace IRQ-balancer, but booting with
>> noirqbalance seems not to not balance.  Possibly I misunderstand how
>> this all fits together.
>
> this looks like you haven't started the userspace daemon (yet)

I just cranked it up, and now I see:

$ cat /proc/interrupts 
           CPU0       CPU1       
  0:    9627420   12189635    IO-APIC-edge  timer
  1:       4165       4347    IO-APIC-edge  i8042
  2:          0          0          XT-PIC  cascade
  4:     282749     315988    IO-APIC-edge  serial
  8:          2          1    IO-APIC-edge  rtc
  9:          3          2   IO-APIC-level  eth1
 10:      19270      20109   IO-APIC-level  via82cxxx, eth0
 11:      34913      19457   IO-APIC-level  aic7xxx
 12:       8777       8835    IO-APIC-edge  i8042
NMI:          0          0 
LOC:   21817495   21817494 
ERR:          0
MIS:          0


I was confused at first because I was thinking of IRQ balancing as
balancing IRQs *across* CPUs.  This kind of balancing seems to be
about spreading IRQ *sources* across CPUs.  I guess it's good for
caches and whatnot for IRQs to be consistently serviced by the same
CPU.

Anyway, it seems to be working.  Thanks!

-- 
Sean Neakums - <sneakums@zork.net>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: irq balancing; kernel vs. userspace
  2003-04-20 18:31   ` Arjan van de Ven
@ 2003-04-20 18:37     ` Kevin P. Fleming
  2003-04-20 19:10       ` Arjan van de Ven
  2003-04-20 18:55     ` Sean Neakums
  1 sibling, 1 reply; 7+ messages in thread
From: Kevin P. Fleming @ 2003-04-20 18:37 UTC (permalink / raw)
  To: linux-kernel

Arjan van de Ven wrote:

> On Sun, 2003-04-20 at 15:23, Sean Neakums wrote:
> 
>>I thought I'd play with the userspace IRQ-balancer, but booting with
>>noirqbalance seems not to not balance.  Possibly I misunderstand how
>>this all fits together.
> 
> 
> this looks like you haven't started the userspace daemon (yet)

I thought the same thing reading his original message, then I looked 
closer. He booted using "noirqbalance", did not start the userspace 
balancer, and yet his IRQs are still being balanced.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: irq balancing; kernel vs. userspace
  2003-04-20 13:23 ` irq balancing; kernel vs. userspace Sean Neakums
@ 2003-04-20 18:31   ` Arjan van de Ven
  2003-04-20 18:37     ` Kevin P. Fleming
  2003-04-20 18:55     ` Sean Neakums
  2003-04-20 20:11   ` Zwane Mwaikambo
  1 sibling, 2 replies; 7+ messages in thread
From: Arjan van de Ven @ 2003-04-20 18:31 UTC (permalink / raw)
  To: Sean Neakums; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 287 bytes --]

On Sun, 2003-04-20 at 15:23, Sean Neakums wrote:
> I thought I'd play with the userspace IRQ-balancer, but booting with
> noirqbalance seems not to not balance.  Possibly I misunderstand how
> this all fits together.

this looks like you haven't started the userspace daemon (yet)

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* irq balancing; kernel vs. userspace
  2003-04-20  3:11 Linux 2.5.68 Linus Torvalds
@ 2003-04-20 13:23 ` Sean Neakums
  2003-04-20 18:31   ` Arjan van de Ven
  2003-04-20 20:11   ` Zwane Mwaikambo
  0 siblings, 2 replies; 7+ messages in thread
From: Sean Neakums @ 2003-04-20 13:23 UTC (permalink / raw)
  To: linux-kernel

I thought I'd play with the userspace IRQ-balancer, but booting with
noirqbalance seems not to not balance.  Possibly I misunderstand how
this all fits together.

$ uname -a
Linux peng-33 2.5.68 #1 SMP Sun Apr 20 13:06:57 IST 2003 i686 unknown unknown GNU/Linux
$ cat /proc/cmdline
auto BOOT_IMAGE=default ro root=801 noirqbalance
$ cat /proc/interrupts 
           CPU0       CPU1       
  0:     853487     854900    IO-APIC-edge  timer
  1:          9          4    IO-APIC-edge  i8042
  2:          0          0          XT-PIC  cascade
  4:      15548      15161    IO-APIC-edge  serial
  8:          2          1    IO-APIC-edge  rtc
  9:          3          2   IO-APIC-level  eth1
 10:       1784       1805   IO-APIC-level  via82cxxx, eth0
 11:      10939      10860   IO-APIC-level  aic7xxx
 12:         39         21    IO-APIC-edge  i8042
NMI:          0          0 
LOC:    1708150    1708149 
ERR:          0
MIS:          0

-- 
Sean Neakums - <sneakums@zork.net>

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2003-04-22 21:47 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-22 21:54 irq balancing; kernel vs. userspace Bill Davidsen
  -- strict thread matches above, loose matches on Subject: below --
2003-04-20  3:11 Linux 2.5.68 Linus Torvalds
2003-04-20 13:23 ` irq balancing; kernel vs. userspace Sean Neakums
2003-04-20 18:31   ` Arjan van de Ven
2003-04-20 18:37     ` Kevin P. Fleming
2003-04-20 19:10       ` Arjan van de Ven
2003-04-20 18:55     ` Sean Neakums
2003-04-20 20:11   ` Zwane Mwaikambo

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).