15 votos

¿Puedo desactivar la compresión de la memoria y/o el swap en MacOS 10.12, Sierra?

¿Hay una manera con MacOS 10.12, Sierra, para desactivar de forma segura la memoria comprimida? ¿Y hay una forma de desactivar el intercambio seguro?

Esto fue posible en MacOS 10.9 y MacOS 10.10 . Aunque a veces se bloquea en MacOS 10.10.

En MacOS 10.11, la desactivación de la memoria comprimida y la swap causó un problema reproducible , haga clic en apagar y OS X se congela.

Desde entonces no me he atrevido a experimentar con él en MacOS 10.12. Pero todavía me molesta que el sistema quiera usar la memoria comprimida sin ninguna razón válida (en estos rápidos SSDs puede que no me importe tanto el swap).

En cuanto a, Valores de vm_compressor_mode (vm.compressor_mode) para la memoria comprimida habilitada en OS X . Valor 1 para vm.compressor_mode ¿funcionará en MacOS 10.12 o se bloqueará como en MacOS 10.11?

2 votos

Sólo tienes que comprar más RAM. Tratar de adivinar el sistema operativo es un ejercicio infructuoso.

0 votos

¿Su Mac tiene limitaciones de almacenamiento o de capacidad de procesamiento? ¿Qué límites está alcanzando con procesos o tareas específicas?

0 votos

16G ram tengo con el Macbook Pro de finales de 2016, también tengo un Macbook Air 2014 con 8GB RAM. Créanme, siento que se vuelve lento, cuando más y más elementos que llegan a la memoria comprimida. También tengo un iMac retina, allí a veces Soundcloud comienza a saltar el sonido cuando la memoria se comprime, también el desplazamiento de algunas páginas se vuelve más lento, y están bien cuando la memoria comprimida es 0. Sólo quiero que se apague, incluso cuando usted tiene un montón de ram disponible, un sueño + despertar o un tiempo de inactividad de medio día sólo pone las cosas al azar allí :(

3voto

Old Pro Puntos 2851

Independientemente de que se utilice alguna versión de la configuración "oficial" para desactivar el intercambio, nunca es realmente seguro hacerlo.

Un rápido repaso a la "swap". El espacio de intercambio es el contenido de la memoria almacenado en el disco. Para ejecutar más programas de los que permite la memoria física, el sistema operativo puede "intercambiar" parte de la memoria, es decir, escribir el contenido de la memoria en el disco, liberando la memoria física para que la utilicen otros programas. Cuando un programa necesita acceder a la memoria que ha sido intercambiada, el sistema operativo "intercambia" la memoria, lo que significa que lee los datos del disco de vuelta a la memoria física. Si la memoria todavía está llena, significa que el sistema operativo tiene que intercambiar otra memoria antes de intercambiar la memoria solicitada. Todo este esquema sólo funciona si hay grandes trozos de memoria que no se utilizan durante grandes trozos de tiempo, pero ese puede ser el caso en Mac, donde tu procesador de textos puede tomar un descanso mientras estás leyendo tu navegador web.

Con swap, el sistema puede utilizar tanta "memoria virtual" como espacio disponible en el disco, y el rendimiento se degradará gradualmente a medida que un mayor porcentaje de memoria esté en el disco. Sin swap, el sistema puede quedarse abruptamente sin memoria, y como el swap ha estado disponible durante décadas, los sistemas realmente no manejan bien el quedarse sin memoria. El sistema y las aplicaciones pueden entrar en todo tipo de estados extraños y poco saludables porque quedarse sin memoria ya no es algo que la gente planifique o, lo que es más importante, compruebe. Así que incluso si el sistema operativo y las aplicaciones se supone que manejan condiciones de falta de memoria, es muy probable que te encuentres con errores. Si vas a desactivar la memoria comprimida, entonces es aún más probable que necesites swap. Puedes leer relatos de primera mano sobre congelaciones del sistema por quedarse sin memoria y no tener swap en Yosemite .

El sistema operativo sabe que el intercambio es lento, por lo que el software del sistema operativo y las aplicaciones afectadas, como los reproductores multimedia, saben cómo mantener los datos críticos en la memoria y fuera del intercambio. Si encuentra que el sistema está usando la swap y no le gusta, entonces salga de algunas aplicaciones (o cierre algunas pestañas del navegador) hasta que consiga que su "memoria usada" esté muy por debajo de su "memoria física" y entonces la swap se vaciará gradualmente de vuelta a la memoria real, porque tiene que ser leída en la memoria real para que un programa la use, y el SO no intercambiará esa memoria de vuelta si hay mucha memoria física libre disponible. (Solía ser que el espacio de intercambio, una vez asignado, nunca se liberaba del disco, pero ya no es el caso, e incluso cuando era el caso, seguía siendo cierto que el espacio de intercambio asignado sería memoria "libre" o no utilizada una vez que toda la memoria en uso cupiera en la memoria física real). Esto es lo que habría que hacer sin swap, de todos modos.

Así que la respuesta es (a) no, no hay forma de desactivar el intercambio y (b) si hubiera una forma, hacerlo llevaría a tu sistema a congelarse y/o bloquearse, por lo que no vale la pena.

En cuanto a la desactivación de la compresión de la memoria, o como usted dice "Valor 1 para vm.compressor_mode ¿funcionará esto en macOS 10.12 o se bloqueará como en macOS 10.11?", la respuesta es mucho más sencilla: no se puede desactivar la compresión de la memoria. A partir de macOS 10.12 Sierra, si intentas desactivar la compresión configurando vm.compressor_mode a 1, el kernel lo trata como si hubieras puesto vm.compressor_mode a 4 y activa la compresión de la memoria de todos modos. (Ver vm_pageout.c ). Así que no se bloqueará, como con MacOS 10.11, pero tampoco "funcionará" para desactivar la compresión. (AFAIK, los modos de "congelación" son para iOS, para soportar la reanudación rápida al cambiar de aplicación. Requieren que el kernel se compile con CONFIG_EMBEDDED lo que no es el sistema operativo de escritorio).

2 votos

"Si encuentra que el sistema está usando la swap y no le gusta, entonces salga de algunas aplicaciones (o cierre algunas pestañas del navegador) hasta que consiga que su "memoria usada" esté muy por debajo de su "memoria física" y entonces la swap se vaciará gradualmente de vuelta a la memoria real" - esto simplemente NO es cierto. No es cierto. No se recupera la swap sin reiniciar la máquina. Si no fuera así, esta pregunta no existiría con 9 votos positivos.

0 votos

@dszakal No estoy seguro de lo que quieres decir con "no recuperas el canje". Lo que quiero decir, y observo todos los días en mi Mac con El Capitán, es que la pestaña de Memoria del Monitor de Actividad mostrará que la "Swap Usada" disminuye a 0 bytes (o un número muy pequeño) después de que la "Memoria Usada" se sitúe muy por debajo de la "Memoria Física" (no sé exactamente cuánto). Nada en la pregunta pregunta acerca de la reducción de la swap después de que se asigna, por lo que no se puede afirmar que los votos por ella desacreditan mi afirmación.

0 votos

En mi MacBook ahora mismo tengo 32gb de memoria física, 11,95gb de memoria usada y 9,95gb de swap usada. He pasado la última hora tratando de identificar los procesos que puedo matar para reducir el uso de la swap, y he liberado mucha más memoria que la swap utilizada, pero no está intercambiando de nuevo.

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