10.12 Sierra Suspension d’activité MacBook Pro qui se transforme en veille prolongée ?

Xamehto

Membre enregistré
27 Mai 2018
9
0
24
Salut à tous !
Après bien des recherches un peu partout sans réponses, je vais exposer mon pb ici.
Il y a de ça 1 semaine j’ai changé mon HDD d’origine sur mon MacBook Pro mid 2012 pour un SSD crucial, après une clean install de Sierra, je remarque que lorsque je ferme le capot de ma bécane, et qu’elle se met en suspension d'activité, après plusieurs heures, la diode qui d’habitude clignote s’éteint.
Et quand j’ouvre à nouveau mon Mac, il met plusieurs minutes à s’allumer (mon lecteur de CD s’allume, et fait du bruit comme au démarrage)
C’est comme si il était en veille “prolongé”
Si qq a une solution je suis preneur ;)
 
Bonjour Xamehto

Va à : Applications > Utilitaires > lance le Terminal.app. Dans la fenêtre qui s'est ouverte > saisis la commande (en respectant les espaces) :
Bloc de code:
pmset -g custom

et ↩︎ (presse la touche "Entrée" du clavier pour exécuter la commande)

  • la commande affiche (en double tableau superposé) --> les paramètres d'économie d'énergie pour le Mac alimenté sur batterie (Battery Power) > et sur secteur (AC Power)

Poste cet affichage complet ici en copier-coller > mais en veillant à utiliser le procédé suivant qui permet une bonne lisibilité -->

  • dans la page de ce fil de MacGé > presse le bouton (carré avec un + inscrit - juste au milieu de la largeur de la fenêtre totale) dans la barre de menus au-dessus du champ de saisie d'un message > menu  : </> Code > par ⌘V colle dans la fenêtre Code > presse le bouton Insérer (ce procédé permet un affichage fenêtré qui économise l'espace de page en respectant la mise en forme des tableaux du «Terminal» --> d'où une plus grande lisibilité)

L'examen de ces tableaux permettra de voir s'il y a un paramétrage qui induit le phénomène de passage du sommeil simple (sommeil-Système ou sommeil du kernel) --> à l'hibernation (extinction du kernel et reprise à partir d'un fichier sleepimage d'archivage de la RAM).
 
Bloc de code:
Battery Power:
lidwake              1
autopoweroff         1
autopoweroffdelay    14400
standbydelay         4200
standby              1
ttyskeepawake        1
hibernatemode        3
gpuswitch            2
hibernatefile        /var/vm/sleepimage
displaysleep         5
sleep                15
acwake               0
halfdim              1
sms                  1
lessbright           1
disksleep            0
AC Power:
lidwake              1
autopoweroff         1
autopoweroffdelay    28800
standbydelay         4200
standby              1
ttyskeepawake        1
hibernatemode        3
gpuswitch            2
hibernatefile        /var/vm/sleepimage
womp                 1
displaysleep         10
networkoversleep     0
sleep                0
acwake               0
halfdim              1
sms                  1
disksleep            10
 
Est-ce que ton problème surgit dans ton usage "à la maison" --> le MacBook Pro se trouvant alimenté par le secteur ? -->

  • je pose cette question > afin de pouvoir privilégier directement un tableau de paramètres plutôt que l'autre
 
Est-ce que ton problème surgit dans ton usage "à la maison" --> le MacBook Pro se trouvant alimenté par le secteur ? -->

  • je pose cette question > afin de pouvoir privilégier directement un tableau de paramètres plutôt que l'autre
Ca arrive dans les deux cas, plus souvent sur secteur puisque je le laisse charger la nuit ;)
 
Dernière édition:
Alors je me concentre dans un 1er temps sur les paramètres "sur secteur". Voici les paramètres qui importent ici (j'ai réarrangé l'ordre du tableau) -->
Bloc de code:
AC Power:
displaysleep         10
disksleep            10
sleep                0

