13 votos

vm_compressor=VM_PAGER_DEFAULT en Yosemite provocaba la congelación cuando la memoria física estaba llena

La compresión de la memoria causaba frecuentemente lag, así que probé a desactivarla usando el comando

sudo nvram boot-args="vm_compressor=1"

El lag desapareció pero se me congeló cuando abrí algunas aplicaciones hambrientas de memoria. Durante el congelamiento, no era posible salir de algunas aplicaciones. Sólo podía mover el cursor del ratón. Después de varios 10 minutos, OSX simplemente se rindió y se reinició. Parecía que OSX se había quedado sin memoria. ¿Es cierto que el localizador por defecto no usa swap?

Activity Monitor Memory Status

Esta es la salida de vm_stat 60 cuando el OSX estaba a punto de fallar. Conseguí salir de algunas aplicaciones esta vez.

Mach Virtual Memory Statistics: (page size of 4096 bytes)
    free   active   specul inactive throttle    wired  prgable   faults     copy    0fill reactive   purged file-backed anonymous cmprssed cmprssor  dcomprs   comprs  pageins  pageout  swapins swapouts
    4058    44827     4657    48725  1634771  1994370    18399  131709K  7262284 57729401   556707   234267       96668      1541        0        0        0        0  7562237   114241        0        0 
    9946    34459     3828    37655  1644905  2010562     5380   276137     9087   169197    23038    24071       75166       776        0        0        0        0    66041     2190        0        0 
    4849    19263     1147    20141  1687072  2051233      887   432193    13109   257173    25604    13480       40135       416        0        0        0        0    56827     4094        0        0 
   58504    23530    44743    21988  1585153  1947800     5595   129338     4993    72054     5776       58       86942      3319        0        0        0        0    81298     1083        0        0 
    4002    39171    38322    29484  1625825  1985636     7638   152421     5034    84976        1       24      101932      5045        0        0        0        0    60968        5        0        0 
    3953    41098     2953    39886  1649756  2008776     6047   128151     5709    70047      565     6361       82653      1284        0        0        0        0    60644       94        0        0 
   17900    37639    22066    40355  1619144  1978515     2208   126851     5895    55252    16022     5178       95881      4179        0        0        0        0    71205     1158        0        0 
    3618    46697     4240    51043  1631256  1991014     6082   157833     6794    84127        3       60       90901     11079        0        0        0        0    54852      206        0        0 

La versión y compilación de OSX es 10.10.2 (14C109)

$ pmset -g
Active Profiles:
Battery Power       -1
AC Power        -1*
Currently in use:
 standbydelay         4200
 standby              0
 womp                 1
 halfdim              1
 hibernatefile        /var/vm/sleepimage
 sms                  1
 networkoversleep     0
 disksleep            10
 sleep                0 (sleep prevented by SubmitDiagInfo)
 hibernatemode        3
 ttyskeepawake        1
 displaysleep         0
 acwake               0
 lidwake              1

