MacXtrem

Articles

AccueilArticlesOverclock

Rechercher dans :    (4 caractères min)

Safe Sleep : explications et tests

Voici un article qui vous explique en détail comment fonctionne le Safe Sleep sur les nouveaux Powerbooks, mais aussi sur les autres Macs.

Safe Sleep ?

Le Safe Sleep est une nouvelle fonctionnalité des derniers Powerbooks. Il permet, lors de la mise en veille de la machine, de copier sur le disque dur l'intégralité de la RAM sur le disque dur. La machine se met en veille, et si pendant la période de veille elle se retrouve hors tension, au prochain démarrage, elle ira récupérer le contenu de la RAM enregistré sur le disque.


Installation sur tous les Macs... ou presque

Comme vous avez pu le lire ailleurs, il est maintenant possible, depuis la mise à jour MacOS X 10.4.3, d'appliquer cette fonction sur d'autres machines que les derniers portables Apple. Pour cela, il suffit d'exécuter, il suffit de se rendre sur cette page et de télécharger les scripts terminal disponibles à cette adresse.
Attention, cela ne marche apparemment que sur les machines disposant de mémoire DDR.
On trouve aussi un script spécial pour les machines utilisant un hack pour forcer l'affichage en bureau étendu.

Une fois le script exécuté, il faut exécuter la commande suivante dans le terminal pour choisir l'un des 3 modes de fonctionnement du Safe Sleep :

sudo pmset -a hibernatemode 0

Le 0 correspond à l'un des modes suivants :

- Mode 0 : Safe Sleep désactivé, le mac se comportera comme il le faisait avant.

- Mode 1 : le Safe Sleep s'active à chaque mise en veille. Lors de la mise en veille, le système copie le contenu de la mémoire sur le disque, puis éteint l'ordinateur. Puis, à la réactivation, l'opération inverse se produit, le contenu de la mémoire passe du disque à la RAM. Ce mode présente l'avantage de ne nécessiter aucune consommation de courant lorsque l'ordi est en veille, puisqu'il est en fait éteint.
Dans ce mode, comme l'ordi est éteint quand il passe en veille, il faut le réactiver en appuyant sur le bouton de démarrage.

- Mode 3 : Dans ce mode, lors de la mise en veille, le contenu de la RAM est copié sur le disque, comme en mode 1. Mais l'ordinateur reste en veille classique, donc allumé. La réactivation se passe comme en mode 0, à moins que l'ordinateur soit en panne de courant. Dans ce cas, on peut, une fois qu'on a rebranché l'ordi, récupérer son travail comme en mode 1.

- Modes 5 et 7 : Ces modes correspondent respectivement aux modes 1 et 3, mais ne doivent être utilisés que si la mémoire virtuelle sécurisée est activée. Et seulement dans ce cas.

Vous l'aurez compris, c'est le mode 3 qui est utilisé par défauts sur les nouveaux Powerbooks.


Tests de performance

Maintenant que le Safe Sleep est installé, voyons un peu ce que ça donne en terme de performances... Car la lecture et l'écriture de la mémoire sur le disque, et inversement, prends forcément du temps. Nous sommes tous habitués à la mise en veille et au réveil quasi-instantanés sur nos Macs. Voyons donc le temps de mise en veille et de réactivation suivant les différents modes.

Pour les tests, nous avons utilisé 2 machines : un Powerbook Alu (512Mo de RAM) et un G4 MDD (1Go de RAM).
Chacun des 3 modes a été testé, et pour le mode 3, nous avons aussi testé le cas ou l'alimentation de l'ordinateur est totalement coupée.
Les tests ont été faits dans des conditions extrêmes, c'est à dire que chacune des machines de test avait un maximum d'applications lancées, pour remplir la RAM. Il est évident que plus la RAM est utilisée, plus le temps de mise en veille/restauration est long.

Les résultats sont donnés en secondes (mise en veille / réactivation) :

Résultats pour le Powerbook :