autopoweroff         1
autopoweroffdelay    28800

standbydelay         4200
standby              1

hibernatemode        3
hibernatefile        /var/vm/sleepimage

  • Tu as une triplette : displaysleep (sommeil de l'écran) = 10' de délai après inactivité en session > disksleep (sommeil du disque) = 10' > sleep (sommeil du kernel) = 0. Le Système ne se met donc jamais en sommeil automatiquement après un délai imparti > mais de manière forcée quand tu rabats manuellement le capot.
  • Le standby est activé (1) > avec un délai de 4200 secondes (1H 16') après le commencement du sommeil-Système. Ce qui détermine une extinction du kernel et le passage à l'hibernation.
  • L'autopoweroff est aussi activé (1) > avec un délai de 28800 secondes (8 H). Ce qui induit une mise en sommeil profond (norme européenne) > si l'hibernation (standby) n'est pas effective - ce qui est le cas --> donc l'autopoweroff est forclos.
  • L'hibernatemode (mode du passage au sommeil) est sur 3 > ce qui veut dire que dès la mise en sommeil-Système --> les contenus de la RAM sont archivés à un fichier sleepimage du disque et que la RAM est désactivée. Lors du réveil du Mac de l'hibernation (standby) > le contexte de la RAM est récupéré depuis la sleepimage.
----------

Voici ce que je te propose --> ne concernant à ce stade que les paramètres du tableau : alimentation "sur secteur" -->

  • réduire le délai de displaysleep & disksleep à 5 minutes (d'inactivité en session) > et créer un délai du sleep à 10'
  • désactiver le standby et l'autopoweroff
  • virer le mode d'hibernation à 0 (pas de sleepimage et RAM maintenue sous tension pendant le sommeil-Système)

Passe la commande (copier-coller) :
Bloc de code:
sudo pmset -c displaysleep 5 disksleep 5 sleep 10 standby 0 autopoweroff 0 hibernatemode 0

  • après validation --> un demande de password s'affiche (commande sudo) --> tape ton mot-de-passe de session admin en aveugle - aucun caractère ne s'affichant à la frappe - et revalide
  • cette commande édite le fichier /Library/Preferences/com.apple.PowerManagement.plist. Les paramètres inscrits sont parfaitement éditables par une autre commande.

Cela fait > redémarre une fois pour que le nouveau paramétrage soit chargé. Je te recommande instamment l'attitude suivante : ne rabats pas manuellement le capot pour forcer le sommeil du kernel --> laisse le Mac ouvert (s'il n'y a pas d'inconvénient à le faire à la maison sur secteur) et laisse le paramétrage du sommeil du kernel opérer automatiquement après un délai de 10'. En conséquence : au moindre appui sur une touche > ton Mac devrait se réveiller instantanément > la RAM ayant toujours été maintenue sous tension.
 
C'est fait, j'ai eu ce message
Bloc de code:
Warning: Idle sleep timings for "Battery Power" may not behave as expected.
- Disk sleep should be non-zero whenever system sleep is non-zero.
j'ai retape la commande pmset -g custom pour voir si tout avais été pris en compte et ça me semble bon. Avec ça mon mac restera en suspension d'activité sans se mettre en veille profonde ?
 
Avec ça mon mac restera en suspension d'activité sans se mettre en veille profonde ?

  • oui : aussi longtemps qu'il se trouve alimenté sur secteur

----------

On peut si tu veux --> effectuer à présent un reparamétrage de l'alimentation sur batterie -->

  • peux me décrire un peu l'usage que tu fais de ton Mac sur batterie : est-ce également à la maison ? - ou bien en mode nomade ?
 
  • peux me décrire un peu l'usage que tu fais de ton Mac sur batterie : est-ce également à la maison ? - ou bien en mode nomade ?
Je le prend avec moi pour le travail, je bouge a droite a gauche donc généralement je ferme le capot, et je le prend sous le bras.
C'est souvent dans ces moments là que des que je le ré-ouvre il met beaucoup de temps a revenir a lui :shifty:
 
D'accord.

Est-ce que tu as toujours une bonne marge d'autonomie (charge de batterie) ? - ou bien est-ce que c'est limite en fin d'exercice ?
 
Je te dis ça pour savoir s'il est possible de convertir l'hibernatemode (modalité de la mise en sommeil) -->

  • de la valeur 3 = écriture de la RAM à une sleepimage (fichier archive du disque) > désactivation de la RAM > passage au sommeil-Système --> ce qui implique un réveil lent > car le contexte de la RAM se trouve rechargé d'après la sleepimage
  • à la valeur 0 = pas d'écriture de la RAM à une sleepimage -> maintien de la RAM sous tension > passage au sommeil-Système --> ce qui implique un réveil instantané > car le contexte de la RAM a été préservé

- la valeur 3 est une sécurité en cas de coupure due à un vidage de la batterie --> la sleepimage archive le contexte de la RAM. Avec une valeur 0 > s'il y a une coupure due au vidage de la batterie --> rien ne préserve le contexte de la RAM > lequel est perdu. Inversement : la valeur 3 implique un réveil lent (réactivation de la RAM > rechargement de la RAM à partir de la sleepimage) > alors que la valeur 0 induit un réveil instantané. Il faut alors surveiller personnellement le niveau de charge de la batterie > afin de ne pas risquer une coupure qui effacerait la RAM.

=> est-ce que tu veux faire un test = hibernatemode 0 sur batterie ?
 
L'ideal serais que je garde l'état de suspension d'activité (diode qui "respire"), sans tomber dans la mise en veille profonde (diode éteinte) mais tout en préservant l'état de ma batterie. Quand j'étais sur High Sierra avant de changer mon disque, mon mac restait dans cet état sur secteur ET sur batterie (a la fermeture du capot la diode clignotais et continuais de clignoter apres plusieurs heure), et pourtant j'avais rien bidouillé ^^
 
Passe la commande :
Bloc de code:
sudo -b standby 0 autopoweroff 0 displaysleep 4 disksleep 4 sleep 6

  • le standby & l'autopoweroff sont désactivés > les sommeils écran & disque ramenés à 4' de délai > le sommeil-Système à 6' (d'inactivité en session)
  • l'hibernatemode est laissé à 3

Cette édition de paramètres concerne exclusivement l'alimentation sur batterie. Tu peux vérifier par une commande :
Bloc de code:
pmset -g custom

  • s'il ont bien été inscrits au fichier de référence. Redémarre une fois pour qu'ils soient chargés par le kernel.

Cela fait > teste chez toi (sur batterie) si > après rabat du couvercle > si son relèvement induit un réveil rapide du Mac ou toujours aussi lent qu'avant.
 
Ah ! pardon -> j'ai omis pmset dans la commande. Voici la commande valide :
Bloc de code:
sudo pmset -b standby 0 autopoweroff 0 displaysleep 4 disksleep 4 sleep 6
 
Pas de soucis ^^ !
J’ai rentré la commande, je vais laisser mon mac fermer pendant une bonne heure pour voir. Par contre la mise en suspension a l’air plus lente maintenant lorsque je ferme le capot.
Je te tiens au courant ! Merci ;)
 
