# Referred Arguments An argument that might not have been so strong more than a decade ago but is much more today is power savings and that is an aspect that comes up over and over. It also had reports of conflicts with power saving [10] and e.g. dynamically disabling/enabling cores which is much more a thing nowadays as long ago this was only reliably working on mainframes anyway.
I don't buy the "games need 100%" as even games need their I/O to happen, but OTOH irqbalance just doesn't help much nowadays either as the kernel learned many more tricks to do well - like to name just one all the traffic aware and potentially offloaded rps/xps [2]. And irqbalance is not mutually exclusive with most of those technologies not with RSS [18] nor with kernel policies [15]. Some report about conflicting with their custom tweaking of IRQs [8][16]. It is actually a common conflict between irqbalance being smart [9] and other things like a particular device firmware being smart leading to a conflict of interest. => But TBH that is why it is removable for such rare cases. On one hand it clearly has some impact and various cases of bad impacts by it have come up as well for frame rates [11], stuttering [14] or even network traffic [12]. But on the other hand, there have been reports and cases where a broken irqbalance led to impacted high-performance network traffic [7], so it is not that it is clearly always bad [13]. While we never know how outdated any such source might be, it proves that it is most likely workload and system dependent. Many documentations also sitll refer to it only older RH, Arch [19], ... you'll find it everywhere. It is an interesting case, and the workload dependency leads many discussions to even be contradicting - in one case it saves cpu power in the other it makes it worse. In one it helps traffic in the other is degrades it. That is all a consqeuence of it being workload and system dependent. This back and forther is perfectly encapsulated in this phornix thread [15]. Which quotes interesting other POVs like kernel solutions often being "driver centric" optimizing throughput, but maybe not always the best as policy for the full system as irqbalance pilicies and tunables are configurable. An interim summary might be: """ It could cause rare issues or conflicts, especially on Desktop, but might be still wanted on Servers especially those with a high rate of I/O """ Which is interestingly quite close to the arguments floating around when it was added more than a decade ago (see further below). [2]: https://www.kernel.org/doc/html/latest/networking/scaling.html [7]: https://bugs.launchpad.net/ubuntu/+source/irqbalance/+bug/2038573 [8]: https://groups.google.com/g/gce-discussion/c/Ns8hgOUW9GY [9]: https://docs.xilinx.com/r/en-US/ug1523-x3522-user/Interrupt-Affinity [10]: https://konkor.github.io/cpufreq/faq/#irqbalance-detected [11]: https://askubuntu.com/questions/1067866/ubuntu-18-04-steam-games-frame-rate-drop [12]: https://serverfault.com/questions/410928/irqbalance-on-linux-and-dropped-packets [13]: https://bookofzeus.com/harden-ubuntu/server-setup/disable-irqbalance/ [14]: https://www.reddit.com/r/linux_gaming/comments/emnu3k/removing_irqbalance_fixed_major_stuttering_in/ [15]: https://www.phoronix.com/forums/forum/hardware/processors-memory/1335986-amd-zen-1-linux-performance-hit-from-retbleed-accumulated-cpu-mitigation-impact/page4 [16]: https://documentation.suse.com/sbp/server-linux/pdf/SBP-performance-tuning_en.pdf [18]: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/performance_tuning_guide/network-rss [19]: https://wiki.archlinux.org/title/Improving_performance#irqbalance ** Bug watch added: Debian Bug tracker #577788 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=577788 -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to ubuntu-meta in Ubuntu. https://bugs.launchpad.net/bugs/1833322 Title: Consider removing irqbalance from default install on desktop images Status in irqbalance package in Ubuntu: New Status in ubuntu-meta package in Ubuntu: Confirmed Bug description: as per https://github.com/pop-os/default-settings/issues/60 Distribution (run cat /etc/os-release): $ cat /etc/os-release NAME="Pop!_OS" VERSION="19.04" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Pop!_OS 19.04" VERSION_ID="19.04" HOME_URL="https://system76.com/pop" SUPPORT_URL="http://support.system76.com" BUG_REPORT_URL="https://github.com/pop-os/pop/issues" PRIVACY_POLICY_URL="https://system76.com/privacy" VERSION_CODENAME=disco UBUNTU_CODENAME=disco Related Application and/or Package Version (run apt policy $PACKAGE NAME): $ apt policy irqbalance irqbalance: Installed: 1.5.0-3ubuntu1 Candidate: 1.5.0-3ubuntu1 Version table: *** 1.5.0-3ubuntu1 500 500 http://us.archive.ubuntu.com/ubuntu disco/main amd64 Packages 100 /var/lib/dpkg/status $ apt rdepends irqbalance irqbalance Reverse Depends: Recommends: ubuntu-standard gce-compute-image-packages Issue/Bug Description: as per konkor/cpufreq#48 and http://konkor.github.io/cpufreq/faq/#irqbalance-detected irqbalance is technically not needed on desktop systems (supposedly it is mainly for servers), and may actually reduce performance and power savings. It appears to provide benefits only to server environments that have relatively-constant loading. If it is truly a server- oriented package, then it shouldn't be installed by default on a desktop/laptop system and shouldn't be included in desktop OS images. Steps to reproduce (if you know): This is potentially an issue with all default installs. Expected behavior: n/a Other Notes: I can safely remove it via "sudo apt purge irqbalance" without any apparent adverse side-effects. If someone is running a situation where they need it, then they always have the option of installing it from the repositories. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/irqbalance/+bug/1833322/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp