Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
docs:guide-user:services:irqbalance [2022/07/21 15:01] – [References] move link to better place palebloodskydocs:guide-user:services:irqbalance [2024/01/02 18:48] – [Installation] mention new luci package palebloodsky
Line 7: Line 7:
 To get started [[docs:guide-user:additional-software:managing_packages#web_interface|install]] the package: To get started [[docs:guide-user:additional-software:managing_packages#web_interface|install]] the package:
 <code bash>opkg update && opkg install irqbalance</code> <code bash>opkg update && opkg install irqbalance</code>
 +
 +Note if you run a build from main snapshot you can also install the new ''luci-app-irqbalance''.
  
 It will not be enabled by default. Set the following enable line to 1, save and close: It will not be enabled by default. Set the following enable line to 1, save and close:
Line 25: Line 27:
 To set an IRQ to run on a specific CPU core, use echo to write the CPU mask, as a hexadecimal number, to the smp_affinity entry of the IRQ. In this example, we are instructing the interrupt with IRQ number 142 to run on CPU0: To set an IRQ to run on a specific CPU core, use echo to write the CPU mask, as a hexadecimal number, to the smp_affinity entry of the IRQ. In this example, we are instructing the interrupt with IRQ number 142 to run on CPU0:
  
-<code bash>echo 1 > /proc/irq/142/smp_affinity</code>+<code bash>echo 1 > /proc/irq/124/smp_affinity</code>
  
 To set the core affinity use a bitmask, e.g.: To set the core affinity use a bitmask, e.g.:
Line 37: Line 39:
 ==== Caution ==== ==== Caution ====
  
-Irqbalance will result in performance benefits for multicore targets where there is enough CPU overhead to handle context switching. However on 2core targets, outside of benchmarking alone, there may be performance losses. This can happen if affinity selection is not done carefully (e.g. pinning ethernet to cpu0 and wireless to cpu1). This may result in increased latency or cpu overhead such as with simultaneous multiple users on LAN and WLAN. Irqbalance is commonly used on 4core systems and up, however your mileage may vary. See [[[[:docs:guide-user:services:irqbalance#references|Note 3]] below for a forum discussion.+Irqbalance will result in performance benefits for multicore targets where there is enough CPU overhead to handle context switching. However on 2core targets, outside of benchmarking alone, there may be performance losses. This can happen if affinity selection is not done carefully (e.g. pinning ethernet to cpu0 and wireless to cpu1). This may result in increased latency or overhead such as with simultaneous users on LAN and WLAN. Irqbalance is more viable on 4core systems and up, however your mileage may vary. See forum discussionhttps://forum.openwrt.org/t/kong-pro-firmware-for-ipq806x-r7500-r7800-ea8500/55694/395.
  
 ==== Examples ==== ==== Examples ====
  • Last modified: 2024/12/02 22:08
  • by palebloodsky