[arch-dev-public] New package: irqbalance

Dan McGee dpmcgee at gmail.com
Thu Oct 23 19:35:50 EDT 2008

Does anyone have any comments on pulling a new package into our repos (extra)?


What is irqbalance?
irqbalance is a Linux* daemon that distributes interrupts over the
processors and cores you have in your computer system. The design goal
of irqbalance is to do find a balance between power savings and
optimal performance. To a large degree, the work irqbalance does is
invisible to you; if irqbalance performs its job right, nobody will
ever notice it's there or want to turn it off.

I was poking around gerolde today and noticed the following, which
this daemon is supposed to fix:
$ cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3
  0:        167          0          0      24048   IO-APIC-edge      timer
 34:          0          0          0 1557024287   IO-APIC-fasteoi   ioc0
 64:          0          0          0 2309314931   IO-APIC-fasteoi   eth0
LOC: 1044939304  862822858  922819431 1061796506   Local timer interrupts
RES:   47509379   41864565   96191013   60946968   Rescheduling interrupts
CAL:      28955      30778      32683      31325   function call interrupts
TLB:   42452901   45130904   34918196   34859372   TLB shootdowns

Notice how CPU3 is handling every single hardware interrupt on our
system, and we have a LOT of them from our disk and ethernet
controllers. Balancing some of this across processors should help, and
this program takes care of that. I've been running it locally on my
machine and it seems to work as advertised.


More information about the arch-dev-public mailing list