Comprensión de la memoria comprimida en Mac

Si ha notado que su Mac parece tener un poco más de rebote en su rendimiento desde que instaló OS X Mavericks, puede deberse a los avances en la gestión de la memoria y al regreso de la compresión de la memoria.

La información de este artículo se aplica a Mac que ejecutan macOS Catalina (10.15) a través de OS X Mavericks (10.9).

Cambios en la forma en que Mac administra la memoria

Con el lanzamiento de OS X Mavericks, Apple cambió la forma en que Mac administraba la memoria. Con la adición de compresión de memoria, su Mac ahora puede hacer más con menos memoria mientras mantiene o aumenta el rendimiento. En versiones anteriores de OS X, el uso de la memoria se basaba en un sistema de gestión de memoria estándar. Las aplicaciones solicitaron una asignación de RAM, el sistema cumplió con la solicitud y las aplicaciones devolvieron la RAM cuando ya no la necesitaban.

los sistema operativo se encargó de la mayor parte del trabajo de realizar un seguimiento de la cantidad de RAM disponible y quién la estaba usando. El sistema operativo también descubrió qué hacer si la cantidad de RAM necesaria no estaba disponible, lo que podría llevar a efectos en el rendimiento de la Mac cuando el sistema intentó hacer uso de la RAM virtual intercambiando espacio en un SSD o disco duro conducir.

¿Qué es la memoria comprimida?

La memoria comprimida no es algo nuevo ni exclusivo de Apple. Los sistemas informáticos han estado utilizando varias formas de compresión de memoria durante mucho tiempo. Si usó Mac a mediados de los 80 y principios de los 90, es posible que recuerde productos como RAM Doubler de Connectix, que comprimía los datos almacenados en RAM, aumentando efectivamente la cantidad de RAM libre disponible para la Mac.

Las utilidades de memoria comprimida cayeron en desgracia cuando los fabricantes de ordenadores y los desarrolladores de sistemas operativos crearon mejores sistemas de gestión de memoria. Al mismo tiempo, los precios de las memorias disminuyeron. El otro factor que hizo que los sistemas de compresión de memoria perdieran su popularidad fue el problema de rendimiento. Los algoritmos de compresión de memoria consumían una gran parte de la potencia de procesamiento. Si bien le permiten hacer más con menos RAM física, tienden a atascar su computadora cuando necesitan comprimir o descomprimir la memoria.

La compresión de memoria está regresando, principalmente debido a la llegada de procesadores de núcleo múltiple de bajo costo. Cuando las rutinas utilizadas para la compresión de la memoria se pueden descargar a uno de los muchos núcleos del procesador, es probable que no note ningún impacto en el rendimiento cuando la memoria deba comprimirse o descomprimirse. Se convierte simplemente en una tarea de fondo.

Cómo funciona la memoria comprimida en una Mac

La compresión de memoria en Mac aumenta el rendimiento del sistema operativo y la aplicación al permitir una mejor administración de los recursos de RAM. También previene o reduce significativamente el uso de la memoria virtual, que es la paginación de datos hacia y desde la unidad de Mac.

Con OS X Mavericks y versiones posteriores, el sistema operativo busca memoria inactiva, que es la memoria que no está actualmente en uso activo pero que aún contiene datos que pueden ser utilizados por una aplicación. Esta memoria inactiva comprime los datos que contiene, por lo que los datos ocupan menos memoria. La memoria inactiva pueden ser aplicaciones que están en segundo plano y no se están utilizando. Un ejemplo es un procesador de texto que está abierto pero inactivo porque te estás tomando un descanso y estás leyendo sobre la memoria comprimida. Mientras está ocupado navegando por la web, el sistema operativo comprime la memoria del procesador de texto, liberando RAM para que la utilicen otras aplicaciones.

¿Cuándo ocurre la compresión de la memoria?

El proceso de compresión no está activo todo el tiempo. En cambio, el sistema operativo comprueba cuánto espacio libre está disponible en RAM. Si hay una cantidad significativa de memoria libre, no se produce ninguna compresión, incluso si hay mucha memoria inactiva.

A medida que se agota la memoria libre, el sistema operativo comienza a buscar memoria inactiva para comprimir. La compresión comienza con los datos usados ​​más antiguos almacenados en la memoria y avanza para garantizar que haya suficiente memoria libre disponible. Cuando se necesitan los datos en un área comprimida de RAM, el sistema operativo descomprime los datos sobre la marcha y los pone a disposición de la aplicación que los solicita. Debido a que las rutinas de compresión y descompresión se ejecutan simultáneamente en uno de los núcleos de procesador, es poco probable que experimente una pérdida de rendimiento mientras se produce la compresión o descompresión.

Límites de compresión de memoria en Mac

Hay límites a lo que se puede lograr con la compresión. En algún momento, si continúa iniciando aplicaciones o usa aplicaciones que consumen mucha memoria y que consumen RAM, su Mac no tendrá suficiente espacio libre para funcionar de manera óptima. Al igual que en el pasado, el sistema operativo comienza a intercambiar datos de RAM inactivos a la unidad de su Mac. Sin embargo, con la compresión de la memoria, es probable que esto ocurra con poca frecuencia para la mayoría de los usuarios.

Incluso si el sistema operativo termina intercambiando memoria a su unidad, el sistema de administración de memoria de OS X aprovecha la memoria inactiva comprimida escribiendo los datos comprimidos en segmentos de unidad de longitud completa para aumentar el rendimiento y reducir llevar en SSD.

Monitor de actividad y compresión de memoria

Apple proporcionó una herramienta ingeniosa, la Monitor de actividad, que podría monitorear cómo la Mac usaba RAM. Si bien el Monitor de actividad todavía está disponible, sus capacidades de monitoreo de memoria se han sometido a una cambio dramático que imita la forma en que una Mac es más capaz de hacer uso de la RAM mediante el uso de archivos comprimidos. memoria.

Puede controlar la cantidad de memoria que comprime la Mac utilizando la pestaña Memoria en el Monitor de actividad. La memoria comprimida se muestra en el gráfico de presión de memoria, que indica cuán activamente participa el sistema operativo en la compresión de datos de RAM. El gráfico cambia de verde (poca presión) a amarillo (presión significativa), y finalmente a rojo, cuando no hay suficiente espacio RAM y la memoria debe cambiarse a la unidad.

Monitor de actividad que muestra el gráfico de presión de memoria en una Mac