$ nvram -p
tbt-options %00
efi-apple-payload0-data %02%01%0c%00%d0A%03%0a%00%00%00%00%01%01%06%00%02%1f%03%12%0a%00%00%00%00%00%00%00%04%01*%00%01%00%00%00(%00%00%00%00%00%00%00%00@%06%00%00%00%00%00%1b|%00%00-/%00%00%ea%0e%00%00%8aO%00%00%02%02%04%04H%00\%00E%00F%00I%00\%00A%00P%00P%00L%00E%00\%00F%00I%00R%00M%00W%00A%00R%00E%00\%00P%00o%00r%00t%00M%00i%00c%00r%00o%00.%00b%00i%00n%00%00%00%7f%ff%04%00
efi-boot-device <array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>23B4430A-E749-440D-85DC-879D5DFFF3A4</string></dict></dict><key>BLLastBSDName</key><string>disk0s3</string></dict></array>%00
fmm-mobileme-token-FMM  ...
SystemAudioVolumeDB %80
prev-lang:kbd   en:0
EFICapsule_Result   STAR
efi-apple-recovery  <array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>00007C1B-2F2D-0000-EA0E-00008A4F0000</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\EFI\APPLE\FIRMWARE\MBP81_0047_27B_LOCKED.scap</string></dict></array>%00
efi-apple-payload1-data %02%01%0c%00%d0A%03%0a%00%00%00%00%01%01%06%00%02%1f%03%12%0a%00%00%00%00%00%00%00%04%01*%00%01%00%00%00(%00%00%00%00%00%00%00%00@%06%00%00%00%00%00%1b|%00%00-/%00%00%ea%0e%00%00%8aO%00%00%02%02%04%04T%00\%00E%00F%00I%00\%00A%00P%00P%00L%00E%00\%00F%00I%00R%00M%00W%00A%00R%00E%00\%00H%00P%00M%00-%00e%00m%00-%000%000%000%002%000%000%000%007%00.%00b%00i%00n%00%00%00%7f%ff%04%00
ThorUpdateResult    %00%00%05%0e%01%03%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00
LocationServicesEnabled %01
fmm-computer-name   MacBook Pro
backlight-level 3%01
efi-apple-payload1  <array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>00007C1B-2F2D-0000-EA0E-00008A4F0000</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\EFI\APPLE\FIRMWARE\HPM-em-00020007.bin</string></dict></array>%00
SmcFlasherResult    %00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00
bluetoothActiveControllerInfo   %1a%82%ac%05%00%00%000%11%fa(%cf%da%ef%ab%c5
efi-apple-payload0  <array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>00007C1B-2F2D-0000-EA0E-00008A4F0000</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\EFI\APPLE\FIRMWARE\PortMicro.bin</string></dict></array>%00
SystemAudioVolume   %80
boot-args   vm_compressor=1
efi-boot-device-data    %02%01%0c%00%d0A%03%0a%00%00%00%00%01%01%06%00%02%1f%03%12%0a%00%00%00%00%00%00%00%04%01*%00%03%00%00%00h%8b/%25%00%00%00%00 _%13%00%00%00%00%00%0aC%b4#I%e7%0dD%85%dc%87%9d]%ff%f3%a4%02%02%7f%ff%04%00
boot-gamma  %10%06%00%00%c5%9c%00%00%00%00%00%00%f2%00%00%00%00%00%00%00%13%00%c1%05%85%00C%0c%86%02%04%12%d6%05F%18/%0b%08!B%15%0c30.O<%1f9UUNSZk%ebh%1dv%f3r%a4%91%10%8a%a5%97%0d%92%a8%a3K%9ej%a9%17%a5%ad%b4%e4%b0%ae%b9]%b7%b3%ccG%cd%b7%dc%8b%dc%fd%f5)%f3%0f%00%01%06y%00%03%0d~%02%04%13%bb%05%06%19l%0a%08!%8c%12%8c3%0e)N;E1%1aj*]%1f%7f%c0o%a4%93y%80%a8%a3%f6%8f%ad%b5%c8%a2%b4%d1%1d%c4%ba%ea%bd%e0%fd%f6%fa%ef%14%00%01%06j%00%03%0d9%02%04%13%1d%05F%19r%09%08!v%10L2%00#%0e:]*%9ex%02^%a3%8eVoi%a6%ea%80%ad%b7w%90%f1%c4v%9d%f4%d1%a5%ab%b7%df8%bd%fb%ec%f7%ce}%f6%b6%dd%fe%f9%9a%e4%ff%fc%cf%ec%ff%fd]%f1%ff%fe%df%f7
bluetoothInternalControllerInfo %1a%82%ac%05%000%11%fa(%cf%da%ef%ab%c5

ls -laO /private/var/vm
total 8388608
drwxr-xr-x   3 root  wheel  -        102 Mar 20 23:13 .
drwxr-xr-x  27 root  wheel  -        918 Oct 20 10:34 ..
-rw------T   1 root  wheel  - 4294967296 Mar 20 22:16 sleepimage

Apple se negó a arreglarlo. Esta es la respuesta de Apple.

No está previsto abordar esta cuestión en base a lo siguiente:

Esta configuración ya no es compatible.

Cerramos ahora este informe.

Si tienes preguntas sobre la resolución, o si esto sigue siendo un problema crítico para ti, entonces por favor actualiza tu informe de error con esa información.

Por favor, asegúrese de comprobar regularmente las nuevas versiones de Apple para cualquier actualización que pueda afectar a este problema.

Así que, ya que Apple no está apoyando esto, me pregunto si ¿Es cierto que el localizador por defecto no utiliza el intercambio?

0 votos

@keithyip ¿Ya has leído la respuesta? aquí ?

0 votos

1 votos

Los comentarios no son para ampliar la discusión; esta conversación ha sido trasladado al chat .

4voto

tolgraven Puntos 96

El problema no es que la paginación esté realmente desactivada, sino que el modo 1 ya no es una implementación de la gestión de memoria estándar, sino un feo truco que impide la compresión haciendo que casi toda la memoria activa esté "conectada", impidiendo así la compresión, pero también el intercambio.

0 votos

Interesante, pero me gustaría ver pruebas de apoyo antes de votar. ¿Algo en código abierto, tal vez?

1 votos

Esto tiene mucho sentido. No tengo un sistema que pueda romper de esta manera - tal vez cuando me girar un poco VM en un poco, voy a tratar de "romper" El Capitán y ver lo que puedo aprender. En la práctica, nunca he necesitado meterme con la VM de Apple y en su lugar me limito a ajustar las aplicaciones que ejecuto o a eliminar otro cuello de botella para seguir siendo productivo.

0 votos

@GrahamPerrin más fácil aún, establecer el modo 1, el fuego en el Monitor de Actividad, echa un vistazo a la "memoria cableada" frente a la "memoria utilizada". Caso cerrado.

4voto

Tometzky Puntos 8230

En OSX Mavericks, también había desactivado la compresión de la VM (a través del vm_compressor=1 boot-arg & reboot), porque parecía implicado en algunas sesiones muy lentas cuando se utiliza un huésped VMWare Fusion de alta memoria RAM. Todo parecía funcionar bien en Mavericks, sin compresión pero con la esperada paginación.

Después de actualizar a OSX Yosemite (10.10.4), se me congelaba el sistema de forma similar a la que describes. (En concreto, después de sólo 10-15 minutos de la luz de navegación web, el ratón / pantalla / teclado se congelaría. Después de otro minuto, la máquina se reiniciaba espontáneamente. El informe del fallo después del reinicio mencionaba un evento de "vigilancia del progreso" en los cuatro casos).

Afortunadamente, lo primero que probé fue volver a activar la compresión de la VM ( vm_compressor=4 ). Después de 4 cuelgues en los primeros 90 minutos de uso de Yosemite, no ha habido ningún cuelgue en los 4 días siguientes.

Así que puedo confirmar: el vm_compressor=1 que parecía funcional antes de Yosemite, ahora parece que se bloquea. Usando el valor por defecto de Mavericks y más allá para este valor, vm_compressor=4 ('VM_PAGER_COMPRESSOR_WITH_SWAP'), parece arreglar.

1 votos

vm_compressor=1 boot-arg & reboot funciona en OS X 10.9 Mavericks, y no funciona en OS X 10.10 Yosemite, tengo curiosidad, ¿funcionará en OS X 10.11 El Capitan?

1 votos

vm_compressor=1 era tan malo que a partir de OS X 10.12 Sierra, vm_compressor=1 se convierte automáticamente en vm_compressor=4 dentro del núcleo. Véase esta respuesta .

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