ATOP menunjukkan vmcom garis merah dan vmlim. Apa artinya?

15

utilitas di atas menunjukkan:

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 |

Pertanyaan saya adalah sebagai berikut: 1) Semuanya putih, hanya baris dengan SWP yang MERAH. Saya memiliki RAM 24GB dan saya tidak menggunakan swap. Bagaimana saya memperbaikinya? Apakah ini masalah besar? Saya bekerja tanpa masalah, tetapi siapa yang tahu apakah itu buruk atau tidak?

2) Apa vmcom dan vmlim artinya?

CPU adalah Quad core. 3HDD dalam RAID5. Saya memiliki Debian Squeeze x64 dan menggunakan KVM dan MySQL.

Terimakasih untuk jawaban

MIrra
sumber

Jawaban:

6

Jawaban untuk pertanyaan utama lebih jauh di bawah ini - tetapi pertama-tama peringatan tentang saran Mirra:

Hati-hati dengan ini:

Di: / proc / sys / vm / overcommit_memory saya coba letakkan di sana 2.

Dalam hal itu, bahkan ketika memori fisik tersedia, semua proses yang meminta memori dari OS ketika vmcom lebih besar dari vmlim akan menerima kesalahan (Saya punya banyak kesalahan dan gagal dengan aplikasi sistem dasar seperti compiz). Dan karena:

vmlim = SWAP_size + 0,5 * RAM_size.

di mana 0,5 (50%) adalah nilai default untuk parameter / proc / sys / vm / overcommit_ratio Anda dapat dengan mudah mendapatkan banyak kesalahan seperti saya.


Jawaban untuk pertanyaan utama: lebih baik mengembalikan perubahan pada parameter overcommit_memory kembali ke nilai default (0 untuk saya (Ubuntu 12,04 LTS), tetapi bisa 1 untuk OS lain). Menurut artikel hebat kita dapat menghitung memori yang sebenarnya digunakan oleh proses:

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

Jadi hanya 16.7G yang benar-benar digunakan oleh proses (dari 23.6G RAM yang terpasang) dan garis merah di atas keluaran mungkin diabaikan.

Yuri
sumber
Jadi dapatkah ini dianggap sebagai bug di atas, jika peringatan itu sebenarnya tidak penting?
joeytwiddle
1

The atopman page membantu menjelaskan apa angka sebenarnya menunjukkan.

Penyimpanan

Jika memori virtual yang dikomit melebihi batas ('vmcom' dan 'vmlim' di jalur SWP), jalur SWP diwarnai karena overcommitting sistem.

SWP

Tukar pekerjaan dan info berlebihan.

Baris ini berisi jumlah total ruang swap pada disk ('tot') dan jumlah ruang swap gratis ('gratis').

Selanjutnya ruang memori virtual yang berkomitmen ('vmcom') dan batas maksimum ruang yang berkomitmen ('vmlim', yang secara default ukuran swap ditambah 50% dari ukuran memori) ditampilkan. Ruang berkomitmen adalah ruang virtual yang disediakan untuk semua alokasi ruang memori pribadi untuk proses. Kernel hanya memverifikasi apakah ruang yang dikomit melebihi batas jika penanganan overcommit yang ketat dikonfigurasi (vm.overcommit_memory adalah 2).

https://linux.die.net/man/1/atop

Loren
sumber
1
atopdan manualnya adalah sumber yang bagus untuk memahami cara kerja Linux. :)
Nemo