Bonjour,
Je me permet de relancer ce sujet car je n'ai pas trouver de réponses à mes questions...

J'ai un MacBookPro 2011 tournant sous High Sierra dernière version.

Voilà mon (mes) problèmes

  • Déjà, quand je rabat mon écran mon Mac ne se met pas en veille (les ventilateurs tournent toujours et la diode ne clignote pas). Sauf que quand je le rouvre parfois il se remet en veille pour s'enlever de la veille directement (oui comme si il voulait me faire croire qu'il avait été en veille en gros... Ce problème existe également quand je lui demande de suspendre l'activité.. Bref il ne se met pas en veille. J'ai regardé dans le moniteur d'activité, le seul processus qui empêche la mise en veille est _hidd qui d'après mes renseignements correspond à l'interface des périphériques genre clavier/souris : https://www.thegeekpub.com/4170/what-is-hidd-why-is-it-running/
  • Mon second problème est que quand je l'éteins, les fenêtres que j'avais soigneusement placé dans des spaces différents ne se retrouve plus que dans un seul space distinct.
Ce que j'aimerais bien c'est que d'une part mon Mac se mette en veille quand je lui demande et d'autre part avoir une veille prolongé (donc avec un fichier de sleepimage) au bout d'une quinzaine de minutes pour économiser ma batterie au mieux et surtout retrouvé mes Spaces exactement comme je les avaient laissé.

