Irqbalance package

I installed the irqbalance package to try and eek a bit more performance out of my 4 threaded dir-860l, but I am not entirely sure how to use the package once it is installed. Does anyone happen to know how to use this package or have a link to written documentation?

just have irqbalance executable run on startup, it's that simple :slight_smile:

That is indeed very simple :slight_smile: I already did that, so I guess it's already up and running. Is there any way to check whether it is up and running and more importantly, whether it is working?

see discussion starting from

cat /proc/interrupts

(originally they are all in core0, but after irqbalance has been running, they have been distributed between core0 and core1)

2 Likes

Thank you very much for your help. Unfortunately, 1e100000.ethernet is still only using CPU0. It is causing by far the most interrupts. Should this one be balanced as well?

Each interrupt uses usually just one core at a time, but the /proc stats show the cumulative stats.

So if some driver gets moved to the other core, also the original stats for the first core are still shown in addition of the new core's stats.

Why I can't find "irqbalance" package for (sunxi) 18.06?

No idea.
sunxi is arm_cortex-a8_vfpv3, right?
Package is right there:
https://downloads.openwrt.org/releases/packages-18.06/arm_cortex-a8_vfpv3/packages/

https://downloads.openwrt.org/releases/packages-18.06/arm_cortex-a8_vfpv3/packages/irqbalance_1.2.0-2_arm_cortex-a8_vfpv3.ipk

You have run "opkg update" ?

I've re-run opkg update still no joy :grinning:

Its for sunxi Allwinner H5 (aarch64_cortex-a53)

Well, irqbalance seems to fail compiling for that target also in master, so I guess the same concerns also 18.06.
https://downloads.lede-project.org/snapshots/faillogs/aarch64_cortex-a53/packages/irqbalance/compile.txt

Looking at that failure log, it is probably some target-specific error in upstream irqbalance. Or something like that.

EDIT:
seems to be this error:
https://github.com/Irqbalance/irqbalance/issues/36
And the needed fix for AARCH64 is
https://github.com/Irqbalance/irqbalance/commit/b0f77c10fc4561463b59b12cba0bfd69d7c73934#diff-69b8dbcfbbf11746aa38c26a4604e551

I can patch that later in Openwrt irqbalance.
(we are using an old version of irqbalance, so that newer upstream fix has not been included here.)

Above mentioned upstream patch backported to both master and 18.06.
Buildbot should now compile irqbalance ok for AARCH64 based targets.

1 Like

Got it,
Thank you! :yum:

Hi insted of just back porting that one patch why not update to 1.3?
After installing the package do you have to do anything to make it work. I don't even know how to chek if it's started lol

Because that would make the glib2 library mandatory. That would increase effective size quite much.
See https://github.com/Irqbalance/irqbalance/issues/40

Installation just installs the binary app. You need to run the app manually. Search the forum or look at the links above in this thread for more advice.

Hi dude this forum is a bitch to use with a screenreader pleas could you copy and paste? After a thread gets so long I cant find any posts as the auto scroll messes up what I can read.

Install the irqbalance package and add

/usr/sbin/irqbalance

to file /etc/rc.local.

5 Likes

It's probably worth highlighting in the associated documentation that the package doesn't come with its own startup file - which a lot of people may not be used to, given that for the most part daemonized packages in openwrt will have an associated startup file in the same package.

I believe it's quite common to use the --oneshot argument, which exits after one run.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.