ATOP 显示红线 vmcom 和 vmlim。这是什么意思?

MIr*_*rra 16 linux process top

实用程序显示:

ATOP - MyServer         2013/01/07  00:03:57               10 seconds elapsed
PRC | sys   2.18s | user   8.33s | #proc    141 | #zombie    0 | #exit      0 |
CPU | sys     21% | user    139% | irq       0% | idle    228% | wait     11% |
cpu | sys      5% | user     40% | irq       0% | idle     51% | cpu002 w  3% |
cpu | sys      5% | user     35% | irq       0% | idle     56% | cpu001 w  3% |
cpu | sys      7% | user     30% | irq       0% | idle     61% | cpu000 w  2% |
cpu | sys      4% | user     34% | irq       0% | idle     61% | cpu003 w  1% |
CPL | avg1   1.00 | avg5    1.12 | avg15   1.25 | csw   389208 | intr  223367 |
MEM | tot   23.6G | free  136.3M | cache   6.7G | buff   66.5M | slab  205.1M |
SWP | tot    0.0M | free    0.0M |              | vmcom  21.8G | vmlim  11.8G |
DSK |         sdc | busy     12% | read      70 | write    109 | avio    6 ms |
DSK |         sde | busy      4% | read      37 | write    131 | avio    2 ms |
DSK |         sdd | busy      3% | read      38 | write    144 | avio    1 ms |
NET | transport   | tcpi     160 | tcpo     171 | udpi       0 | udpo       0 |
NET | network     | ipi      188 | ipo      172 | ipfrw      0 | deliv    160 |
NET | vnet1    0% | pcki     510 | pcko     442 | si   60 Kbps | so   26 Kbps |
NET | eth0     0% | pcki     449 | pcko     527 | si   27 Kbps | so   65 Kbps |
NET | vnet0    0% | pcki       0 | pcko      44 | si    0 Kbps | so    3 Kbps |
NET | vnet7    0% | pcki       1 | pcko      44 | si    0 Kbps | so    3 Kbps |
NET | vnet2    0% | pcki       0 | pcko      43 | si    0 Kbps | so    3 Kbps |
NET | vnet3    0% | pcki       0 | pcko      43 | si    0 Kbps | so    3 Kbps |
NET | vnet6    0% | pcki       0 | pcko      43 | si    0 Kbps | so    3 Kbps |
NET | vnet5    0% | pcki       0 | pcko       5 | si    0 Kbps | so    0 Kbps |
NET | vnet4    0% | pcki       0 | pcko       5 | si    0 Kbps | so    0 Kbps |
NET | vnet8    0% | pcki       0 | pcko       5 | si    0 Kbps | so    0 Kbps |
NET | bond0  ---- | pcki     449 | pcko     527 | si   27 Kbps | so   65 Kbps |
NET | br0    ---- | pcki     157 | pcko     126 | si   12 Kbps | so   17 Kbps |
NET | lo     ---- | pcki      46 | pcko      46 | si    3 Kbps | so    3 Kbps |
Run Code Online (Sandbox Code Playgroud)

我的问题如下: 1)所有的都是白色的,只有 SWP 的线是红色的。我有 24GB RAM,我不使用交换。我该如何解决这个问题?问题大吗?我的工作没有问题,但谁知道它是不是坏事?

2)vmcom 和 vmlim 是什么意思?

CPU是四核。RAID5 中的 3HDD。我有 Debian Squeeze x64 并使用 KVM 和 MySQL。

谢谢你的答案

小智 6

主要查询的答案在下面进一步 - 但首先是关于 Mirra 建议的警告:

小心这一点:

在:/proc/sys/vm/overcommit_memory 我试着把 2.

在这种情况下,即使物理内存可用,当 vmcom 大于 vmlim 时所有从操作系统请求内存的进程都会收到错误(我有很多错误,并且在使用 compiz 等基本系统应用程序时失败)。因为:

vmlim = SWAP_size + 0.5 * RAM_size。

其中 0.5 (50%) 是 /proc/sys/vm/overcommit_ratio 参数的默认值,您很容易像我一样遇到很多错误。


主要问题的答案:最好将 overcommit_memory 参数的更改恢复为默认值(对我来说是 0(Ubuntu 12.04 LTS),但对于其他操作系统可以是 1)。根据这篇很棒的文章,我们可以计算进程实际使用的内存:

MemoryUsed ~ tot - (cache + buff + free) ~ 23.6G - ( 6.7G + 0.067G + 0.136G) ~ 16.7G

所以只有 16.7G 被进程实际使用(来自 23.6G 安装的 RAM)并且顶部输出中的红线可能会被忽略。