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)并且顶部输出中的红线可能会被忽略。