Download and Upload speed is not showing properly

Hello all, I am developing one speedtest application which will run through openwrt command line using python script. I am facing problem with this, my openwrt is showing that I have 150 mbps down and 190 mbps up, however I have 290 mbps down and 310 mbps up.

while my test happens my cpu load reaches to 100% of 1 core, I have 4 core cpu.

can anyone help me with this, that how can I improve my speedtest results or how to reduce cpu load.


It's quite a challenge to separate the performance of the router in routing from that of the load of generating / sinking packets. One existing solution that I have heard good things about includes

will show some other efforts.

You could try to run the python code on a different CPU than CPU1 as it seems that that CPU is also used for the kernel. I would also recommend to test busybox's top as that will splitt up the CPU usage into different categories, and especially sirq often is dominated by the kernels networking components (at least on a router).

1 Like

Superrrrrrrr!!!!!, Very much fascinating solution dude, Thanks a lotttt.....

Ok, I will try this too...

By default, most/all network activity gets assigned to core0.

You might into discussion about irqbalance package. You can install it and once you manually run it, it will distribute driver IRQs into different cores.

You can do that also manually, just search here for irqbalance and for CPU affinity.

So, you are saying that, by irqbalance I would divide load of cpu so I can get better result in speedtest!! right??

Better performance in general, if you are cpu constrained.

Can you send some steps, to install irqbalance in openwrt 15.

I tried to install from opkg packege but Its saying package not found.

Sorry, the package is not there in the ancient 15.05 branch.

Ok, then I should upgrade to modern 18?

1 Like

Sure, the package is both in 17.01, 18.06 and master.

Nobody should be using old 15?05 any more.

1 Like