Unity/Ubuntu 16.04.2 中更改窗口焦点时出现 CPU 峰值和性能问题

Unity/Ubuntu 16.04.2 中更改窗口焦点时出现 CPU 峰值和性能问题

我在使用 Unity 更改窗口焦点时遇到了奇怪的性能问题。无论我打开了哪些应用程序组合,都会发生这种情况,但应用程序越多(无论是终端窗口还是 Chromium 窗口)情况就越糟。

例如,如果我用 gedit 编辑文本文件,然后单击 Chromium,则实际需要整整一秒钟才能切换焦点(反之亦然,因此我无法立即开始输入)。在切换窗口时在 term 中运行“top”显示 Xorg 使用 ~50% 的 CPU,而 compiz 将使用 ~10%。

我正在运行带有 GTX 1070 的 i5-4670。我正在使用 378.13 Nvidia 驱动程序和英特尔处理器微码固件。Ubuntu 16.04.2。

有人遇到过这种情况并找到了解决方案吗?谢谢!

更新:如下所示,我尝试禁用 intel_pstate 并更改为性能调节器。我还尝试了单显示器配置以及 Unity 的低图形模式。不幸的是,这些都失败了。

答案1

我也在 16.04 上使用 i5-4460 和 GTX 960 在 32 位系统上看到这个问题(别问!)我没有在 nouveau 驱动程序中看到它,但在 NVidia 专有驱动程序中我看到了它(我已经测试过所有版本,最高到 381.13)。

虽然这不是一个合适的解决方案,但使用重新启动 unityunity --replace似乎可以解决该会话的问题。(如果第一次不起作用,您可能需要再试一次。)

这可能与bugs.launchpad.net/ubuntu/+source/unity/+bug/1300892。如果您认为该错误影响到您,请单击顶部的“该错误影响到我”,这样维护人员就可以清楚地了解该错误影响了多少人,因为该错误目前被归类为低优先级错误。

编辑:看来,将命令添加/usr/bin/unity --replace到“启动应用程序”确实可以作为一个笨拙但不太临时的解决方法。:)

答案2

我最近在更新和升级后遇到了类似的问题。对我来说,这个问题与 CPU 时钟速度有关。你可以试试这个。

  1. 禁用 intel_psate。您可以通过修改/etc/default/grub并向行添加intel_pstate=disable参数来实现此GRUB_CMDLINE_LINUX_DEFAULT目的。它应该看起来像这样:GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash intel_pstate=disable"
  2. 然后保存文件并运行 sudo update-grub
  3. 安装 cpufrequtils 包:sudo apt-get install cpufrequtils。编辑/etc/init.d/cpufrequtils文件并将以下行设置为您需要的调节器(在我的情况下是性能):GOVERNOR=”performance”
  4. 重启

这是针对英特尔处理器的特定硬件解决方案。

相关内容