在 Mac 上驯服高 WindowServer CPU 使用率

WindowServer 消耗 CPU 并且速度变慢一台 Mac

Mac 在 OS X Yosemite 中进行了大量更改,并进行了显着的视觉重新设计,但其中一些更改和各种透明效果可能会影响某些用户的 Mac 性能,并导致错误的 WindowServer 行为。这通常表现为 WindowServer 进程似乎无缘无故地大量使用 CPU,通常伴随着内存的过度使用,导致在某些计算机上一般使用 Mac OS X 和 MacOS 时出现非常缓慢和不稳定的行为。

在最坏的情况下,打开 Quick Look、打开几个新的 Finder 窗口或滚动浏览繁忙的 Finder 文件夹内容等操作会导致 WindowServer 处理器使用率激增,足以导致计算机死机甚至备受诟病的沙滩球光标的出现。

哦不,不是沙滩球

如果 WindowServer 在 macOS 和 Mac OS X 的某些情况下似乎没有任何意义的原因而经常保持 CPU 使用率激增,那么本文就是针对您的。我们将尝试通过减少可能刺激 WindowServer 行为(或不当行为)的元素和功能来驯服 WindowServer 进程,这是一项具有挑战性的任务,因为 WindowServer 是绘制 Mac OS X 中几乎所有内容所必需的。希望 WindowServer CPU 使用率问题只是一个将被解决的错误或优化问题,但目前这种行为在最新版本的 Mac OS(Mac OS X 10.10.3 及更高版本)中仍然存在,即使在最新的 Mac 硬件上也是如此。幸运的是,有一些解决方案可以提供帮助,让我们开始吧。

在 Mac OS X 中关闭透明效果

我遇到过的每台运行 Mac OS X Yosemite 或更高版本的 Mac,无论硬件是新的还是旧的,只需关闭透明效果就可以单独加速。即使计算机感觉不是特别慢,但关闭透明效果几乎肯定会感觉更快。

  1. 转到  Apple 菜单并选择“系统偏好设置”,然后转到“辅助功能”
  2. 从左侧菜单中选择“显示”
  3. 将“降低透明度”旁边的开关切换为开启(或者,如果您希望 UI 更容易区分,您可以启用增加对比度,这也会关闭整个 OS X 的半透明元素)

关闭透明加速 OS X

在大多数动作中,速度的提高会立即显着,您甚至可以测量前后的结果 在 Quartz Debug 中使用 FPS 帧率监视器,根据硬件,屏幕动画的刷新率可以提高 10 FPS 或更高。

Mac OS X 10.10.3 仍然是这种情况(假设它是测试版),所以可能存在一个顽固的错误,或者可能仍然需要针对 OS X Yosemite 进行一些性能优化。

就我个人而言,我喜欢透明效果,所以我倾向于在最新的 Mac 硬件上保持这种效果,但即使是我的 2015 款配备 16GB RAM 的 Retina MacBook Pro 也可以通过关闭透明度得到提升。与此同时,像 2012 年推出的 MacBook Air 这样较旧的硬件在开启透明效果时运行缓慢令人沮丧,我也听到 Retina iMac 27 用户的类似抱怨,这显然是相当新且功能强大的硬件。拥有充足资源的新硬件仍然难以在 OS X 中显示透明效果,这表明最终的软件解决方案是可能的。

关闭未使用的应用程序和 Finder 窗口

当 OS X Yosemite 有许多应用程序窗口或 Finder 打开时,WindowServer 开始消耗过多的资源。虽然这可能发生在所有版本的 OS X(或与此相关的任何操作系统)中,但 Yosemite 有一些独特之处导致这是一个特别耗费精力的事件。

解决方案比其他任何东西都更加以用户行为为导向;养成关闭未使用的窗口或应用程序的习惯,这样它们就不再需要资源。

记住关闭所有 Windows 击键对于管理此问题很有用。

停止任务控制空间自行重新排列

如果您使用 Spaces,它基本上是 Mac 上的虚拟桌面环境,阻止空间根据使用情况重新排列它们自己似乎会对 WindowServer 行为产生微小的影响。

  1. 从  Apple 菜单打开系统偏好设置,然后转到“任务控制”
  2. 禁用“根据最近使用情况自动重新排列空间”的设置

许多用户无论如何都没有注意到此功能,因此即使改进几乎为零,通常也不会错过。

多显示器?关闭每个空间

如果您有一个多显示器设置,另一个要禁用的设置是每个单独显示器的空间。

  1. 打开系统偏好设置并转到“任务控制”
  2. 将“显示有单独的空间”设置切换为关闭
  3. 注销,或者更好的是,重新启动 Mac

停止显示具有单独的空间

当然,如果您不是在 Mac 上使用多个屏幕的人,那么该更改将没有任何效果,因此您的注意力应该放在其他地方。

重启

如果您是那些从不关闭或重启 Mac 的 Mac 用户之一,但遇到 WindowServer 高 CPU 问题,您可能需要更频繁地调整和重启 Mac。只需重新启动 Mac 即可为 WindowServer 进程的不当行为提供临时解决方案。我知道这听起来像是最蹩脚的建议,但许多评论者都报告说这暂时取得了成功,而且我自己也观察到了进步。当然不太理想,但在解决根本原因之前,这会有所帮助。

WindowServer,你怎么吃那么多CPU?我给你买了一台新的 Mac,你还想要什么?请 WindowServer 乖一点。” />  </p>
<p>如果您已完成上述所有操作,并且继续发现 WindowServer 运行异常或 Mac 运行异常缓慢,那么值得 <a href=查看这些加速 OS X Yosemite 的技巧,甚至是了解为什么Mac 可能运行缓慢,这可以提供进一步的帮助。

您遇到过 WindowServer 问题吗?您有什么技巧可以减少 OS X Yosemite 中的 WindowServer 资源使用吗?请务必在我们的评论中分享您的经验和技巧。