Windows10でAlder Lakeを効率よく動かす設定

Intelの12世代CPU、Alder Lakeのbig.LITTLE(異種混合コア)は、CPUに搭載されるITD(Intel Thread Director)の相性だか何だかの関係でWindows10ではなくWindows11を使えと言われているが、11のUIはいまいち受け入れがたく当分の間はWindows10でやり過ごしたいっつうことで調べたことのメモ

隠し設定

Windows10にも隠し設定としてだがbig.LITTLE(異種混合コア)に対応する電源設定が存在していて、レジストリを操作することで電源オプションに表示させることが出来る。

管理者権限のコマンドプロンプトまたはPowerShellで以下のコマンドを実行する事で表示される。

異種ポリシーの表示 (HETEROPOLICY)

powercfg -attributes SUB_PROCESSOR 7f2f5cfa-f10c-4823-b5e1-e93ae85f46b5 -ATTRIB_HIDE

異種スレッドスケジュールポリシー (SCHEDPOLICY)

powercfg -attributes SUB_PROCESSOR 93b8b6dc-0698-4d1c-9ee4-0644e900c85d -ATTRIB_HIDE

短時間実行スレッド用の(ry (SHORTSCHEDPOLICY)

powercfg -attributes SUB_PROCESSOR bae08b81-2d5e-4688-ad6a-13243356654b -ATTRIB_HIDE

非表示に戻すには-ATTRIB_HIDEを+ATTRIB_HIDEに置き替えてそれぞれ実行すれば良い。非表示とする前にデフォルト値に戻す事を忘れずに。

参考
Windows10でのデフォルト値
異種ポリシー「異種ポリシー4を使用」
異種スレッドスケジュールポリシー「自動」
短時間実行スレッド用の異種スレッドスケジュールポリシー「自動」

異種ポリシー (HETEROPOLICY)

Intelの資料には異種ポリシー (HETEROPOLICY)の設定について次のように説明があった。

異種ポリシー0 (HETEROPOLICY 0)
In this configuration, the optimum set of compute cores are unparked starting with the most performant cores first.

異種ポリシー4 (HETEROPOLICY 4)
In this configuration, based off utilization, a combination of most performant or most efficient cores are unparked first.

超端折ると、パフォーマンス重視かコスパ重視かという事だろう。

異種ポリシー0ではほぼCore Parking(リソースモニターなどで保留って出るヤツ)にはならないのに対して、異種ポリシー4では使われていないコアはCore Parkingとなっていた。

異種ポリシー1から3の挙動についての記載はないが、試した限りでは2ではEコアが積極的に使われるようになるようで、異種ポリシー0でのPコアがそのままEコアに入れ替わったような挙動となった。その他は違いがよくわからん。

実際の挙動の違い

普段使い時の負荷を再現するツールをよく知らないので、ChromeとfirefoxとEDGEでクソ重い広告だらけの怪しいwebサイトのタブを開きまくった状態で各設定を変更してみた。

広告のお姉さんが現れたり引っ込んだりするので、負荷は一定ではない点に留意

Windows10 デフォルト

Windows10 デフォルト

Windows10のデフォルト値である異種ポリシー4、各スケジュールポリシーは自動
いまひとつPコアが活かされていないような印象だ

異種ポリシーデフォルト、高性能のプロセッサを優先

異種ポリシーデフォルト、高性能のプロセッサを優先

デフォルト設定に比べてPコアへの負荷が増えているもののEコア優勢

異種ポリシー0、CPU自動

異種ポリシー0、CPU自動

Windows11での規定値
割とまんべんなく分散される印象で正解かもしれん

異種ポリシー0、高性能のプロセッサを優先

異種ポリシー0、高性能のプロセッサを優先

Eコアの負荷がほとんどない

最適な設定はどれか

使用目的によって最適解は異なるだろうけど、自分が試行錯誤した範囲では、

  1. 異種ポリシーはデフォルト値の4のまま、その他を「高性能のプロセッサを優先」
  2. 異種ポリシーを0にして各スケジュールポリシーは自動

この2つが現実的な設定だろうと思う。省電力なら1、パフォーマンスなら2っていう具合に。

ちなみに電源オプションからこれらの設定を変更すると即時反映され、PCが不安定になったりする事はなかった。

各設定を変更することで明らかに挙動が変わるものの、デフォルトの状態からして軽く快適なので体感ではわからんし、Pコアがよく使われる設定にするとEコアを持て余すジレンマがあるね。

というか、デフォルトのままでも別に困らんのではないかという気もする。ゲームなどでは違いが出るのかもしれないが。

参考

https://www.intel.co.jp/content/www/jp/ja/support/articles/000088749/processors/intel-core-processors.html
https://www.intel.com/content/dam/develop/external/us/en/documents-tps/348851-optimizing-x86-hybrid-cpus.pdf
https://docs.microsoft.com/ja-jp/windows-hardware/customize/power-settings/configuration-for-hetero-power-scheduling-schedulingpolicy
https://docs.microsoft.com/ja-jp/windows-hardware/customize/power-settings/configuration-for-hetero-power-scheduling-shortschedulingpolicy

追記

必要に迫られWindows11へとアップデートしてから数ヶ月ほど経つが、ふと電源オプションを見たところ異種ポリシー4(Windows10デフォルト値)のまま引き継がれているということに先ほど気がついた。まあカスタムされた電源オプションなのだから引き継いで当然と言えば当然なのだが。

CPUを持て余してるとまあ気付かんのよ。

異種ポリシー・スケジュールポリシーの項目を非表示(要は素の状態)のままWindows10→11とアップデートした場合にどういう挙動となるのかは未検証だが、恐らく引き継いでしまうのではないだろうか。

コメント

  1. […] Windows10でAlder Lakeを効率よく動かす設定 おすすめ記事 Windows10でAlder Lakeを効率よく動かす設定 […]

  2. […] 手軽にE-coreだけを動かす方法はこちらを参考に、異種ポリシーを2、各スレッドポリシーを効率のよいプロセッサに設定するといけるはず。試してないけどWindows11でもできるんじゃないか […]

  3. より:

    13世代でも可能これらは可能ですか?

タイトルとURLをコピーしました