降低 Compiz 内存使用量

Lui*_*ado 38 compiz optimization memory-usage

自从我安装 11.10(现在我正在测试 12.04 和 14.04)以来,我一直在关注每周出现的更新,它们如何影响 Compiz 的性能和资源使用。就我所见,CPU 和内存使用率降低了(特别是内存)。我正在比较在没有任何更新的情况下安装 12.04/14.04,然后应用所有更新,并将 12.04 与 14.04 进行比较。例如 nautilus 使用不到 35 MB(对我来说,它在 70 MB 和 150 MB 之间,在几个版本之前用它做同样的活动)。

其他进程也得到了某种优化,将我的总内存使用量从大约 850 MB 降低到 610 MB(我也使用 Apache、MySQL 等服务。)几乎相同的是 Compiz。它仍然使用超过 100MB 来启动。仅使用带有 Unity 的桌面并且没有运行其他程序,需要(现在)133 MB。我可以使用哪些选项来降低内存占用而不影响 Unity 的稳定性(例如,从 Compiz 配置中删除 OpenGL 插件是一个坏主意)。

可以做哪些优化来降低 Compiz 的内存使用率?

注意 - 我已经安装了 Compiz Config Settings Manager (CCSM)。

小智 21

解决 compiz 内存泄漏的方法是:

sudo kill -HUP <compiz_process_id>
Run Code Online (Sandbox Code Playgroud)

不是一个很好的解决方案,但它可以在不完全终止进程的情况下释放泄漏的内存。

  • @isaaclw,或`pkill -HUP compiz` (9认同)
  • `sudo kill -HUP $(pgrep compiz)` (2认同)

Rol*_*Xor 19

根据我的经验,降低 Compiz 内存使用量是相当困难的。我能建议的最好的事情是降低 OpenGL 插件中的纹理质量,但这不会改变太多。

compiz 内存增加的另一个来源可能是内存泄漏。这似乎有时是由指标触发的,但也可能来自其他来源(尚不确定)。

我的解决方案是定期重新启动统一,使用一个简单的脚本,其中包含:

#kill compiz completely, including all child processes, freeing it's memory:
killall -9 compiz & 
#run unity and give you back a free terminal.
unity & disown 
Run Code Online (Sandbox Code Playgroud)

我知道这不是最好的答案,所以我自己在关注这个问题,看看是否有人有更好的建议。

  • 您知道如何在不搞乱窗口在其工作区中的位置的情况下重新启动 compiz。在我杀死 compiz 后,所有窗口都移动到第一个工作区,我必须重新组织它们,这很痛苦 (3认同)
  • 为我工作,虽然当我的桌面上几秒钟没有显示任何内容时我有点紧张:) (2认同)

小智 10

我知道这是一篇旧帖子,但 Gus 的回答对我有帮助,我想补充一下。这就是我所做的(在 Ubuntu 12.04 上):

  • Alt+ F2(运行应用程序)
  • 计划任务
  • 新的循环任务
  • killall compiz -HUP
  • 每天 00:00

现在compiz每晚都会自动重启,不需要知道进程id。

我的问题是,如果我将屏幕锁定几天,打开屏幕锁定需要大约 30 秒,并且 compiz 内存使用量约为 1000 MB。