使用 Zoom 时 CPU 使用率会随机升高,直到我重新启动后才会结束

使用 Zoom 时 CPU 使用率会随机升高,直到我重新启动后才会结束

更新:发生时的实时截图

在此处输入图片描述

在此处输入图片描述

所以……当我使用 Zoom 时,通常是在屏幕共享期间,或者当其他人共享屏幕时,我的所有核心都会加速到 100%,如上面的屏幕截图所示,一切都变得非常缓慢。我能听出有人告诉我有回声,Zoom 会给我“高 CPU 使用率正在减慢 Zoom 的速度”错误,但 Zoom 才是消耗我 CPU 的罪魁祸首。即使我关闭了 Zoom 和浏览器,我仍然会遇到一些奇怪的迟缓行为。我无法打开应用程序,没有什么比它更灵敏了。就好像有什么事情永远出错了。

恢复正常功能的唯一方法是重新启动机器。

截图:

在此处输入图片描述

在此处输入图片描述

我是不是应该扔掉电脑,飞到加勒比海的一个岛屿然后退休呢?

答案1

就您的计算机而言,听起来您遇到了两个问题:

  1. Zoom 非常耗费资源。
  2. Firefox 中的某些内容非常耗费资源。

我推断你的意思其实是

  1. 我的 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_uscpulimit

与上面的例子一致,我们设置 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,它 /可能/ 有助于将renicegui 调低为较低优先级。这很容易做到;例如sudo renice -3 -p $(pgrep Xwayland) && sudo renice -3 -p $(pgrep gnome-shell)。同样,与上述类似,nice将以指定的优先级启动进程;但在这里您需要事先指定--- 这样就可以以 的优先级nice -10 /path/to/zoom启动(并以 的优先级启动)。这也可能是一种更好的方法。zoom+10nice --10 /path/to/zoom-10

答案2

抱歉我来晚了,但我也遇到了同样的问题。我跟踪了 CPU 时钟并注意到它被设置为 400MHz,因此所有核心都以 100% 的负载运行。

我将机器的能量设置从功率切换到平衡,之后核心开始以更高的时钟速度运行,并解决了问题。

但我无法找到时钟频率降低的根源。

答案3

这可能是 Firefox 或 Chrome/Chromium 在后台运行的问题。或者,任何其他应用程序正在占用 RAM 或 CPU。检查系统监视器中的进程并终止该进程

相关内容