使用预加载、irqbalance 和 swappiness 进行速度优化

使用预加载、irqbalance 和 swappiness 进行速度优化

我有一个使用 Ryzen 3400G、8GB Ram 和 SSD 驱动器的低端现代硬件。我在网上读到有关使用预加载、irqbalance 和 swappiness 来加快响应速度的文章。这台电脑主要用作工作站和编程。

  1. 预加载

    此程序的工作原理是将常用程序预加载到 RAM。目的是加快各种常用程序的启动速度。

    有人说,如果你使用 SSD,这个程序就没什么用了,所以这个程序对于现代硬件来说有点过时了。这是真的吗?

  2. IRQ 平衡

    它将中断分散到各个处理器。这真的有助于加快响应速度吗?

  3. Swappiness

    如果没有足够的 RAM,那么它可能会将页面交换到 SSD 或硬盘。如果你甚至没有交换怎么办?我实际上没有交换,但似乎没问题。即使我有交换,我也不会使用 SSD 作为交换,而是使用 zram 作为交换,那么交换真的有很大区别吗?

  4. 阿纳尼西

    有一个程序可以为需要更高交互的程序设置更高的优先级。不知何故,我根本感觉不到速度(响应性)的差异。

答案1

回答我自己的问题

1)预紧

好的

取决于你使用什么程序。

如果你使用 google chome,它需要启动一次,这没什么用。如果你使用一个经常运行的程序,这可能会有帮助

坏的

它消耗内存

它会减慢启动速度

如果你有 SSD,就没有必要进行预加载。这是因为 SSD 提供的随机访问时间比硬盘快得多,所以在我看来,在内存中“预加载”二进制文件/依赖项是一种浪费

对于所述硬件,预加载是无用的

2)IRQ平衡

旧帖

https://serverfault.com/questions/513807/is-there-still-a-use-for-irqbalance-on-modern-hardware?rq=1

IRQbalance 可防止所有 IRQ 请求都备份到单个 CPU 上。我见过许多具有 4 个以上 CPU 核心的系统运行缓慢,因为各个 CPU 上的所有进程都在等待 CPU 0 处理网络或存储 IRQ 请求。CPU 0 看起来非常非常繁忙,而所有其他 CPU 都不忙,但应用程序却非常慢。应用程序运行缓慢是因为它们正在等待来自 CPU 0 的 IO 请求。

IRQbalance 会尝试以智能方式在所有 CPU 之间平衡 IRQ,并在可能的情况下将 IRQ 处理尽可能靠近进程。这可能是同一个内核、共享同一缓存的同一芯片上的内核或同一 NUMA 区域中的内核。

您应该使用 irqbalance,除非:

您正在手动将您的应用程序/IRQ固定到特定核心,这是有充分理由的(低延迟、实时要求等)。

虚拟客户机。这实际上没有意义,因为除非您将客户机固定到特定的 CPU 和 IRQ 以及专用的网络/存储硬件,否则您可能看不到在裸机上的好处。但您的 KVM/RHEV 主机应该使用 irqbalance 和 numad 并进行调整。

较新的帖子

然而,在https://github.com/konkor/cpufreq/issues/48

我的第一个论点是,启用 irqbalance 后,应用程序无法正常工作。其次,省电。第三,性能相关问题等。

顺便说一句:我很确定在很多情况下 irqbalance 对于服务器任务非常有用,但对于桌面使用却毫无用处,尤其是对于笔记本电脑桌面用户。

Linux 非常面向服务器,任何 Linux 发行版都希望分发多个版本的内核。因此,我们都必须为服务器硬件、软件、协议和 ms azure 堆栈等运行大量无用的东西,包括 irqbalance。

如果在工作流中您没有看到 CPU0 上 100% 的负载,则您根本不需要使用 irqbalance。此外,现代内核会根据 cpu0 负载自行管理它。

似乎 Linux > 4.9 可以在没有外部守护进程的情况下实现 irqbalance

甚至 debian、ubuntu 现在也默认禁用它

https://bugs.launchpad.net/ubuntu/+source/ubuntu-meta/+bug/1833322

从技术上讲,irqbalance 在桌面系统上是不需要的(据说它主要用于服务器),实际上可能会降低性能和功耗。它似乎只对负载相对恒定的服务器环境有好处。如果它真的是一个面向服务器的软件包,那么它不应该默认安装在桌面上

3)为了 swappiness

如果你有足够的内存,交换就不是什么问题。所以上面提到的这些都无关紧要。但是当你有一天内存用完时,你就会遇到麻烦

4)阿纳尼西

想法不错,但不知道性能有什么差别

相关内容