Diferencia entre autopoweroff y standby en pmset

27

Acabo de recibir un nuevo Retina MacBook Pro 15 ". Después de que algunas descargas se interrumpieron debido a que la computadora se estaba apagando (incluso con alimentación de CA), comencé a buscar el pmsetcomando en la página del manual . Resolví mi problema original con dormir pero Algunas opciones despertaron mi interés. En particular, aquí está la descripción de la autopoweroffconfiguración desde la página del manual:

autopoweroff : cuando sea compatible, habilitado por defecto como implementación del Lote 6 de la Directiva Europea de Productos relacionados con la Energía. Después de dormir durante minutos de apagado automático, el sistema escribirá una imagen de hibernación y entrará en un modo de suspensión de chipset de menor potencia. La activación de este estado llevará más tiempo que la activación del sueño regular. El sistema no se apagará automáticamente si hay dispositivos externos conectados, si el sistema funciona con batería o si el sistema está conectado a una red y se activa el acceso a la red.

Y luego está el standbymodo:

el modo de espera hace que la administración de energía del núcleo hiberne automáticamente una máquina después de que haya dormido durante un período de tiempo específico. Esto ahorra energía mientras duerme. Esta configuración por defecto es ON para el hardware compatible. La configuración en espera estará visible en pmset -g si la función es compatible con esta máquina.

el modo de espera solo funciona si la hibernación está activada en el modo de hibernación 3 o 25.

standbydelay especifica el retraso, en segundos, antes de escribir la imagen de hibernación en el disco y apagar la memoria para Standby.

Ahora tal vez solo estoy siendo grueso, pero parece que ambas opciones hacen esencialmente lo mismo. La principal diferencia que veo es que standbyrequiere un específico hibernatemode.

Concretamente, la forma en que me gustaría configurar mi computadora es que duerma solo con RAM (exactamente como lo hibernatemode 0hace) al cerrar la tapa por primera vez, de modo que se vaya a dormir rápidamente, sin escribir el contenido de RAM en el disco de inmediato. Sin embargo, si dejo la computadora durmiendo con la tapa cerrada durante un cierto número de horas (digamos 4 horas), me gustaría que solo luego escriba el contenido de la RAM en el disco y apague la computadora, para ahorrar batería caso de un sueño prolongado. Idealmente, también me gustaría que la segunda parte (escribir RAM en el disco y apagar) ocurra solo si la computadora funciona con batería.

El razonamiento aquí es que, para mí, el caso de uso común para dormir es llevar la computadora de casa al trabajo y de regreso, y no tiene sentido ralentizar el proceso de sueño y desperdiciar los ciclos de escritura SSD (así como ralentizar el despertar). proceso, si hiberna) si voy a despertarlo nuevamente en menos de una hora; Además, dado que el tiempo que pasa durmiendo es tan corto, no se ahorraría mucha batería al apagar la computadora por un período tan corto.

¿Cómo debo configurar los hibernatemode, autopoweroff, autopoweroffdelay, standbyy standbydelayopciones para lograr este comportamiento?

cerdos
fuente
Tengo una pregunta: en mi Macbook pro 2015 (12,1) pmset -g muestra: autopoweroffdelay 14400 Nunca lo cambié, por lo que es la configuración de fábrica. Pero "man pset" muestra: autopoweroffdelay - retraso antes de ingresar al modo autopoweroff. (Valor = entero, en minutos) Entonces, con la configuración de fábrica establecida en 14400, mi Mac no entrará en modo de reposo seguro antes de ... ¡10 días! Curioso, ¿no es así?
Tengo curiosidad, ¿cómo resolvió su problema de interrupción de descarga?
Dickster

Respuestas:

13

La función de apagado automático también se menciona en http://support.apple.com/kb/HT1757 :

Con el lanzamiento de la actualización complementaria 2.0 de OS X Mountain Lion v10.8.2, se introdujo una nueva característica para entrar en modo de suspensión segura después de cuatro horas de la computadora conectada a la alimentación de CA. Este es un esfuerzo para cumplir con los Estándares Europeos de Energía (ErP Lot6). Esto solo ocurrirá si no hay actividad inalámbrica o Ethernet y no hay actividad de dispositivos externos como dispositivos de almacenamiento USB.

