4 votos

¿Cómo saber qué proceso se come la memoria?

Mi MacBook Pro tiene 8G de RAM. Recientemente se han producido fugas de memoria. Las salidas de página y el uso de la memoria de intercambio han aumentado. La última vez que utilizó ~ 8G espacio de intercambio.

Pero en el Monitor de Actividad, no puedo encontrar ningún proceso que tenga un valor grande en la columna 'Real Mem', 'Private Mem' o 'Shared Mem'.

Comprobé la columna %MEM en la salida de 'ps -ev', todos los procesos ocupaban menos del 1% de la memoria. La salida completa se pone en este gist: https://gist.github.com/aleung/4760556

¿Cuál es la forma de diagnosticar un problema de fuga de memoria en OSX?

3voto

matthew k Puntos 11

Compruebe con este comando (mostrará más procesos):

sudo ps -awxm -o %mem,rss,comm | sort -nr | head

si no ayuda, consulte con fs_usage para mostrar las llamadas al sistema y los fallos de página relacionados con el sistema de archivos:

sudo fs_usage -f filesys,diskio

especialmente la entrada y salida de la página añadiendo lo siguiente al comando anterior:

| egrep -i "page_|pgin|pgout"

Añade un extra | grep -v kernel para ignorar el proceso del núcleo o | grep -v 0.00 para mostrar estos con mayor tiempo de permanencia.

Si tu swap es grande, puedes forzar el vaciado de la caché del disco mediante: sudo purge .

Basado en mi experiencia, OS X tiene algunos problemas con la gestión de la memoria después de un mayor tiempo de actividad (cuando se utiliza toda la memoria libre), por lo que a veces sólo el reinicio completo puede ayudar.

Compruebe también sudo iotop o sudo vm_stat 1 comandos que pueden ayudar.

Véase también: ¿Cómo investigar el alto uso de la memoria de tareas del kernel?

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X