我总是内存不足,并且需要交换,但很难弄清楚到底是什么占用了这么多内存

我总是内存不足,并且需要交换,但很难弄清楚到底是什么占用了这么多内存

其顶部看起来是这样的:

在此处输入图片描述

为了获得可用内存,我不得不关闭 Android Studio。Chrome 肯定占用了最多的内存,Firefox 也是如此。我大部分时间都打开这两个程序来做不同的事情。多年来,我一直这样做,再加上 Android Studio,直到最近才出现问题。我最近唯一改变的是升级到 Ubuntu 18.10。我注意到 buff/cache 真的很高,当我的应用程序内存不足并且必须进行交换时,它真的应该使用那么多吗?

编辑:最后我发现我遇到了几个问题。交换文件很小,但一旦我修复了它,内存耗尽的时间就会更长。然后我发现 Google Play Music Chrome 扩展程序占用了大量内存,删除它解决了这个问题。

答案1

来自评论...

您的 2G 交换空间太小。并且可能需要调整参数 vm.swappiness。buff/cache 在可用时用作文件/磁盘缓存。

您以为系统使用的是 22G 交换分区,但实际上它使用的是 2G 交换文件。您已将其扩大,到目前为止运行良好。我建议使用 8G 左右的交换文件。

可以将该参数vm.swappiness从其默认值 60 更改为 10,以查看是否能改善主内存与交换和磁盘/文件缓存的比率。编辑/etc/sysctl.conf并添加vm.swappiness=10,然后重新启动。

相关内容