¿Por qué mi computadora no puede volver a acelerar después de cerrar aplicaciones grandes?


2

Mi computadora ejecuta Windows XP y solo tiene 1 GB de RAM.

Después de lanzar algunas aplicaciones masivas (como Eclipse y SQL Developer), la computadora se ralentiza considerablemente. El síntoma obvio de esto es que el puntero del mouse se vuelve menos sensible y toma 1-2 segundos para alcanzar el punto que quiero que sea.

Sin embargo, después de cerrar esas aplicaciones, la computadora sigue siendo lenta y necesito reiniciarla para que vuelva a responder. ¿No puede recuperar la memoria por sí misma?


1
Es Windows. Esto es lo que hace Windows.
Daniel R Hicks

Respuestas:


1

Estoy de acuerdo con el comentario de Synetech sobre comprobar el uso de la CPU más que el uso de la memoria.

Por cierto: un excelente artículo de Mark Russinovich sobre «El engaño de la optimización de la memoria. Los optimizadores de RAM hacen falsas promesas »

http://www.windowsitpro.com/article/internals-and-architecture/the-memory-optimization-hoax

Y ahora, una herramienta sugerida para saber qué se está ejecutando en su PC y cuántos recursos requiere cada proceso:

Explorador de procesos http://technet.microsoft.com/en-us/sysinternals/bb896653

[por el mismo Mark Russinovich ...] ;-)

Espero que esto ayude. Haznos saber.


6

Es probable que su computadora no haya liberado la memoria todavía. Probablemente notará que hay mucha actividad en el disco mientras su máquina cambia entre la memoria virtual y la memoria física. La liberación de memoria puede demorar un tiempo, pero una forma de confirmar su liberación es mediante el Administrador de tareas. Lanzamiento Administrador de tareas y cambiar a la procesos lengüeta. Puede ordenar por cualquiera de las columnas allí en orden ascendente y descendente.

El que desea ver es la memoria. Si ordena mostrar los procesos utilizando la mayor cantidad de memoria, le dará una idea de cuál está usando la memoria. También puede usar el menú Ver en el Administrador de tareas para seleccionar columnas para mostrar (por ejemplo, Tamaño de máquina virtual ). Si ves un proceso que está usando mucho en el Uso de mem y Tamaño de máquina virtual entonces puedes estar razonablemente seguro de que esto es lo que podría ser ralentizando su máquina . Si no es un servicio crítico, podría terminar el proceso para ver si esto ayuda.

También puedes mirar herramientas gratuitas como RamRush que puede borrar a la fuerza la memoria que una aplicación no ha lanzado después de que se haya cerrado.


1
Su respuesta, aunque ya muy completa, carece de un enlace a "Ram Rush". ¿Puede editar su respuesta para incluir el enlace al sitio web del software? Además, bienvenidos a Superusuario , si aún no lo has hecho, por favor revisa la Preguntas más frecuentes
wizlog

4
Recomendaría mirar el uso de la CPU más que el uso de la memoria RAM. Sí, es probable que el disco duro se golpee mientras se intercambia el archivo de paginación, pero si el cursor del mouse está congelado, es más probable que la CPU esté sobrecargada. Mira un TaskManager y míralo un rato. Cuando sale de aplicaciones pesadas en un sistema que apenas puede manejarlas, puede tomar (bastante) un tiempo para que finalice la limpieza y comience el ralentí. En cuanto a RAMRush, parece un típico "optimizador" de RAM que simplemente asigna toda la memoria del sistema y luego la libera. Eso mayo ayuda en este caso, pero probablemente solo hará que tome más .
Synetech

@Synetech: Tienes razón. La velocidad de RAM aumenta la cantidad de memoria libre, que es exactamente lo opuesto a lo que necesita. Su problema se desencadena por el cierre de grandes aplicaciones, lo que crea, como lo has adivinado, una gran cantidad de memoria libre. (Por qué alguien querría más memoria libre, nunca me he dado cuenta. La memoria libre tiene no efecto sobre el rendimiento. Sólo la memoria que se está utilizando puede hacerte un bien.)
David Schwartz

1
@David, al igual que otros "optimizadores de RAM", en realidad no libera nada. Simplemente asigna mucha memoria (hasta la cantidad instalada en el sistema) para sí mismo, lo que hace que el sistema operativo envíe todo lo demás (es posible) al archivo de paginación (memoria virtual). Entonces libera la memoria, dejando el físico RAM libre, pero porque toda la otra memoria ya asignada a otros programas es ahora en el disco , todo tiene que empezar a ser copiado de nuevo a la memoria RAM física. Esto significa un mucho más disco golpeando. Estoy bastante seguro de que esto no ayudaría realmente al OP, y probablemente haga que se demore más.
Synetech

@Synetech En realidad libera algo, toda la memoria asignada. Creo que solo estamos en desacuerdo sobre la terminología. Creo que estamos de acuerdo con los efectos y el problema: la memoria libre es mala, ya que no contiene los contenidos que la computadora necesita para funcionar sin problemas. Esencialmente, al ejecutar y terminar un programa grande, ya ha hecho exactamente lo que haría un "optimizador" de RAM, y causado el problema.
David Schwartz

2

Archivo de página

¿Dónde está tu archivo de paginación?

