Chrome在16.10版本中,在不同工作区域打开多个窗口时运行缓慢。

复现步骤:

  1. 打开谷歌浏览器,
  2. 打开一个新窗口(Ctrl-N),
  3. 将该窗口移动到不同的工作区,
  4. 正常使用谷歌浏览器(例如打开和关闭新标签页,输入地址栏内容)。

谷歌浏览器会表现得非常缓慢。

这只发生在升级到Ubuntu 16.10之后。然而,谷歌浏览器版本为55.0.2883.75(64位)。

愿意深入挖掘并发布日志等信息,但不知道从何开始。

编辑:刚刚将Chromium升级到版本55.0.2883.87,现在Chromium也有同样的问题。


4我有同样的问题。你可以禁用硬件加速,这样它会表现得更好,但是你就不能全屏观看YouTube视频了。目前我通过使用Chromium绕过了这个问题,虽然这不是一个完美的解决方案,一些页面如亚马逊视频在Chromium上无法正常工作。希望有人能找到关于这个问题的解决方法。 - Jon Vallet
2可能是以下问题的重复:Chrome 在不同工作区时非常迟缓 - jamesadney
@jamesadney 你可以看到这是在我发帖的同一天晚些时候发布的。 - rump roast
不管怎样,所谓的副本有一个答案。你试过了吗? - Elder Geek
是的,根据@JonVallet的评论,这只是一个部分解决方案。 - rump roast
1问题的发起地是https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1628866。 - colan
2个回答

我最近在更新和升级后遇到了类似的问题。对我来说,问题与CPU时钟速度有关。你可以试试这个方法。
1. 禁用intel_psate。你可以通过修改`/etc/default/grub`文件,在`GRUB_CMDLINE_LINUX_DEFAULT`行中添加`intel_pstate=disable`参数来实现。它应该像这样:`GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash intel_pstate=disable"`。然后保存文件并运行`sudo update-grub`命令。
2. 安装cpufrequtils软件包:`sudo apt-get install cpufrequtils`。
3. 编辑`/etc/init.d/cpufrequtils`文件,并将以下行设置为你需要的调节器(在我的情况下是performance):`GOVERNOR=”performance”`。
4. 重新启动电脑。

应该是“禁用”。 - Shane
好的,我已经编辑过了。顺便说一下,这个答案非常具体于硬件。 - Zanna
谢谢,是的,适用于使用英特尔处理器的人。可以通过运行lscpu命令来查看。如果再次出现这个问题,我会提到的。 - Shane
3谢谢,但我觉得我不应该为了让Chrome正常工作而去调整硬件设置,特别是如果Firefox和旧版本的Chrome都能正常工作。这应该是Chrome自己可以修复的问题,不是吗? - rump roast
同意,但是如果你按照原始帖子中所述对整个系统进行完整的更新和升级,那么下载和安装的不仅仅是程序。无论如何,为了测试目的,这样做也不会有任何损害。 - Shane
这对我没有用。 - Ben Winding
没有帮助我。这里是Ubuntu 16.04。 - kza

由于您对设置的细节了解有限,我将做一些假设。

1)您没有使用Unity桌面,而是类似Gnome Classic的东西。我使用回溯/回退与Metacity,没有Compiz合成器或编辑器,以便在底部面板上获得“工作区”排列。
2)也许您只有4 GiB的RAM?
为了克服一些相同的困难,我首先通过添加一条4 GiB的内存条来将我的HP ProBook 440 G1笔记本电脑的内存扩展到8 GiB。我的CPU(i3)已经有4个核心,主频为2.4 GHz,所以在这方面我很满意。 我发现在现代操作系统和应用程序中,4 GiB的内存是不够的。 我的台式机有16 GiB和32 GiB的内存,因为永远都不会有足够的内存。 我使用Ubuntu-Gnome 14.04.5软件中心提供的"System Profiler and Benchmark"来查看我的设置如何运行。当16x版本刚发布时,我发现软件中心缺少或无法正常工作的应用程序太多(也许现在已经修复了),所以我选择重新安装了"Ubuntu-Gnome" 14.04(不仅仅是Ubuntu,还包括Gnome)。我有自己的喜好! 我使用"System Monitor"来查看哪些正在运行的程序我不需要或不想要。 我回答了一个帖子(链接1:为什么我的设置上没有使用交换空间?),其中讨论了内存使用情况,我有一些想法可以参考。我做的一件事在链接2:如何添加/删除“隐藏”的启动应用程序中有介绍。 我学到的一件事是,Firefox将RAM和缓存作为一个整体块使用,而Google Chrome或Opera浏览器则设置了多个块。不确定哪种方式更好,因为很多人对此有争议,但我发现两者都采用贪婪的方法来保留缓存和一些RAM,以防万一您可能再次使用它...实际上从不释放前者,以便其他操作/应用程序可以使用它! 总之...控制您的启动应用程序。 有些应用程序是看不见的,所以您需要编辑"someDesktopApp.desktop"(请注意,您需要处于'root'文件模式才能看到*.desktop扩展名),并将它们更改为
不要显示=false/不要显示=true(上面的链接)。你不需要另一个应用程序来控制启动项,因为一旦可见,你可以通过菜单将它们关闭:应用程序 >> 系统工具 >> 首选项 >> 启动应用程序。不要一次关闭太多启动项,因为可能会关闭你需要的东西或者你想要的指示器!在关闭之前先研究一下每个启动项的功能。

摆脱一些像"动画"和其他"花哨效果"这样的东西。我发现唯一有效的方法是学习和理解"dconf编辑器"(有点麻烦,需要改进)。尝试使用Ctrl+F查找内容。

尝试我的清理缓存的方法。有人说不要这样做!!但对我来说有效,当系统变慢时我不必重新启动。
sudo sync && sudo sysctl -w vm.drop_caches=3

我将它设置为一个菜单项,包含一个文件和链接到的内容。
#/bin/bash
sudo sync && sudo sysctl -w vm.drop_caches=3

位于 /usr/local/bin。
设置菜单项
[~/.local/share/applications/menulibre-clean-ubuntu-cache.desktop] (我更喜欢menulibre而不是alacarte)
[Desktop Entry]
Version=1.0
Type=Application
Name=Clean Ubuntu Cache
Comment=To free pagecache, dentries and inodes:
Icon=aptdaemon-update-cache
Exec=gksudo /usr/local/bin/clean_cache
NoDisplay=false
Categories=menulibre-favorites1
StartupNotify=true
Terminal=false

Actions=NewShortcut;

[Desktop Action NewShortcut]
Name=clean 3
Exec=sudo sync && sudo sysctl -w vm.drop_caches=3
#OnlyShowIn=Unity

在上面的那一行中... Categories=menulibre-favorites1 ... 是我的个人菜单类别,所以你可能想将其设置为其他内容。
希望这能有所帮助。无论如何都值得考虑。 詹姆斯·尼兰德