ATOP muestra la línea roja vmcom y vmlim. Qué significa eso?

15

utilidad en la parte superior muestra:

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 |

Mis preguntas son las siguientes: 1) Todo es blanco, solo la línea con SWP es ROJA. Tengo 24 GB de RAM y no uso el intercambio. ¿Cómo puedo solucionar esto? ¿Es un gran problema? Estoy trabajando sin problemas, pero ¿quién sabe si es malo o no?

2) ¿Qué significa vmcom y vmlim?

La CPU es de cuatro núcleos. 3HDD en RAID5. Tengo Debian Squeeze x64 y uso KVM y MySQL.

Gracias por su respuesta

Mirra
fuente

Respuestas:

6

La respuesta a la consulta principal está más abajo, pero primero una advertencia sobre la sugerencia de Mirra:

Ten cuidado con esto:

En: / proc / sys / vm / overcommit_memory trato de poner allí 2.

En ese caso, incluso cuando la memoria física esté disponible, todos los procesos que soliciten memoria del sistema operativo cuando vmcom sea mayor que vmlim recibirán errores (tengo muchos errores y falla con aplicaciones básicas del sistema como compiz). Y por:

vmlim = SWAP_size + 0.5 * RAM_size.

donde 0.5 (50%) es el valor predeterminado para el parámetro / proc / sys / vm / overcommit_ratio, puede obtener fácilmente muchos errores como yo.


Respuesta a la pregunta principal: es mejor revertir los cambios en el parámetro overcommit_memory al valor predeterminado (0 para mí (Ubuntu 12.04 LTS), pero puede ser 1 para otros sistemas operativos). Según el gran artículo , podemos calcular la memoria realmente utilizada por los procesos:

Memoria utilizada ~ tot - (caché + buff + gratis) ~ 23.6G - (6.7G + 0.067G + 0.136G) ~ 16.7G

Por lo tanto, los procesos solo usan 16.7G (desde la RAM instalada de 23.6G) y se puede ignorar la línea roja en la salida.

Yuri
fuente
Entonces, ¿se puede considerar esto un error en la cima, si la advertencia no es realmente importante?
joeytwiddle
1

La atoppágina del manual ayuda a explicar lo que los números realmente indican.

Memoria

Si la memoria virtual comprometida excede el límite ('vmcom' y 'vmlim' en la línea SWP), la línea SWP se colorea debido a un compromiso excesivo del sistema.

SWP

Intercambio de ocupación e información sobrecomprometida.

Esta línea contiene la cantidad total de espacio de intercambio en el disco ('tot') y la cantidad de espacio de intercambio libre ('libre').

Además, se muestra el espacio de memoria virtual comprometido ('vmcom') y el límite máximo del espacio comprometido ('vmlim', que es el tamaño de intercambio predeterminado más el 50% del tamaño de la memoria). El espacio comprometido es el espacio virtual reservado para todas las asignaciones de espacio de memoria privada para procesos. El kernel solo verifica si el espacio comprometido excede el límite si se configura un manejo estricto de sobrecompromiso (vm.overcommit_memory es 2).

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

Loren
fuente
1
atopy su manual son un recurso maravilloso para comprender el funcionamiento interno de Linux. :)
Nemo