yo recomendaria poniéndolo en un volumen dedicado para hacerlo más rápido. Lo ideal sería colocarlo en una unidad física diferente de la que está instalado el sistema operativo (siempre que sea Menos utilizado con frecuencia que la unidad del sistema operativo). Si eso no es posible, al menos póngalo en su propia partición (lo más cerca posible del inicio de la unidad) para asegurarse de que no esté fragmentado.

Cuando minimiza o inactiva un programa por un tiempo, Windows páginas fuera de su memoria al archivo de intercambio en el disco. Cuando la cierra, esa memoria debe liberarse incluso si no está en la RAM (en cuyo caso, debe estar marcada como libre en el archivo de intercambio).

Al optimizar el archivo de intercambio, cuando cierre sus aplicaciones de programación con gran cantidad de memoria, el sistema operativo podrá retroceder en la memoria desde otros programas en un tiempo mucho más razonable.

Simplemente ocupado

Fallando eso, la paciencia es una virtud. (He tenido muchas veces, por ejemplo, ¡la codificación de un video con el programa configurado como prioridad en tiempo real!) Cuando el sistema estaba tan atascado por algo que el mouse no solo se congeló, sino que el teclado incluso se bloqueó de tal manera que *-Bloquear Los LED no cambiarían, y el altavoz interno emitió un pitido. En la mayoría de los casos, a menos que se tratara de una colisión total, esperar el tiempo lo solucionaría (suponiendo que tuviera suficiente paciencia para esperar).

UPC

Como dije en mi primer comentario. Me gustaría examinar el uso de la CPU. Si bien es normal que la unidad se golpee cuando se libera la memoria, rara vez hace que el mouse se tambalee. Esto suele deberse a un proceso de alta prioridad que utiliza una gran cantidad de CPU. Examine el Administrador de tareas (o Explorador de procesos ya que tiene un gráfico de traza), para examinar qué proceso está utilizando la CPU para ayudar a reducir el problema.

Si el proceso que está girando, la CPU es la aplicación de programación (es decir, la aplicación está cerrada, pero el proceso aún está pendiente para finalizar la limpieza), entonces puede usar TaskMan (o ProcExp) para configurarlo en baja prioridad para que puedas seguir usando tu sistema mientras esperas a que termine.

Estrangulamiento

También se me ocurre que otra cosa que podría estar causando el problema es la aceleración de la CPU. Después de cerrar un programa grande como los entornos de desarrollo, el sistema realiza una gran cantidad de limpieza, así que vigile el uso y la temperatura de su CPU. ¿Utiliza muchos ciclos durante el proceso de limpieza? ¿Sube la temperatura? Tal vez la placa base esté configurada para acelerar la CPU una vez que alcance una cierta temperatura, lo que provoca que todo sistema para reducir la velocidad, incluidas las respuestas del cursor y el teclado del mouse.


1

La ralentización se debe a la compresión de los cachés del sistema. Cuando las aplicaciones requieren grandes cantidades de memoria, el sistema reduce la cantidad de memoria asignada a usos "menos importantes", como el caché de la página. Cuando se libera la memoria, la memoria caché de la página aún no tiene la mayoría de las páginas que necesita el sistema, y ​​todas tienen que fallar.

Sin embargo, incluso en el peor de los casos, esto solo debería tomar unos 30 segundos más o menos y, de manera realista, no debería tomar más de diez segundos. Este es probablemente el momento en que el puntero del mouse es lento.

Primero, permítame decir que un "optimizador de RAM" empeorará las cosas. Sus problemas de rendimiento se deben a que el tamaño de la memoria caché es pequeño y los optimizadores de RAM, por diseño, minimizan el tamaño de la memoria caché.

La cosa es que las cosas deberían volver rápidamente a la normalidad una vez que la caché de la página se vuelva a rellenar. Entonces la pregunta es, ¿por qué? todavía ¿lento? Lo primero que se debe verificar es el uso de la CPU: ¿la CPU vuelve a la normalidad? Lo segundo que hay que verificar es el uso de la memoria. ¿Hay algún proceso que use una cantidad de memoria mucho mayor de lo normal?

Mi apuesta es que es un error o una fuga. Esas son las únicas cosas que evitarían que el sistema vuelva a la normalidad después.


0

En gran parte, el problema es que el sistema aún no ha limpiado el almacenamiento. Es probable que se dé cuenta de que la luz del disco se está ejecutando de manera constante, ya que el sistema trata de solucionar el problema.

No estoy completamente seguro de por qué sucede esto: el almacenamiento liberado no debería necesitar paginación. Pero sospecho que una "característica" del esquema de memoria virtual de Microsoft tiene algo que ver con eso.


No es la memoria liberada la que necesita ser paginada. Lo que sucede es que el programa necesitaba tanta memoria, que el sistema operativo tenía que salir de la página. otro programas Cuando se cerró la aplicación, el sistema operativo tiene que recuperar todo lo demás.
Synetech

1
Excepto que cuando el sistema se encuentra en esta situación puede tardar más en recuperarse que en arrancar de nuevo. El sistema debe transferir en bloque la mayor parte del código que se ha distribuido, por lo que entrará rápidamente y no se necesitarán muchos datos si no se está ejecutando nada.
Daniel R Hicks
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.