- mode 0 (veille classique) : 4/3
- mode 1 (Safe Sleep tout le temps): 16/40
- mode 3 (sans coupure d'alimentation) : 13/3
- mode 3 (avec coupure d'alimentation) : 13/40


Résultats pour le G4 MDD :


- mode 0 (veille classique) : 4/4
- mode 1 (Safe Sleep tout le temps) : 13/37
- mode 3 (sans coupure d'alimentation) : 11/4
- mode 3 (avec coupure d'alimentation) coupure : 11/38


Ces résultats sont cohérents avec la description des différents modes faite plus haut. On voit en particulier que lorsqu'on est en mode 3, la réactivation ne prend du temps qu'après une coupure d'alimentation, puisque si l'ordinateur reste en veille normale si celle-ci n'est pas coupée.
D'une manière générale, le temps de réactivation est beaucoup plus long que celui de mise en veille si l'ordinateur doit récupérer la RAM sur le disque


Quelques petites remarques...

Tomber en panne de courant sur un Powerbook

Le principal argument d'Apple pour vanter le Safe Sleep est de dire que votre travail est protégé si vous vous retrouvez à court de batterie sans pouvoir recharger. Mais il faut savoir que ce cas de figure est extrêmement rare... en effet, si vous travailler sur la batterie, et qu'elle est épuisée, même sans Safe Sleep, votre Powerbook peut rester plus de 24h sans perdre le contenu de la mémoire... Alors à moins de partir en expédition au pôle nord pour finir un travail urgent, il est rare de ne pas trouver de prise de courant en 24h
Et même si vous retirez la batterie lorsque le Powerbook est en veille, vous avez 5 minutes pour la changer ou brancher votre ordi, pendant lesquelles la pile de sauvegarde interne préserve le contenu de la mémoire (à condition qu'elle soit en bon état).

Manque d'espace sur le disque?

Le Safe Sleep utilise un fichier pour stocker la RAM sur le disque dur. On peut se demander ce qu'il se passe si le système ne trouve pas assez de place sur le disque lors de la création de l'image... nous avons effectué quelques tests pour vérifier la fiabilité du Safe Sleep... et bien Apple a pensé à tout

En fait, l'image est créée dès le démarrage à cet endroit :

/private/var/vm/sleepimage

Si, lors du démarrage, le disque dur ne dispose pas du double de la RAM sur le disque, alors l'image n'est pas créée, et le Safe Sleep est automatiquement désactivé.
Nous avons ensuite essayé d'effacer ce fichier, après le démarrage, puis nous avons rempli le disque à ras bord. Dans ce cas, lors de la mise en veille avec le Safe Sleep activé, le système le désactive.
Bref, que ça soit au démarrage, ou au moment de la mise en veille, si le système ne peut pas créer l'image de la RAM sur le disque, et bien, il ne le fait pas


Utilisation possibles du Safe Sleep

Le Safe Sleep pourrait permettre deux fonctionnalités sur nos macs, avis à Apple si ils nous lisent

- Utilisation du Safe Sleep sur les nouveaux macs :
Actuellement, quand on reçoit un mac neuf, il vient avec un système pré-installé, mais qu'il faut quand même démarrer. Apple pourrait fournir ses Macs déjà démarrés, et grâce au Safe Sleep, l'acheteur n'aurait qu'à brancher le mac, à l'allumer, et en quelques secondes il se retrouverait devant l'écran de configuration de MacOS X... Je pense que ça serait du plus bel effet

- Safe Sleep en tant que backup de la RAM
Apple pourrait fournir un utilitaire permettant de copier la RAM sur le disque, sans pour autant mettre le système en veille. Et fournir une option pour qu'en cas de plantage, l'ordi redémarre en utilisant l'image la plus récente de la RAM sur le disque. Dans ce cas, les pertes de travail dues à un kernel panic seraient moindres... Mais bon, oui, je sais, un Mac, ça ne plante pas


Et le mode 2 ??

Nous avons vu que 3 modes existent, 0, 1 et 3. Mais qu'en est-il du mode 2 ?

Nous avons testé :

sudo pmset -a hibernatemode 2

Le mode 2 fonctionne comme le mode 3, à la différence près qu'il plante de temps en temps... Sur 5 tentatives de mise en veille en mode 2, avec coupure de l'alimentation, 2 ont fonctionné correctement, 2 ont fonctionné mais sans afficher l'écran et la barre de progression lors de la réactivation, et une tentative a planté la machine... Bref, à ne pas utiliser.


Problèmes...

En appliquant le Safe Sleep sur des machines autres que celles prévues officiellement par Apple peut poser des problèmes. Voici ce qu'il a été constaté :

- Sur les machines utilisant un patch pour activer le bureau étendu, il faut une version spéciale du patch Safe Sleep. Cette version est disponible à l'adresse donnée plus haut. Sans ce patch, le mode bureau étendu ne fonctionne plus.

- Il semblerait que sur certains Powerbooks, le bluetooth se réactive au réveil de la machine, même si il était désactivé avant. Enfin ça n'est pas bien grave

- Les Powerbooks 12" 867MHz semblent montrer des problèmes avec le patch (arrêt des ventilateurs, problèmes d'horloge...) il n'est donc pas recommandé de l'installer sur ces machines.

- Sur les G4 MDD, les ventilateurs tournent plus vite après la réactivation. L'OS prend le contrôle des ventilateurs lors du démarrage, et il semblerait qu'il laisse le firmware gérer les ventilateurs après la réactivation du Safe Sleep. Les niveaux de déclenchement des ventilateurs se situent à des températures plus basses quand le firmware contrôle.

- Lors de la réactivation, si le système doit récupérer la RAM depuis le disque dur, on a normalement le droit à un écran montrant le bureau du Mac lors de l'extinction mais grisé. Avec l'application du patch sur les machines plus anciennes, par moment au lieu de cet écran c'est la pomme grise du démarrage de MacOS X qui s'affiche... Etrange

- Si vous utilisez la mémoire virtuelle protégée (euh, c'est quoi ça? ) le Safe Sleep fonctionne en utilisant les modes 5 et 7 à la place de 1 et 3. Mais la copie de la RAM sur le disque ne sera pas encryptée..


Conclusion

Maintenant que vous savez tout sur le Safe Sleep, faut-il l'utiliser?
Tout dépend de comment vous utilisez votre Mac. Prenons les différents modes de fonctionnement, et voyons quelle est vraiment leur utilité :

- Mode 0 : Safe Sleep désactivé.
L'avantage de désactiver le Safe Sleep est de garder la réactivité lors de la mise en veille et de la réactivation. Mais on perd le bénéfice apporté par la sécurité du Safe Sleep.

- Mode 1 : Safe Sleep à chaque mise en veille.
Ce mode de fonctionnement requiert un long temps d'attente lors de la mise en veille et surtout de la réactivation. Mais il a l'énorme avantage d'éteindre la machine au lieu de la garder en veille. C'est donc tout à fait recommandé pour les utilisateurs de Powermacs. On peut aussi s'en servir pour transporter un ordinateur sans vouloir à le redémarrer.

- Mode 3 : Safe Sleep en cas de perte d'alimentation.
C'est le mode utilisé sur les nouveaux Powerbooks. Dans ce mode, la mise en veille est un peu plus lente que sans le Safe Sleep, mais la réactivation est instantanée si la RAM n'a pas été privée de courant. Bref, dans 99% des cas, ça reviendra à une veille classique, avec un temps de mise en veille un peu plus long, mais l'assurance de ne pas perdre son travail. Par contre, on perd l'avantage de la consommation de courant en veille comparé au mode 1. Bref, pour ceux qui voyagent beaucoup, travaillent beaucoup sur batterie, et risquent de se retrouver sans prise de courant pendant longtemps. Ou alors pour ceux qui ont oublié leur alimentation

En conclusion, on peut dire que le Safe Sleep est plus un argument de marketing sur les nouveaux Powerbooks qu'une réelle avancée. Je le trouve même plus avantageux en mode 1 sur un ordinateur de bureau qu'en mode 3 sur les portables.
Mais ça n'empêche que la réalisation est très soignée, comme toujours avec Apple
Gamoul!, le 16 novembre 2005
Retour à l'accueil

Cliquez ici pour poster une réaction

Réactions:


Lulu - 16/11/2005

Et sur Powermac G5, ça fonctionne ? C'est quoi l'avantage du Safe Sleep pour une machine de bureau ?
David Latapie - 16/11/2005

à moins de partir en expédition au pôle nord pour finir un travail urgent>

Avez-vous déjà pris un train international ? Ljubljana-Toulouse, 1000 km, 24 heures. Pas de prise électrique dans les compartiments. Et on reste en Europe de l'Ouest.

Ça arrive donc facilement.

Pour le reste, cela fonctionne-t-il sur un PowerBook 800?

Merci
val1984 - 16/11/2005

Ca ne marche pas avec la mémoire virtuelle sécurisée? Pourtant le site ne dit pas ça

If you've got secure virtual memory enabled, you should use 7 rather than 3 so that encrypted hibernation mode isn't used.

You can set it to 1 (or 5 with secure VM) if you want to hibernate and shut down immediately on sleep without suspending to ram.
Damien - 16/11/2005

La mémoire virtuelle sécurisée s'active via les Préférences Système, par le bouton Sécurité. Mais il faut effectivement changer le 1 ou le 3 de hibernatemode respectivement en 5 et 7.

Personnellement, j'ai fait la manipulation sur un iBook G4 1 GHz avec bureau étendu et ça marche très bien. Par contre, ça ne fonctionne pas avec un PowerBook Titanium 550 MHz ni sur un PowerMac Dual G5 2 GHz. Certainement une question de format de mémoire ... A suivre ...

Le blog d'Andrew Escobar est assez complet sur le sujet (en anglais) et les réactions assez nombreuses. Pourtant aucun signe d'une quelconque compatibilité de mémoire nécessaire ... Aurions-nous plus avancé que les américains ?
Gamoul! - 16/11/2005

Val1984 tu as raison j'ai mal interprété ce qui est sur le site : "For some reason encrypted hibernation doesn't work"

Pour les G5, ça ne semble pas fonctionner, car le Safe Sleep est dépendant du driver IDE, donc avec les G5 en SATA ça ne passe pas.

Je corrige l'article.

Sinon pour ce qui est de l'utilisation dans un voyage de plus de 24h, là encore, ça reste une occasion rare, et dans ces conditions, il suffit d'éteindre l'ordinateur au lieu de le mettre en veille quand on a fini de travailler. Mais dans ces rares cas, le mode 1 est intéressant.
ThiGre - 18/11/2005

Je travaille en principe le jour sur secteur et le soir sur batterie jusqu'à épuisement. De temps en temps, mon PB est OFF le lendemain et nécessitait un reboot après branchement sur secteur. Ce n'est donc pas si rare, même sans voyager pendant 24 h. Depuis le Safe-Sleep, il redémarre tel qu'au moment de l'extinction, qu'il soit tombé en panne de courant ou pas pendant la nuit
Frederic - 23/11/2005

Bonsoir. Je voulais juste souligner l'interet du mode 3 pour les powerbook 12". En effet ces portables n'ont pas l'autonomie de 5 minutes pour la changement de batterie... Du coup ce mode de safe sleep est vital lorsqu'on veut changer de batterie et que le powerbook est en mode veille forcee car a bout de batterie...
Gamoul! - 23/11/2005

Exact, ils n'ont pas de pile interne.
DahoodG4 - 21/12/2005

Yop tlm,
je viens de faire le test sur mon MDD, ca marche bien et je n'ai plus le voyant qui m'empechait de dormir la nuit

Remarque a Gamoul concernant le demarrage du mac sur une "image RAM sur disque", je sais pas vraiment si c'est possible, d'une part parce que quand tu ouvre la boite d'un mac, tu met la RAM supplementaire quasiment tout de suite, du moins moi meme je le faisait sur toutes les machines a installer. Connaissant Apple et sa générosité sur la RAM, c'est assez souvent le cas de changer la barette a l'ouverture. Donc qu'est-ce qui se passe si l'image a été sauvegardée avec 256Mo de RAM et qu'on met dans le mac disons 1Go, plantage ?

Deuxieme remarque, on m'a toujours appris, et on conseille toujours de ne pas eteindre sa machine, elle ont été faite pour rester ON 24h/24 . C'est notamment a cause de la tension appliquée au HD au démarrage, etant donné que chaque HD a un nombre de cycle de démarrage limité, d'environ 50000 , on peut le proteger en le mettant en veille . Alors que se passe-t-il dans le cas du safe sleep ? Le mode 1 raccourcis donc la duree de vie des disques logiquement .

Dernier point, il semble que certaine applis entierement stockées dans la RAM, ex: Quicksilver, ne se relancent pas au reveil d'un mode 1, pour l'instant je n'ai rien trouvé d'autre qui déconne .
Dernier dernier point, me ventilos on tchangé de comportement (cf ma conf sur MB), il semble qu'en plein jeu, après un reveil depuis safe sleep, les disques fassent des gros coups de souffle que je n'ai jamais entendu avant .
A+
Gamoul! - 21/12/2005

Salut.

Concernant le changement de Ram, tu es censé le faire ordi éteint, et non en veille, même si c'est avec le safe sleep. Il est évident que l'OS ne va pas aimer si la config matériel change sans qu'il soit quitté.

Concernant ce que tu dis sur le disque, permet moi d'émettre de gros doute. La phase de démarrage d'un disque consomme plus de courrant, c'est vrai, mais il ne faut pas croire qu'il y a une espérance de vie de 5000 démarrages par disques. Sinon, tous ceux qui mettent leur disque en veille aussi souvent que possible, et qui dont ont des dizaines de démarrage de leur disque chaque jour, verraient leur disques tomber en panne très vite.

Pour les ventilos, c'est normal, apres un safe sleep, le contrôle de l'OS n'est plus opérant, c'est le firmware qui gère, et il déclenche les ventilos à plus faible température.
Réactions par page :     Pages : 1, 2, 3

Poster une réaction:

Laissez votre adresse email pour être prévenu d'une nouvelle réaction.

Nom:
Email (facultatif):
  
Message:
Recopiez le code de validation:
Pour aider au développement du site, cliquez sur les bannières pour faire vos achats sur l'AppleStore. Merci.

RSS           

Tous droits réservés © MacXtrem 2004 - 2007