J'ai essayé quelques commandes dans le terminal mais sans succès (en plus impossible de mettre le man pmset dans un fichier sans que ce dernier soit illisible, je ne sais pas pourquoi...)

Bref, merci d'avance pour votre aide qui me sera sans doute précieuse :)
 
Salut Baptiste

Passe dans le Terminal la commande :
Bloc de code:
pmset -g custom

  • qui va afficher sous forme de double tableau superposé --> les paramètres d'économie d'énergie en position "sur batterie" et "sur secteur".

Poste ce tableau ici dans une fenêtre de code en utilisant le procédé suivant (important pour la lisibilité) -->

  • dans la page de ce fil de MacGé > presse le bouton
    InsererCodeMcGe.jpg
    (carré avec un + inscrit - juste au milieu de la largeur de la fenêtre totale) dans la barre de menus au-dessus du champ de saisie d'un message > menu  : </> Code > par ⌘V colle dans la fenêtre Code > presse le bouton Insérer (ce procédé permet un affichage fenêtré qui économise l'espace de page en respectant la mise en forme des tableaux du «Terminal» --> d'où une plus grande lisibilité)

L'examen des paramètres actifs permettra peut-être de déceler une anomalie qui pourrait être corrigée.

----------

J'aurais besoin d'éclairage de ton contexte d'utilisation -->

  • est-ce que tu te sers de ton MacBook Pro 2011 uniquement en mode bureau (à la maison) ? - ou aussi en mode nomade ?
  • parce que > si tu ne te sers de ton MacBook Pro qu'en mode bureau --> il n'y a intrinsèquement aucune nécessité ni de rabattre le couvercle du Mac pour le mettre en veille > ni de l'éteindre périodiquement (étant assumé que l'espace domestique soit un espace sécurisé où l'on peut laisser un Mac non éteint en position de sommeil simple).
  • en ce qui me concerne (pour donner un contre-exemple) --> j'ai aussi un MacBook Pro 15" Early_2011 posé sur un bureau et constamment alimenté par le secteur qui me sert exclusivement à un usage domestique. Je ne rabats jamais son couvercle et je n'éteins jamais ce Mac par principe. J'ai réglé les paramètres d'économie d'énergie de telle façon qu'il se mette en sommeil simple au bout d'un délai de 10' d'inactivité dans la session sans écriture du contexte de la RAM à une sleepimage. Ce qui signifie : mise-en-sommeil automatique du kernel (noyau opérateur du Système) > sans désactivation de la RAM. Dès que j'appuie sur une touche > le Mac se réveille instantanément en affichant le Bureau à partir de la RAM préservée. Même si le rabat du couvercle est censé provoquer le sommeil du kernel (sleep) de la même façon que le réglage d'un délai d'inactivité dans la session --> je ne suis pas sûr que les opérations soient identiques > car le rabat du couvercle induit une mise-en-sommeil forcée (brusquée) qui n'est sans doute pas aussi propre (logiciellement parlant) que la prise d'effet d'une instruction programmée de passage au sommeil.