¿Cómo se diagnostica / descubre problemas relacionados con la memoria, si el Administrador de tareas parece no informar correctamente?
Debo tener una pérdida de memoria o algo así: estoy usando el 75% de mis 12 GB de memoria, pero las listas de los administradores de tareas del uso de memoria de los procesos no se suman (sí, "Mostrar procesos de todos los usuarios" está marcado )
Parece que este uso de memoria "fantasma" crece en relación con cuánto tiempo ha estado funcionando el sistema. Muestra que hay 118 procesos totales. Además de los 5 primeros, todos tienen menos de 50 MB.
El proceso principal es firefox, con 2.6 GB. Adobe Premiere a 900 MB. Contenedor de complementos a 300 MB. Luna pálida a 275 MB. Explorer.exe a 94 MB.
¿Cómo en el mundo puedo encontrar lo que está usando el resto de mi memoria? Parece que el Administrador de tareas no está viendo todo lo que se está utilizando. Tal vez hay algún tipo de pérdida de memoria? ¿O los programas no liberan la memoria usada correctamente?
Informes del Monitor de recursos (haga clic para obtener una versión más grande):
NOTA:
- Como mi unidad principal del sistema operativo es una SSD, SuperFetch está deshabilitado en mi sistema.
- Y entiendo el principio de que el carnero no utilizado es carnero "desperdiciado", por así decirlo. Sin embargo, cuando veo que mi uso de memoria casi se usa para alcanzar la capacidad máxima, me impide ejecutar / cargar programas posteriores (por mi propia preocupación), e incluso me envía a la tarea de cerrar muchos (sin apenas efecto en la disminución del uso de memoria, al menos notablemente y dentro de un corto período de tiempo).
- Cuando la memoria se llena, odio ver que el archivo de página de 1GB en mi SSD se expande hasta el límite de 6GB que he establecido, y me "suda" con el conocimiento de que mi SSD "pobre" probablemente se esté convirtiendo en polvo como Windows en gran medida / se vuelve desenfrenado a usarlo como un dispositivo de memoria completo. (En esa nota, ¿debería limitar el archivo de página a un 1 GB estático?)
fuente
Respuestas:
Por lo general, puede obtener una mejor visión de lo que está usando su memoria con herramientas como RamMap .
Click para agrandar
A menudo, la memoria puede ser utilizada por los archivos mapeados en memoria que se han introducido en la RAM para aumentar el rendimiento.
Tome nota de la columna Activa en RamMap. Esa es la memoria que actualmente se está utilizando actualmente. Los indicadores relacionados con la memoria libre a menudo pueden ser engañosos. Esto incluye herramientas de Windows como el Administrador de tareas.
Más información
También quería abordar algunos puntos adicionales de su pregunta.
Tu razonamiento está perfectamente bien. Pero, a menos que tenga problemas debido a situaciones de poca memoria, debe abstenerse de esta práctica. El sistema operativo debe manejar esta tarea y vaciar los datos al archivo de paginación cuando se requiere memoria física.
Posiblemente, también está utilizando el indicador incorrecto para su práctica. Desea vigilar su Cargo de confirmación ( terminología de Process Explorer ).
El cargo de confirmación es la suma de toda la memoria utilizada. Puedes ver en la captura de pantalla, también hay un límite. Ese límite es el tamaño de mi memoria física + el tamaño de mi archivo de paginación. Si se alcanzara ese límite, sería un problema.
Lo que nos lleva a nuestro próximo tema.
En mi opinión, hay varias cosas mal aquí. En general, debe desaconsejarse establecer límites en el tamaño del archivo de paginación. Mark Russinovich explica esto en los videos que vinculé anteriormente (mucho mejor de lo que podría).
Solo las cosas malas pueden venir de eso. ¿Qué se supone que debe hacer Windows cuando necesita vaciar más de 6 GB de datos al archivo de paginación pero lo limita a 6 GB? Ese es un problema importante.
Deje que Windows maneje el archivo de paginación. Lo único que le recomendaría encarecidamente es que aleje el archivo de paginación de su SSD. Tom Wijsman explica esto excelentemente en su publicación de blog Maximizando la vida útil de su SSD , que le recomiendo que lea.
fuente
En mi caso, el motivo del uso elevado de la memoria fue una máquina virtual Hyper-V para la que tenía habilitada la configuración de memoria dinámica para RAM.
La herramienta RamMap me ayudó a localizar la causa raíz.
Primero, noté en RamMap que Driver Locked consumió más de 29 GB de mi RAM de 32 GB. Luego, encontré un artículo que explicaba que el uso elevado de memoria bloqueada por el controlador puede ser causado por la memoria dinámica HyperV habilitada, y luego acabo de confirmar eso.
fuente
Si ve que el complemento no muestra todo el proceso y el proceso que se muestra toma 5.8 GB de memoria. desde el complemento que se muestra, muestra que hay muchos programas de fondo innecesarios en ejecución. Con msconfig, elimine los programas de inicio innecesarios y también aumente su memoria virtual (1.5 veces su memoria física).
fuente
Puede probar el RAMMAP de Sysinternal, pero muestra el uso de la memoria de manera diferente que el Administrador de tareas y el Administrador de recursos y, por lo tanto, no es demasiado útil.
El Administrador de tareas y el Monitor de recursos no muestran la caché de archivos y el tamaño de la misma. Es parte de la parte "En uso" de la memoria (Ver Monitor de recursos). El caché de archivos puede crecer a un tamaño MUY grande, especialmente cuando uno mantiene la computadora funcionando durante horas. El uso general de la memoria del programa aumenta a medida que pasa el tiempo, como resultado de una creciente caché de archivos y pérdidas de memoria. Algunos programas simplemente tienen una pésima administración de memoria.
Una forma de minimizar el uso de memoria es reducir la cantidad de procesos. (¿Por qué se ejecutan 118 procesos? ¿Por qué tiene varias instancias de Explorer.exe ejecutándose?)
Hay un programa que te ayuda a reducir regularmente el uso de memoria y colapsar regularmente el caché de archivos. (CLEANMEM de PcWinTech). Reducir el uso de memoria de esta manera también reduce o incluso elimina la necesidad de que Windows escriba datos desde la memoria en el archivo de intercambio (en su SSD). Por lo tanto, aumenta la vida útil de su SSD. La reducción del uso de la memoria también hace que haya más memoria "en espera" disponible, lo que permite que Windows precargue más archivos en la memoria en espera, acelerando su sistema.
fuente
RAMMap mostró que el
C:\Windows\SoftwareDistribution\DataStore\DataStore.edb
archivo mapeado estaba desperdiciando 400 Mb de mi preciosa RAM de 4 Gb.Además, Windows Update ralentizaba constantemente el sistema en el proceso de actualización de ese enorme archivo.
Ese puede ser un problema común para muchas PC de gama baja.
Ver PC Boots luego escribe un archivo gigante datastore.edb que ralentiza la computadora para una posible resolución.
fuente