このページの本文へ

前へ 1 2 次へ

Windows Info 第191回

「スロットリング」ではCPUの電力管理をOSではなく、CPU任せにする

2019年09月22日 10時00分更新

文● 塩田紳二 編集● ASCII編集部

  • この記事をはてなブックマークに追加
  • 本文印刷

インテルCPUでのスロットリングの実装

 Windows 10のスロットリングには、インテルがSkylake(第六世代Intel Coreプロセッサ)に搭載したSpeed Shiftを使う。現状、スロットリングは、Speed Shiftに対応したCPUでのみ利用できる。Skylake以前のプロセッサには、Speed ShiftではなくEnhanced SpeedStep Technology(EIST)と呼ばれる機能が搭載されていた。

EISTでは、P1~PnまでをWindowsで制御し、ターボブーストがP0を制御していた。ターボブーストでは、他のコアやGPUの稼働状態により選択できる周波数に違いが出るからだ。これに対してSpeed Shiftでは、ターボ状態を含めてパフォーマンス設定をCPU側でする。これがスロットリングになる。なお、スロットリングが無効な状態では、WindowsがP1~Pnの設定をする

 EISTは、Pentium 4(Prescott)から搭載されている古い機能であり、最近のCPUでは、パッケージの温度を監視しながら最大周波数動作を制御するIntel Turbo Boost Technology(ターボブースト)と組みあわせてクロックを制御する。EISTの場合、P0-Stateとなる最大周波数への移行は、ターボブーストで、P1以下のP-Stateの制御をEIST経由でWindowsがしていた。このとき、P0-Stateに移行させるためには、ソフトウェア制御でP1ステートに持っていく必要があった。

 これに対して、Speed Shiftは、ターボブーストの最大パフォーマンスから、最低クロック周波数までをすべて管理できるように作られた。スロットリングは、この機能を利用し、稼働中のコアに対して、P-StateからThrottling-Stateに移行させ、そのパフォーマンス設定をCPU側にすべて任せる。

 CPUによるパフォーマンス制御のメリットは、OS(ソフトウェア)からの制御に比べて高速に動作できる点だ。ソフトウェアによるパフォーマンスの設定では、負荷の検出やクロック周波数/電源電圧の設定にソフトウェアコードが動作するため、最低でも数ミリ秒程度の時間が必要になる。

 このため、EISTとターボブーストの場合、EIST側の最大周波数(P1-State)に達するまで100ミリ秒程度の時間(CPU世代やプロセッサナンバーによる違いはある)が必要で、そのあと、ターボブーストが動作して最大クロックに達する。これに対してCPUによる制御ではプログラムを動作させる必要がなく、数ミリ秒程度で制御が可能だ。インテルの資料によれば、10数~30数ミリ秒程度の時間(同)で最大クロック周波数に達することができるという。このため、負荷の高いソフトウェアの実行でも、短時間で最大パフォーマンスに達することができる。

 もう1つのメリットは、CPUパッケージ全体を見た省電力化が可能な点だ。

コアの消費電力はパフォーマンス(クロック周波数。赤のグラフ)が高ければ大きくなる。1つのタスクについて見ると、処理時間が短いほど、パッケージ自体の消費電力(緑のグラフ)は小さくなる。両者を合わせたのが青いグラフである。このため、最も電力効率が良いパフォーマンス設定は、青いグラフの底にあたる部分になる

 CPUパッケージ内には、さまざまな周辺回路が統合されており、オンになっている時間が長いほど電力を消費する。これに対して、コアの消費電力は性能に比例して高くなる。1つのタスクに関して見ると、処理時間が短いほどパッケージ全体の消費電力は小さくなるが、そのためには高いパフォーマンスでタスクを実行する必要がある。

 このため、パッケージ全体では、1つのタスクを処理するのに最も低い消費電力となる点が最大パフォーマンスと最低パフォーマンスのどこかに存在することになる。CPU側のハードウェアで行なうCPU制御であれば、この点を見付けるのは比較的容易だが、ソフトウェアでするのはかなり難しい。また、その処理プログラムのためにコアが動いてしまうと、最適点はズレてしまう。このため、最も電力効率の良いパフォーマンス設定はハードウェア側でないと選択が不可能になる。

 バッテリで動作するWindowsマシンの場合、スロットリングに関しては、ユーザーは特に何かをする必要はない。ただ、消費電力を下げるという点からは電源モードを「高パフォーマンス」以下に設定しておけば、スロットリングが有効になる。さて、次回は、同じく電源管理を利用して実現されている「モダンスタンバイ」について解説し、一連の電源管理解説のまとめとしたい。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン