答案1
就您的计算机而言,听起来您遇到了两个问题:
- Zoom 非常耗费资源。
- Firefox 中的某些内容非常耗费资源。
我推断你的意思其实是
- 我的 GUI 变得迟钝了,我不喜欢它。
1 – “调整”(破坏)调度程序以强制限制 CPU 密集型进程
为了解决前者,除了大声抱怨(并且不使用视频背景),你可能希望考虑限制其可以拥有的 CPU 数量。这在 Linux 中通过控制组或控制群组,这可以有效地限制单个组的调度。例如,您可以使用 CGROUPS 让内核限制 CGROUP 中的进程使用每 1000 毫秒中的 100 毫秒(或每 1 秒中的 0.1 秒)的 CPU 时间。这会让事情变得更糟您的 Zoom 体验可能总体来说更好。
要尝试一下,sudo apt install cgroup-tools libcgroup1 libcgroup-dev
然后创建一个 CPU 受限的 cgroup
sudo cgcreate -g cpu:/cpulimit
这里,cpulimit 是控制 CPU 使用率的组名。现在,您必须设置该组的cpu.cfs_period_us
属性。cpu.cfs_quota_us
cpulimit
与上面的例子一致,我们设置 1 s 或 1000000 us(微秒)为cpu.cfs_period_us
属性,100 ms 或 100000 us 为cpu.cfs_quota_us
属性
sudo cgset -r cpu.cfs_period_us=1000000 cpulimit
sudo cgset -r cpu.cfs_quota_us=100000 cpulimit
要检查是否确实如此,请运行sudo cgget -g cpu:cpulimit
并观察这些标志是否已设置。
现在的情况是,无论你向 CGROUP 添加什么进程cpulimit
,正如其名称所示,都将被限制使用总 CPU 周期的 1/10(100000/1000000 = 1/10 = 0.1 = 10%)。至少,这可能有很大帮助。
现在实际使用这并启动一个进程,启动程序或命令如下cgexec
:
sudo cgexec -g cpu:cpulimit YOUR_COMMAND
哪里YOUR_COMMAND
可以是/path/to/zoom
或其他任何事情。
2 – 寻找 Firefox 中的性能瓶颈
Firefox 有一个漂亮的about:performance
页面,可以帮助您发现饥饿页面。这些页面通常使用大量 javascript、展示广告,甚至可能非常粗鲁,例如在不告知您的情况下运行加密货币挖掘程序。除了关闭罪魁祸首页面外,您可能还想做的一件事是阻止这种情况再次发生,那就是冒险使用选择性 javascript 拦截器,例如优秀的乌马特里克斯以防止这种情况再次发生。当然,这会破坏一些页面,但您通常可以通过解锁特定链接来了解网络 ;-)。
3 – 防止 GUI 滞后好的方式
除了不常用的 cgroups 来对处理器调度进行硬性限制之外,Linux 还内置了进程优先级的概念。出于历史原因(如果其他人可以教我,我很想了解),Linus 将此称为优先级友善。 我们可以雷尼塞(或sudo renice
)进程,使其“更优”——即以更高的优先级运行。默认情况下,用户可以将进程的优先级降低到0
(最高可达19
)并将根设置为-20
。调度niceness
程序会为较低的进程分配更高的优先级。(我认为这里的想法是,您不需要的进程真的关心——即“有就好”——被赋予更高友善减少其优先级)。
对于 gnome,它 /可能/ 有助于将renice
gui 调低为较低优先级。这很容易做到;例如sudo renice -3 -p $(pgrep Xwayland) && sudo renice -3 -p $(pgrep gnome-shell)
。同样,与上述类似,nice
将以指定的优先级启动进程;但在这里您需要事先指定-
-- 这样就可以以 的优先级nice -10 /path/to/zoom
启动(并以 的优先级启动)。这也可能是一种更好的方法。zoom
+10
nice --10 /path/to/zoom
-10
答案2
抱歉我来晚了,但我也遇到了同样的问题。我跟踪了 CPU 时钟并注意到它被设置为 400MHz,因此所有核心都以 100% 的负载运行。
我将机器的能量设置从功率切换到平衡,之后核心开始以更高的时钟速度运行,并解决了问题。
但我无法找到时钟频率降低的根源。
答案3
这可能是 Firefox 或 Chrome/Chromium 在后台运行的问题。或者,任何其他应用程序正在占用 RAM 或 CPU。检查系统监视器中的进程并终止该进程