什么导致Xorg高CPU使用率?

时间:2017-10-12 16:23:59

标签: cpu xorg xserver

我在Debian上运行feh图像查看器,经过几个小时的正常CPU使用(3%aprox。)后,xorg突然开始使用更多CPU(80%aprox。),一切都运行得非常慢。我没有运行其他任何东西,所以bug应该是feh或xserver ...

我正在使用命令" feh -z -q -D20 -R 1" (-z表示随机图像,-q表示安静,-D20表示每隔20秒更改一次图像,-R 1表示每秒刷新一次目录,因为我擦除并经常插入图片)

当我使用命令" free -m"在高CPU使用率和运行之前,我得到了               总可用的免费共享缓存/缓存 记忆:923 117 474 19 331 735 交换:99 0 99

几个小时之后,我得到同样的回复#34; mem"但是" swap"的使用量是99。

2 个答案:

答案 0 :(得分:0)

您的内存使用率上升(交换已满)的事实直接表明系统中某些程序的内存泄漏。考虑到feh可能不是为这种用例设计的,我敢打赌这是内存不足的原因。

“一切运行缓慢”是由内核内存不足引起的,它正在尽最大努力保持系统运行。如果您坚持使用feh,那么您的选择就是

  • feh中的内存泄漏错误进行分类并为其创建修复程序。
  • 尝试让其他人为您做同样的事情。
  • 会定期杀死feh并重新运行。基本上,您可以做到(在bash中)

    while true; do timeout 120m feh -z -q -D20 -R 1; sleep 2s; done

    ,它将每120分钟杀死一次,并在2秒的延迟后重新启动(如果需要,您可以杀死while循环)。另一种选择是使用ulimit来设置您想为feh所允许的最大内存量,并且该过程可能会在使用过多内存时立即终止。

答案 1 :(得分:0)

我解决了这个问题,但我也不知道为什么。

您可以尝试运行以下代码来终止该过程:

data[0].id