macOS High Sierraにアップデートしたらスリープから復帰しなくなることがたまに起きるので
うちのMacBook Pro(Mid 2015)のOSをmacOS High Sierraにしてからか?スリープから復帰が遅くなった気がしてて、TouchPadは行きてるんだけど「遅いなー」と思うことが多かった気がします。
まさにこれを感じて居たので、設定を変更しました。
僕のPCは、MacbookAir(Mid2018)です。
(本記事は、参考サイトの要点を抜粋したものでほぼ引用です)
TL;DR
今回試してみたのはhibernatemodeの変更です。
対象読者
ディスクメンテを検討している方や、
最近なんだか、スリープ復帰が遅いと感じている方
スリープの種類
MAC OS Xのスリープ方式(ハイバネーション)を変更する方法
OS Xのスリープモードは3種類ある。
スリープ (0)
所要時間:スリープ、復帰共に1〜3秒程度
スリープ移行時:メモリ内容をHDDに待避せず、メモリの内容はバッテリーが続く限りメモリで保持
復帰時:メモリから復帰のため高速、バッテリーが無くなった場合は忘れてしまうため通常のOS起動となる
セーフスリープ (3)
所要時間:スリープ移行まで、3〜10秒程度、復帰は1〜3秒程度
スリープ移行時:メモリの内容をHDDに退避して、メモリの内容はバッテリーが続く限り保持
復帰時:メモリから復帰のため高速、バッテリーが無くなった場合はHDDの内容を読み込む
ディープスリープ (25)
所要時間:スリープ移行、復帰共に5〜10秒程度
スリープ移行時:メモリの内容をHDDに退避し、メモリの内容を忘れてスリープ
復帰時:HDDの内容を読み込み復帰のため低速
MBA,MBPの標準設定は
スリープ(0)とディープスリープ(25)のいいとこどりの
ハイブリッドモードな「セーフスリープ(3)」です。
そのため、画面を閉じたあとすぐに画面を開くと、なかなか画面が表示されません。これはメモリ内容をHDD(SSD)に書き込んでいるため。
スリープモードの変更方法・確認方法
(ここからの操作をする場合、自己責任でお願いします)
sudo pmset -a hibernatemode X
Xの引数部分には設定したいスリープモードの値を入力。
今回高速起動にしたい場合は「0」。
デフォルトに戻したい場合は「3」です。
ターミナルで現在のスリープモードを確認するには…
pmset -g
確認してみた。
$ pmset -g
System-wide power settings:
Currently in use:
standbydelaylow 10800
standby 1
halfdim 1
hibernatefile /var/vm/sleepimage
proximitywake 0
powernap 0
gpuswitch 2
disksleep 10
standbydelayhigh 86400
sleep 1 (sleep prevented by sharingd)
hibernatemode 3
ttyskeepawake 1
displaysleep 2
tcpkeepalive 1
highstandbythreshold 50
acwake 0
lidwake 1
MacBook Air はスリープ状態でも30日間持つよ!
という売り文句がその昔あった関係で、
ある時間以上スリープが続くとHDD(SSD)からの復帰に移るような設定(省電力モード、もう御察しの通りデフォルト3のね)になっているのかも。
その他参考
まとめ
MacOSのスリープモード(ハイバーネートモードの設定値)-
通常スリープ [hibernatemode 0]
スタンバイ状態でメモリデータの退避は行わない。
すぐ復帰出来る反面、バッテリ枯渇時には作業状態が全て消去される。
ディープスリープ [hibernatemode 1]
休止状態でメモリデータの退避を行う。
復帰に時間が掛かる反面、バッテリが枯渇しても作業状態は保持されている。
セーフスリープ [hibernatemode 3]
バッテリ容量が十分あるうちはスタンバイ状態、
バッテリの消耗が進むとディープスリープへ移行。
バッテリが十分にあるうちはすぐに復帰出来るし、
万一の場合にも作業状態を失わない。