Sleep時のバッテリー消費が激しい
Sleep modeの設定
MacBook Air不使用時はディスプレイを閉じてスタンバイモードへ移行。
が、24時間経たずにバッテリーが0になって、スタンバイからの復帰が出来ない。
Sleep modeの設定が悪いと思い、さっと検索して以下のコマンドを実行。
sudo pmset -a hibernatemode 1
これでちゃんと保つはず!
・・・
と思ったのですが、相変わらずバッテリー切れ。
スタンバイからの復旧
ログでは1分毎にスタンバイモードから復旧して何かしている。
rar:~ rar$ syslog | grep "Wake reason" | less Mar 8 09:59:47 rar kernel[0] <Debug>: Wake reason: ? Mar 8 10:00:47 rar kernel[0] <Debug>: Wake reason: ?
Wake reason: ? って何だ。
そのreasonが知りたいのに、「?」って。。。
rar:~ rar$ pmset -g log | less 2014/03/08 10:05:40 JST Assertions PID 17(powerd) Released InternalPreventSleep "PM configd - Wait for Device enumeration" 00:00:45 id:0xe0000247e [System: No Assertions] 2014/03/08 10:05:40 JST Sleep Maintenance Sleep: Using BATT (Charge:13%) 16 secs 2014/03/08 10:05:42 JST SlowResponse PMConnection: Response from com.apple.apsd is slow (powercaps:0x0) 1882 ms 2014/03/08 10:05:42 JST WakeRequests Clients requested wake events: None 2014/03/08 10:05:56 JST Assertions PID 17(powerd) Created InternalPreventSleep "PM configd - Wait for Device enumeration" 00:00:00 id:0xe0000248b [System: No Assertions] 2014/03/08 10:05:56 JST DarkWake DarkWake [CDN] : Using BATT (Charge:13%)
何かしているのはわかるけど、正直よくわからない・・・
Sleep modeの設定(再)
アプリケーションの問題でなければ、設定がおかしいか初期不良か。
PRAMクリア
変わらず。起動音が出るようになっただけ。
Sleep modeの設定
「hibernatemode」の設定値を確認。
こういうとき、やっぱり見るべきはマニュアル。
(最初からちゃんとチェックするべき・・・)
rar:~ rar$ man pmset PMSET(1) BSD General Commands Manual PMSET(1) NAME pmset -- manipulate power management settings (略) SAFE SLEEP ARGUMENTS hibernatemode takes a bitfield argument defining SafeSleep behavior. Passing 0 disables SafeSleep altogether, forcing the computer into a regular sleep. 0000 0001 (bit 0) enables hibernation; causes OS X to write memory state to hibernation image at sleep time. On wake (without bit 1 set) OS X will resume from the hibernation image. Bit 0 set (without bit 1 set) causes OS X to write memory state and immediately hibernate at sleep time. 0000 0010 (bit 1), in conjunction with bit 0, causes OS X to maintain system state in memory and leave system power on until battery level drops below a near empty threshold (This enables quicker wakeup from memory while battery power is available). Upon nearly emptying the battery, OS X shuts off all system power and hibernates; on wake the system will resume from hibernation image, not from memory. 0000 1000 (bit 3) encourages the dynamic pager to page out inactive pages prior to hibernation, for a smaller memory footprint. 0001 0000 (bit 4) encourages the dynamic pager to page out more aggressively prior to hibernation, for a smaller memory footprint. We do not recommend modifying hibernation settings. Any changes you make are not supported. If you choose to do so anyway, we recommend using one of these three settings. For your sake and mine, please don't use anything other 0, 3, or 25. hibernatemode = 0 (binary 0000) by default on supported desktops. The system will not back memory up to persistent storage. The system must wake from the contents of memory; the system will lose context on power loss. This is, historically, plain old sleep. hibernatemode = 3 (binary 0011) by default on supported portables. The system will store a copy of memory to persistent storage (the disk), and will power memory during sleep. The system will wake from memory, unless a power loss forces it to restore from disk image. hibernatemode = 25 (binary 0001 1001) is only settable via pmset. The system will store a copy of memory to persistent storage (the disk), and will remove power to memory. The system will restore from disk image. If you want "hibernation" - slower sleeps, slower wakes, and better battery life, you should use this setting.
はい、「1」はそもそもないですね。
過去は「1」があったようですが Mac OS X version 10.9 では存在しないようです。
ということで、「25」を設定。
rar:~ rar$ syslog | grep "Wake reason" Mar 8 10:13:28 rar kernel[0] <Debug>: Wake reason: ? Mar 8 10:16:50 rar kernel[0] <Debug>: Wake reason: EC.SleepTimer (SleepTimer) Mar 8 10:38:51 rar kernel[0] <Debug>: Wake reason: EC.LidOpen (User)
Time stamp Domain Message Duration Delay ========== ====== ======= ======== ===== UUID: ****** 2014/03/08 10:16:43 JST Sleep Idle Sleep: Using BATT (Charge:11%) 14 secs 2014/03/08 10:16:48 JST SlowResponse PMConnection: Response from com.apple.apsd is slow (powercaps:0x0) 5008 ms 2014/03/08 10:16:48 JST WakeRequests Clients requested wake events: None 2014/03/08 10:16:57 JST Wake Wake [CDNVA] due to EC.SleepTimer/SleepTimer: Using BATT (Charge:12%) 246 secs 2014/03/08 10:16:57 JST SlowResponse Kernel: Response from powerd is slow (powercaps:0xf) 4615 ms 2014/03/08 10:16:57 JST SlowResponse Kernel: Response from powerd is slow (powercaps:0x0) 5080 ms 2014/03/08 10:20:48 JST Assertions PID 17(powerd) Created InternalPreventSleep "com.apple.powermanagement.darkwakelinger" 00:00:00 id:0xe000024f2 [System: DeclUser SRPrevSleep kCPU kDisp] 2014/03/08 10:21:03 JST Assertions PID 17(powerd) TimedOut InternalPreventSleep "com.apple.powermanagement.darkwakelinger" 00:00:15 id:0xe000024f2 [System: DeclUser SRPrevSleep kCPU kDisp] 2014/03/08 10:21:03 JST Assertions PID 17(powerd) Released InternalPreventSleep "com.apple.powermanagement.darkwakelinger" 00:00:15 id:0xe000024f2 [System: DeclUser SRPrevSleep kCPU kDisp] 2014/03/08 10:21:03 JST Summary- [System: DeclUser kDisp] Using Batt Sleep/Wakes since boot at 2014/03/08 1:19:00 JST :519 Dark Wake Count in this sleep cycle:0 Time stamp Domain Message Duration Delay ========== ====== ======= ======== ===== UUID: ****** 2014/03/08 10:21:03 JST Sleep Software Sleep pid=66: Using BATT (Charge:11%) 1073 secs 2014/03/08 10:21:08 JST SlowResponse PMConnection: Response from com.apple.apsd is slow (powercaps:0x0) 5841 ms 2014/03/08 10:21:08 JST WakeRequests Clients requested wake events: None 2014/03/08 10:38:56 JST Wake Wake from Standby [CDNVA] due to EC.LidOpen/Lid Open: Using BATT (Charge:11%) 54 secs 2014/03/08 10:38:56 JST HibernateStats hibmode=25 standbydelay=10800 rd=284 ms 2014/03/08 10:38:56 JST SlowResponse Kernel: Response from powerd is slow (powercaps:0x0) 5910 ms
変にhibernatemodeを変更してしまったことが悪かったようです。
sleep modeへの移行の時間があったとしても、sleep時のバッテリーを保たせることを優先させる設定が、ようやく出来ました。
教訓
確認するべきはまずはマニュアル。