モダンスタンバイの仕組み
モダンスタンバイは、ACPIのLow Power Idle(LPI) Stateという特別なアイドル状態を使う。ACPIでは、通常の実行状態G0/S0で、CPUがアイドル状態になるとC1以上のC-Stateに入るなどして省電力化を図っている。
これに対してモダンスタンバイは、LPI-Stateというアイドル状態にOS側の選択で入るものだ。LPI-Stateは、S0 Low Power Idleとも呼ばれ、S3同等以上の省電力を実現するプラットフォームのアイドル状態だ。C-Stateと違うのは、LPI-Stateには、OS側(OSの省電力機能機能。Operating System-directed configuration and Power Management:OSPM)が意図的に選択して入る状態という点だ。
とはいえ、そのきっかけになるのは、前述のようにユーザーによる電源ボタンオフや液晶を閉じたという動作、あるいは一定時間操作がないことによるタイムアウトなどである。簡単にいうとこれまでのシステムであれば、スリープ(スタンバイ、S3)に入る代わりにLPI-Stateに入る。このとき、ハードウェア側が持つ省電力機能を利用し、CPUコアやプラットフォーム内のデバイスの電源管理をする。
インテル系CPUには、Haswell以降に「S0ix」と呼ばれるモードが実装されており、これを省電力機能として利用する。S0ixは、もともと、携帯電話向けのAtomであるMoorstownで搭載された省電力機能だ。このときにはS0i1/S0i2/S0i3が定義されていたが、HaswellなどCoreプロセッサは、S0i1とS0i3のみを実装する。
S0i1では、プロセッサはC6-State、起動や電源管理の回路の電源がオン、メモリコントローラーはセルフリフレッシュ(メモリに対してセルフリフレッシュコマンドを発行し、コントローラー自身は低消費電力状態となる)、その他のSoC内蔵モジュールはPower Gatedとして最低限必要な部分のみに電力を供給する。
S0i3では、メモリコントローラーはセルフリフレッシュ状態だが、それ以外の回路はオフとなる。CPUパッケージ(SoC)の外側にあるデバイスは原則オフだが、ネットワークコントローラーやサウンドコントローラーは、ある程度自立的に動作できる「オフロード」状態となる。S0i1とS0i3では消費電力も違うが、S0への復帰時間にも違いがある。S0i1からS0へは1.2ミリ秒(Haswellの場合)程度なのに対してS0i3からは3.1ミリ秒かかる。
Windows 10初期には、かなり不安定だったモダンスタンバイも、現在ではかなり実用的になった感じがある。とりあえず、対応マシンを持ち歩いても、いつの間にかバッテリが無くなっているなんてことはなかったし、復帰も早く、使い勝手は悪くない。そろそろモバイルPCでは、モダンスタンバイ対応機種を選んでもいいかもしれない。
この連載の記事
-
第463回
PC
Windows Terminal Preview版でSixelグラフィックスを実際に表示させてみる -
第462回
PC
Windows Terminal Preview版でSixelグラフィックスを扱う -
第461回
PC
Copilot+ PCを買ってみたが、「今焦って買う必要はない」のかもしれない -
第460回
PC
Windowsでsftpを使う -
第459回
PC
WSL 2.4.4ではtar形式でのディストリビューションが配布でき、企業での利用が容易になってきた -
第458回
PC
Windows上でhostsファイルを活用する -
第457回
PC
IPv6アドレスは先頭を見ればどんな種類かわかる -
第456回
PC
あらためてIPv6基本のキ -
第455回
PC
Windowsで現在どのネットワークアダプタがインターネット接続に使われているかを調べる方法 -
第454回
PC
Windows 11 24H2では「デバイスの暗号化」の条件が変わり、より多くのPCでドライブが暗号化される -
第453回
PC
Windows 11 24H2の配布開始後もすぐにはやってこない Windows UpdateとSafeguard Holds - この連載の一覧へ