Este es un comportamiento normal para los siguientes modelos:

  • MacBook Pro (mediados de 2012 y posterior)
  • MacBook Pro (Retina, mediados de 2012 y posterior)
  • MacBook Air (mediados de 2012 y posterior)
  • iMac (finales de 2012 y posterior)
  • Mac mini (finales de 2012 y posterior)

El modo de espera está documentado en http://support.apple.com/kb/ht4392 :

Macs que pueden usar el modo de espera:

  • MacBook Pro (Retina, 13 pulgadas, finales de 2012) y posterior
  • MacBook Pro (Retina, 15 pulgadas, principios de 2013) y posterior
  • MacBook Pro (Retina, mediados de 2012)
  • MacBook Air (mediados de 2010) y posterior
  • Versiones de unidad SSD y Fusion de Mac mini (finales de 2012) y posteriores
  • Versiones de unidad SSD y Fusion de iMac (finales de 2012) y posteriores

Las computadoras Mac fabricadas en 2013 o posteriores entran en modo de espera después de tres horas de suspensión "normal". Las computadoras anteriores se activan después de poco más de una hora de sueño "normal".

Para ingresar al modo de espera, la computadora debe:

  • Funciona con batería (si es una computadora portátil Mac).
  • No tiene dispositivos USB conectados.
  • No tiene dispositivos Thunderbolt conectados.
  • No tiene una tarjeta SD insertada.
  • No tiene pantalla externa conectada.
  • Una computadora con una batería completamente cargada puede permanecer en espera por hasta treinta días sin estar conectada a una fuente de alimentación de CA.

El estado de la computadora se guarda en el almacenamiento flash (SSD), luego se apaga la alimentación de los subsistemas de hardware para aumentar la duración del modo de espera. Por ejemplo, la memoria RAM y el bus USB se apagan durante el modo de espera.

Por lo tanto, el modo de espera y el apagado automático son compatibles con diferentes modelos de Mac y se habilitan en diferentes condiciones. El modo de espera se introdujo en 2010 e inicialmente solo era compatible con MacBook Airs, pero ahora es compatible con todos los Mac nuevos, excepto Mac Pros, iMacs sin SSD y Mac minis sin SSD. autopoweroff se introdujo en 2012 y es compatible con todos los Mac nuevos, excepto Mac Pros.

No sé si el estado de estar en modo de espera es diferente del estado de apagado automático. Se muestra una pantalla gris con una barra de progreso cuando una Mac se activa desde ambos estados.

Tenga en cuenta que Apple ha usado el "modo de suspensión segura" para referirse tanto al modo de suspensión híbrido como al modo de hibernación que las computadoras portátiles usan de manera predeterminada (como en http://support.apple.com/kb/PH11096 ) y al estado de solo hibernación (como en la primera cita del bloque anterior).

Incluso si configura el modo de espera en 0 y deshabilita el modo de espera y el apagado automático, no desperdiciará tanta energía. Las computadoras portátiles nuevas usan aproximadamente 0.7-1W de energía en modo de suspensión y aproximadamente 0.2-0.3W cuando están apagadas o en modo de hibernación.

Lri
fuente
Entonces, ¿parece que la principal diferencia es que autopoweroffse aplica a la alimentación de CA y standbya la batería? Supongo que el standbymodo es lo que realmente necesito entonces.
swineone
Al hablar sobre el desperdicio de energía, multiplique sus números por el número de computadoras portátiles en el planeta. Además, tal vez me estoy perdiendo algo, pero ¿por qué algo usaría el poder "cuando está apagado"?
eggyal
25

Traté de resumir todas las configuraciones en una imagen.

Para OS X 10.9 (sería un poco diferente con un SO más nuevo)

Dormir en esperafuente

Yo diría que solo hay dos "modos": suspensión e hibernación

  • Suspender : los datos se guardarán en la memoria.
  • Hibernación : (o en espera? SafeSleep? DeepSleep?) Los datos se guardarán en el disco duro y requieren un consumo de energía significativamente menor.

Aquí hay resúmenes de mi comprensión.

  1. si [sleep == 0] , la computadora ya no dormirá ni hibernará.
  2. si [standby == 1] y [hibernatemode == 3] , la computadora esperará otros [standbydelay] minutos antes de entrar realmente en hibernación.
  3. [autopoweroff] es solo una implementación adicional para cumplir con los requisitos reglamentarios y tiene el mismo impacto equivalente a 2)
  4. 2) o 3) surten efecto si se alcanza uno de ellos al principio.
  5. si [standby == 1] y [hibernatemode == 25] , la computadora entrará en hibernación inmediatamente después de [dormir] minutos.

