对于响应式桌面来说,应该对哪些进程进行离子化?

对于响应式桌面来说,应该对哪些进程进行离子化?

我的目标是明智而永久地伊奥尼采在高磁盘和网络负载下,我测试桌面上的进程的响应能力。所谓永久,是指对系统所做的任何更改在系统重启后仍会保留。我希望消除由于磁盘带宽被某个不为我的 GUI 提供服务的进程所占满而无法移动窗口的情况。

我的系统上有数百个进程正在运行。哪些进程可以以空闲类运行,哪些进程可以以实时类运行?

将 X 和 gnome-shell 进程设置为实时类是一个好主意吗?

如何将 cupsd、avahi-daemon、gnome-screensaver、deluge、ntpd 和 backintime 设置为空闲类?

这是一个我的系统上当前正在运行的进程列表

答案1

我认为,如果必须的话,调整你的虚拟机(虚拟内存)和写回趋势(交换)会比采用 ionice 路线获得更好的结果。

您可以使用dpkg-转移永久移动感兴趣的二进制文件,如 /usr/bin/firefox -> /usr/bin/firefox.orig。然后,您可以随意在其位置创建一个 shell 脚本,如下所示:

/bin/sh #!/bin/sh 复制代码
# 直接来自 ionice 手册页
ionice -c 2 -n 0 /usr/bin/firefox.orig $@

结果非常清楚。

您还可以cgroups从长远来看,这种方法可能更具成本效益,但您也会面临一系列新的性能问题。一旦您开始计量资源,您很容易无意中耗尽进程,它会完全按照您的指示去做,即使您不了解所有后果。

看起来 duplicity 或 deja-dup 正在运行(rsync),这当然会占用你所有的 ioband 带宽,也会占用一些 CPU。另一种选择是简单地安排它在你不在电脑前的时候运行,我就是这么做的。我见过的最好的 io 管理解决方案是频带但它存在于树之外,并且已经持续发展了一段时间。

我希望我能为您提供一揽子解决方案,但性能工程方面没有这种东西。这是 IBM 提供的一份很好的指南,但您会注意到,它主要是针对每个子系统“这是您如何开始的”,没有太多“这样做就开心了”的秘诀,因为它们根本不存在,每个系统在性能调优方面的需求都是不同的。

http://www.redbooks.ibm.com/redpapers/pdfs/redp4285.pdf

相关内容