顶部内存百分比(linux)

Tim*_*Tim 5 memory linux swap top

就是想

(1) 进程顶部的内存百分比是相对于内存还是相对于内存+交换?

(2)如果是前者,我怎样才能得到后者?反之亦然。

(3) 要确定运行另一个可执行文件是否合适,我应该只查看内存还是内存+交换?或者例如在哪些情况下我应该考虑哪些?

(4) 粗略地说,内存(或内存+swap)使用到什么程度,我最好等待而不是提交另一个作业(当然不是很小)?

感谢致敬!

use*_*889 3

看一个例子:

内存:总共 7928892k,已用 7814100k,空闲 114792k,181504k 缓冲区

交换:总计 1020088k,已使用 92k,空闲 1019996k,缓存 2651664k

PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令

11933 根 18 0 11.6g 3.4g 1.0g S 1 45.2 463:56.35 java

1) 与没有交换的内存相比,%Mem 似乎是 RES 的百分比。

2) 只需将 Swap 总计添加到 Mem Total 中,然后与 RES 进行比较。

3+4) 通常你会考虑更多的因素而不仅仅是内存(例如CPU和IO的竞争),但仅基于内存:如果新进程不适合没有交换的内存,最好等待。如果它适合内存+交换,它将可以工作,但比第一个选项慢。不知道现在当它不适合内存+交换时会发生什么,但它几乎肯定很糟糕。另一个需要考虑的因素是操作系统将使用未使用的内存进行缓存,因此即使第二个进程适合,执行速度也可能比等待第一个进程完成更慢,因为两个进程可用的缓存都较少。