プロセッサの電源管理オプションの概要
Windows 10 プロセッサ電源管理 (PPM) アルゴリズムは OS レベルの機能を実装しており、プラットフォーム上で使用可能な処理リソースを OS が効率的に使用できるようにします。パフォーマンスとエネルギー効率に対するユーザーの期待のバランスがうまく取ることで、これを実現します。
このアルゴリズムには、次の特徴があります。
- スケーリングのフォーム ファクターは大規模サーバーからタブレットまでです。
- 静的に構成可能な電源ポリシー インフラストラクチャを使用してカスタマイズできます。
- アルゴリズムのプラットフォームに依存しない部分をプラットフォーム固有の部分と分離する形で階層化、抽象化されています。
大まかに説明すると、Windows PPM は次の部分で構成されています。
- コア保留エンジン - ワークロードに関する全体的なスケーラビリティの決定を行い、実行に最適なコンピューティング コアのセットを判別します。
- パフォーマンス状態エンジン - プロセッサごとのパフォーマンス スケーリングの決定を行います。
- プラットフォーム固有の制御 - 状態遷移のメカニズムを実装し、必要に応じて、OS 状態の決定とランタイム プラットフォームの制約の有効性に関するフィードバックを提供します。
IHV パートナーは、さまざまなハードウェア構成に対するポリシー制御の影響について事前の検証と測定を有効にできます。
電源プロファイル
Windows プロビジョニング フレームワークを使用すると、このセクションで説明するプロセッサの電源設定を構成できます。 まず、 Windows 構成デザイナーを使用してプロビジョニング パッケージを作成します。 次に、パッケージに含まれている customizations.xml ファイルを編集して、電源設定を追加します。これは Common\Power\Policy\Settings\Processor
名前空間の下に表示されます。 この XML ファイルを Windows 構成デザイナー コマンドライン インターフェイスへの入力の 1 つとして使用して、電源設定を含むプロビジョニング パッケージを生成します。 その後、そのプロビジョニング パッケージをイメージに適用できます。 Windows 構成デザイナー CLI の使用方法については、Windows 構成デザイナーのコマンドライン インターフェイスを使用する方法に関するページを参照してください。
プロセッサの名前空間は、電力プロファイルと呼ばれる同一の電力プロセッサ構成のセットに分割されます。 電源プロファイルは、さまざまなシステムの使用事例でパフォーマンスと保留のアルゴリズムを調整するために、電源プロセッサ エンジンによって使用されます。
Windows 10 では、次のプロファイルがサポートされます。
- "既定" のプロファイルは、ほとんどの場合にアクティブな構成セットです。 この設定は、バランスの取れた電源スキームのものと同じです。 これにより、Windows プロビジョニング フレームワークを介してバランスの取れた電源スキーム設定を構成するための代替方法が提供されます。
- LowLatency は、ブート時とアプリ起動時にアクティブ化されるプロファイルです。
- LowPower は、メディア再生シナリオのバッファリング フェーズ中にアクティブ化されるプロファイルです。 このプロファイルは、メディア サービス品質 が設定されている場合には適用されません。
- GameMode プロファイルは、"ゲーム モード" 設定トグルがオンになっていて、ユーザーがゲームをプレイしているときに有効になります。 このプロファイルを使用すると、デバイスのゲーム モードのプロセッサ設定を調整できます。
- Mixed Reality は、Windows Mixed Reality ヘッドセットがシステムに接続され、ユーザーが MR アプリケーションと対話しているときにアクティブ化されるプロファイルです。
- Constrained は、デスクトップ エディション (Home、Pro、Enterprise、Education) の Windows 10 でバッテリー節約機能によってアクティブ化されるプロファイルです。 この機能は、Windows 10 Mobile では利用できません。
- ScreenOff は、 最新のスタンバイ システムで使用されるプロファイルです。 これは、画面がオフになっているときに使用されます。リモートデスクトップ接続がなく、システム & の実行に必要な電源要求が未処理の場合、モバイルホットスポットは使用されません。 システムがスリープ状態になったとき、または表示がオンになったときに解除されます。 「キーポイントの概要」セクションの図を参照してください。 このプロファイルは、その図のDAMフェーズに対応しています。
- スタンバイ は、 最新のスタンバイ システムで使用されるプロファイルです。 システムが長期的なスリープフェーズに入ると、すべてのシステムの休止動作が完了したときに使用されます。 システムがスリープ状態から復帰すると、このプロファイルは解除されます。 「キーポイントの概要」セクションの図を参照してください。 このプロファイルは、その図の低電力フェーズから回復性フェーズに対応しています。
各プロファイルでは、次の構成設定がサポートされます。
- CPMinCores
- CPMaxCores
- CPIncreaseTime
- CPDecreaseTime
- CPConcurrency
- CPDistribution
- CPHeadroom
- CpLatencyHintUnpark
- IdleDemoteThreshold
- IdlePromoteThreshold
- MaxPerformance
- MinPerformance
- PerfIncreasePolicy
- PerfIncreaseThreshold
- PerfIncreaseTime
- PerfDecreasePolicy
- PerfDecreaseThreshold
- PerfDecreaseTime
- PerfLatencyHint
- LatencyHintEpp
- PerfAutonomousMode
- PerfEnergyPreference
- ModuleUnparkPolicy
- ComplexUnparkPolicy
- SmtUnparkPolicy
異種アーキテクチャのプロセッサを搭載したシステムでは、効率性クラス 1 のコアの構成設定でも同様の名前付け規則が使用されます。
一般的なパラメーターには、効率性クラスを示すサフィックス "1" が付いています。 異種特異的なパラメーターには、"Hetero" というプレフィックスが付いています。
- CPMinCores1
- CPMaxCores1
- HeteroIncreaseTime
- HeteroDecreaseTime
- HeteroIncreaseThreshold
- HeteroDecreaseThreshold
- CpLatencyHintUnpark1
- MaxPerformance1
- MinPerformance1
- PerfIncreasePolicy1
- PerfIncreaseThreshold1
- PerfIncreaseTime1
- PerfDecreasePolicy1
- PerfDecreaseThreshold1
- PerfDecreaseTime1
- PerfLatencyHint1
- LatencyHintEpp1
- HeteroClass1InitialPerf
- HeteroClass0FloorPerf
- HeteroIncreaseThreshold1
- HeteroDecreaseThreshold1
ゲーム モード プロファイル
ゲーム モードの電源プロファイルは、Windows 10 May 2019 Update (19h1) 以降のノート PC の OEM オプトイン機能として利用できます。イメージの作成時にプロビジョニング パッケージを使用してデプロイする必要があります。 ゲーム モードの電源プロファイルのプロセッサ電源管理設定を定義するカスタマイズ xml ファイルの例については、下を参照してください。カスタマイズ オプションとデプロイの詳細については、「ゲーム モードのテスト手順」に関するドキュメントを参照してください。 この例では、プロセッサの最小パフォーマンス状態を100% に設定して、CPU のパフォーマンスを偏らせます。 チューニングに関するガイダンスの詳細については、お使いの半導体ベンダーにお問い合わせください。
<?xml version="1.0" encoding="utf-8"?>
<WindowsCustomizatons>
<PackageConfig xmlns="urn:schemas-Microsoft-com:Windows-ICD-Package-Config.v1.0">
<ID>b8aca924-e386-436e-a50e-bdec4d1715a1</ID> <!-- ID needs to be be unique GUID for the package -->
<Name>CustomOEM.Power.Settings.Control</Name>
<Version>1.0</Version>
<OwnerType>OEM</OwnerType>
</PackageConfig>
<Settings xmlns="urn:schemas-microsoft-com:windows-provisioning">
<Customizations>
<Common>
<Power>
<Policy>
<Settings>
<Processor>
<SchemePersonality>
<Profile SchemeAlias="Balanced">
<Setting ProfileAlias="GameMode">
<MinPerformance>
<AcValue>100</AcValue>
<DcValue>100</DcValue>
</MinPerformance>
</Setting>
</Profile>
</SchemePersonality>
</Processor>
</Settings>
</Policy>
</Power>
</Common>
</Customizations>
</Settings>
</WindowsCustomizatons>
電源プロファイルとそのプロビジョニング プロファイルのエイリアス
カスタマイズ XML を例として使用して、すべての電源プロファイルのプロビジョニング パッケージを作成できます。そのためには、そのプロビジョニングのエイリアスに <Setting ProfileAlias="?">
xml タグを一致させます。 電源プロファイルとそれに対応するエイリアスの一覧については、以下を参照してください。
Note
PPM プロファイルは、プロセッサの電力とパフォーマンスを最適化するために半導体ベンダーによって調整されています。 プロセッサの電源管理設定を変更する前に、チューニングに関するガイダンスについて半導体ベンダーにお問い合わせください。
プロファイル名 | プロファイルのエイリアス |
---|---|
既定値 |
"Default" |
低遅延 |
"LowLatency" |
低電力 |
"LowPower" |
制約あり。 |
"Constrained" |
画面オフ |
「画面オフ」 |
Standby |
"Standby" |
ゲーム モード |
"GameMode" |
Mixed Reality |
"SustainedPerf" |
サービスの品質
電源プロファイルは、プロセッサの電源管理のシステム全体の構成を提供するものであり、実行中のすべてのワークロードに均等に影響を与えます。 これに対し、サービス品質 (QoS) 機能は、異なる QoS レベルのワークロードに対してパフォーマンスと電力を差別化して提供します。 たとえば、これにより、フォアグラウンドの HighQoS アクティビティではパフォーマンスが優先されるように調整し、他の QoS レベルでは電力効率が優先されるように調整できます。 詳細については、「サービスの品質」を参照してください。
各 QoS レベルでは、次の構成設定がサポートされます。
- MaxFrequency
- MaxPerformance
- MinPerformance
- PerfAutonomousMode
- PerfAutonomousWindow
- PerfBoostMode
- PerfEnergyPreference
- PerfLatencyHint
- LatencyHintEpp
- SchedulingPolicy
- ShortSchedulingPolicy
- LongThreadArchClassLowerThreshold
- LongThreadArchClassUpperThreshold
- ShortThreadArchClassLowerThreshold
- ShortThreadArchClassUpperThreshold
異種アーキテクチャのプロセッサを搭載したシステムでは、効率性クラス 1 のコアの構成設定でも同様の名前付け規則が使用されます。
一般的なパラメーターには、効率性クラスを示すサフィックス "1" が付いています。
- MaxFrequency1
- MaxPerformance1
- MinPerformance1
- PerfEnergyPreference1
- PerfLatencyHint1
- LatencyHintEpp1
サービスの品質のレベルとそのプロビジョニング プロファイルのエイリアス
カスタマイズ XML を例として使用して、すべての QoS レベルのプロビジョニング パッケージを作成できます。そのためには、そのプロビジョニングのエイリアスに <Setting ProfileAlias="?">
xml タグを一致させます。 QoS レベルとそれに対応するエイリアスの一覧については、以下を参照してください。
Note
QoS レベルは、プロセッサの電力とパフォーマンスを最適化するために半導体ベンダーによって調整されています。 プロセッサの電源管理設定を変更する前に、チューニングに関するガイダンスについて半導体ベンダーにお問い合わせください。 さまざまなQoSレベルの詳細については、 「サービスの品質」 を参照してください。
サービスの品質レベル | プロファイルのエイリアス |
---|---|
高 |
"Default" |
Medium |
"EntryLevelPerf" |
低 |
"Background" |
ユーティリティ |
「ユーティリティ」 |
エコ |
"Eco" |
メディア |
"Multimedia" |
期日 |
「マルチメディア」プロファイルの PerfLatencyHint と LatencyHintEpp のみを使用します |