Nota: en MacOS 10.13 autopoweroffdelayespecifica el retraso, en seconds, antes de ingresar al autopoweroffmodo.

¿Alguien puede revisar y confirmar la interpretación? Gracias

elgcom
fuente
1
¡Esta imagen es asombrosa!
Andrea Bergonzo
Gran imagen! Creo que la man pmset
demora de apagado automático
man pmset -> autopoweroffdelay - retraso antes de ingresar al modo autopoweroff. (Valor = entero, en minutos)
elgcom
1
Me pregunto si la cosa de segundos / minutos varía según el modelo. Mi página de manual dice "autopoweroffdelay especifica el retraso, en segundos, antes de ingresar al modo autopoweroff".
Kelvin
Gran gráfico! Pero ningún comentario lo confirma explícitamente, y aún no es la respuesta más votada. Si se confirmara, esta respuesta merecería ser la respuesta principal, ya que la combinación de infografía + explicación la convierten en la respuesta más eficientemente digerible.
porg
12

Esta cosa de hibernación / sueño me ha estado volviendo loco. Y estoy de acuerdo en que Apple debería poner más energía en arreglar este comportamiento pmset.

Estaré claro. Me encanta el modo de hibernación y solía funcionar perfectamente en modelos y sistemas operativos más antiguos (basta con ejecutar sudo pmset hibernatemode 25). Ahora Apple rompió algo y esto simplemente no funciona desde Yosemite.

Tengo una retina ahora y ahora más que nunca la opción de hibernación tiene mucho más sentido que la suspensión. No entiendo por qué las personas que tienen SSD aman tanto dormir sobre hibernar, simplemente no entiendo que no entienden la diferencia de hora de despertar entre hibernar y dormir es de 1 segundo, pero ahorran toneladas de batería, alguien me explica qué ven como la gran ventaja porque no la entiendo. De todos modos, (si amas hibernar tanto como a mí, sigue leyendo) Quería que hibernate funcionara. Me llevó semanas hacerlo funcionar y compartiré lo que hice con todos ustedes.


Tiene que restablecer el SMC y luego la NVRAM / PRAM primero:

Restablezca el SMC ( http://support.apple.com/kb/ht3964 ):

  1. Apagar el equipo.
  2. Conecte el adaptador de corriente MagSafe a una fuente de alimentación y conéctelo a la Mac si aún no está conectado.
  3. En el teclado incorporado, presione al mismo tiempo las teclas Shift-Control-Option (lado izquierdo) y el botón de encendido.
  4. Suelta todas las teclas y el botón de encendido al mismo tiempo.
  5. Presione el botón de encendido para encender la computadora.

Nota: El LED del adaptador de corriente MagSafe puede cambiar de estado o apagarse temporalmente cuando reinicia el SMC.

Restablecimiento de NVRAM / PRAM ( http://support.apple.com/kb/HT1379 ):

  1. Apaga tu Mac.
  2. Localice las siguientes teclas en el teclado: Comando, Opción, P y R. Deberá mantener presionadas estas teclas simultáneamente en el paso 4.
  3. Enciende el ordenador.
  4. Mantenga presionadas las teclas Comando-Opción-PR antes de que aparezca la pantalla gris.
  5. Mantenga presionadas las teclas hasta que la computadora se reinicie y escuche el sonido de inicio por segunda vez.
  6. Suelta las llaves.

Ahora ejecute estos:

C.A:

sudo pmset -c sleep 0
sudo pmset -c standby 0
sudo pmset -c standbydelay 5
sudo pmset -c hibernatemode 25

Batería:

sudo pmset -b sleep 120
sudo pmset -b standby 1
sudo pmset -b standbydelay 5
sudo pmset -b hibernatemode 25

Todos:

sudo pmset -a acwake 0
sudo pmset -a lidwake 0
sudo pmset -a ttyskeepawake 0
sudo pmset -a darkwakes 0

¡Todo listo! Configure el MacBook para que duerma y cuando lo despierte verá una barra de progreso antes de que la computadora esté lista. Eso significa que el MacBook estaba hibernando. (nota: odio que hayan quitado la luz para dormir del MacBook Pro, eso fue muy útil)

pepeanto
fuente
Esto funcionó para mí usando MacBook Pro de finales de 2008 con El Capt.
squarecandy
¿No se reemplaza la hibernación por autopoweroffaka sueño profundo? ¿O estás diciendo que es preferible?
Sr. Boy
Creo que la razón por la que a la gente no le gusta el hiberate (al menos con apagado automático) es porque mata tus pestañas de Chrome, mata tus servidores rails / nodejs, mata tu proceso nativo de reacción, básicamente destruye tu productividad como ingeniero que no tiene su computadora portátil encendida durante la noche.
Eric Goldberg
¿Alguna idea sobre qué comando deshabilitar la activación del trackpad / teclado?
Rodrigo Polo
@EricGoldberg - Creo que está hablando de "reinicio del sistema al reiniciar", donde el sistema arranca de manera normal y recrea todas las ventanas. Hibernate es solo otra forma de dormir su Mac que usa mucha menos energía porque la RAM se guarda en el disco. Vea la última sección del sitio de DeepSleep que incluye un video que muestra la diferencia. No estoy sugiriendo esta herramienta, aunque fue bastante conveniente en El Capitan 10.11 para seleccionar hibernación versus sueño normal.
RichVel
1

Esta es una buena compilación y yuxtaposición de los dos modos de administración de energía: en espera frente a apagado automático, pero las conclusiones hechas anteriormente no son del todo correctas en mi humilde opinión.

Tengo un Macbook Pro 15 "a mediados de 2012 (no SSD), y es compatible con el modo de espera y el apagado automático. Los artículos citados anteriormente no muestran que MacBook Pro a mediados de 2012 sea compatible con el modo de espera; sin embargo, a continuación se muestra la salida del" pmset -g cap "en mi MacBook Pro:

$ pmset -g cap
Capabilities for AC Power:
 displaysleep
 disksleep
 sleep
 womp
 acwake
 lidwake
 halfdim
 sms
 gpuswitch
 standby
 standbydelay
 ttyskeepawake
 hibernatemode
 hibernatefile
 autopoweroff
 autopoweroffdelay

He tenido todo tipo de problemas de administración de energía desde Mountain Lion; La computadora hibernaba después de irse a dormir, así que comencé a buscar el comando "pmset". A veces, sin embargo, parecía que la hibernación de "apagado automático" sería activada por el temporizador de "retardo de apagado automático", pero la hibernación "en espera" no sería activada por el temporizador de "retardo de espera". La administración de energía nunca ha funcionado correctamente desde Mountain Lion, incluso en Mavericks.

Acabo de mirar en el registro del comando pmset, y parece que mi MacBook Pro se despertó "Dark Wake" a las 11:02 PM "debido a EC.ACAttach / Maintenance" y luego nuevamente a las 3:32 "debido a Actividad EHC1 / HID ". El dispositivo AHC1 / HID es mi teclado Bluetooth Logitech o mi Magic Trackpad.

pmset -g stats

4/17/14, 7:06:08 PM EDT  Sleep                  Clamshell Sleep: Using BATT (Charge:99%)                                              
4/17/14, 7:06:11 PM EDT  SlowResponse           PMConnection: Response from com.apple.apsd is slow (powercaps:0x0)                    3038 ms       
4/17/14, 7:06:34 PM EDT  Assertions             PID 33194(AddressBookSour) Released PreventUserIdleSystemSleep "Address Book Source Sync" 00:00:30  id:0x100000b31 [System: No Assertions]            
4/17/14, 7:06:34 PM EDT  Assertions             PID 172(UserEventAgent) Released BackgroundTask "com.apple.AddressBook.ScheduledSync" 00:00:30  id:0xc00000b32 [System: No Assertions]            
4/17/14, 7:06:36 PM EDT  Timedout               PMConnection: Response from CMacPowerHelper timed out (powercaps:0x0)                 27999 ms      
4/17/14, 7:06:36 PM EDT  WakeRequests           Clients requested wake events: None                                                   

4/18/14, 11:02:09 AM EDT                        Summary- [System: No Assertions] Using AC                                             
4/18/14, 11:02:14 AM EDT DarkWake               DarkWake [CDN] due to EC.ACAttach/Maintenance: Using AC (Charge:87%)        1 secs    
4/18/14, 11:02:14 AM EDT Timedout               Kernel: Response from Messages timed out (powercaps:0x9)                              30000 ms      
4/18/14, 11:02:14 AM EDT SlowResponse           Kernel: Response from powerd is slow (powercaps:0x0)                                  28003 ms      
4/18/14, 11:02:14 AM EDT Assertions             PID 16(powerd) Created InternalPreventSleep "com.apple.powermanagement.acwakelinger" 00:00:00  id:0xe00000b3f [System: PrevIdle SRPrevSleep kCPU]             
4/18/14, 11:02:15 AM EDT Wake                   DarkWake to FullWake [CDNVA] due to HID Activity: Using AC (Charge:87%)               
4/18/14, 11:02:17 AM EDT SlowResponse           PMConnection: Response from com.apple.notificationcenter.dnd is slow (powercaps:0x1f)             1536 ms       
4/18/14, 11:02:47 AM EDT Assertions             PID 33219(SubmitDiagInfo) Released PreventUserIdleSystemSleep "com.apple.SubmitDiagInfo.run" 00:00:36  id:0x100000b3e [System: PrevIdle BGTask SRPrevSleep kCPU]              
4/18/14, 11:02:59 AM EDT Assertions             PID 16(powerd) TimedOut InternalPreventSleep "com.apple.powermanagement.acwakelinger" 00:00:44  id:0xe00000b3f [System: PrevIdle BGTask SRPrevSleep kCPU]             
4/18/14, 11:02:59 AM EDT Assertions             PID 16(powerd) Released InternalPreventSleep "com.apple.powermanagement.acwakelinger" 00:00:44  id:0xe00000b3f [System: PrevIdle BGTask SRPrevSleep kCPU]             
4/18/14, 11:03:13 AM EDT Assertions             PID 33240(AddressBookSour) Released PreventUserIdleSystemSleep "Address Book Source Sync" 00:00:53  id:0x100000b5b [System: BGTask]           
4/18/14, 11:03:13 AM EDT Assertions             PID 172(UserEventAgent) Released BackgroundTask "com.apple.AddressBook.ScheduledSync" 00:00:53  id:0xc00000b5c [System: BGTask] 

4/19/14, 3:32:20 AM EDT  Wake                   Wake [CDNVA] due to EHC1/HID Activity: Using AC (Charge:99%)                7182 secs 

El MacBook Pro nunca entró en el modo "hibernar" porque mantuve el temporizador "autopoweroffdelay" en su valor predeterminado de 14,400 segundos (4 horas) tanto para la energía de la batería como de la corriente alterna. Establecí manualmente el "retraso de espera" en 28.800 segundos (8 horas) para la energía de la batería y en 100.800 segundos (28 horas) para la alimentación de CA. La única forma de saber con certeza qué opción de "hibernación" se inicia ("autopoweroff" o "standby") es establecer una en un intervalo de tiempo muy corto, como 1 hora después de que la Mac se "apague". Entonces se puede ver qué modo de "hibernación" activó la Mac para "hibernar".

No es necesario decir que es inaceptable que Apple no pueda hacer que esto funcione correctamente durante varios años. Las funciones compatibles con el comando "pmset" deben limpiarse, y las opciones compatibles deben estar disponibles en la GUI en Preferencias del sistema.

usuario76158
fuente