Nishiki-Hub

国内外のPC/PCパーツ/スマホ/Appleなどの最新情報を取り上げています

Linux 5.18で「Intel Thread Director」に対応 〜 Alder LakeのPコア・Eコアの割当が最適化される

f:id:doskokimeil127-dosd:20210729192959p:plain

錦です。

春に正式なリリースを迎えると見られているLinux 5.18ですが、今回はLinux 5.18におけるIntelプロセッサの話です。

Alder Lake

Alder Lake(厳密にはLakefield)から採用された新しいCPUの構成として「Intel Hybrid Technology」というのがあります。これは、多くのArmプロセッサで採用されているbig.LITTLEのようなシステムで、Pコア(性能コア)とEコア(効率コア)を組み合わせることによって、電力効率を高めるという仕組みです。

具体的には、メインタスクに性能が高く消費電力も大きいPコアを充て、OSやバックグラウンドに消費電力が小さいEコアを充てることによって、優先度が低いタスクで余計に高い電力を消費せずにすむということです。

このため、Windows 11にはタスクを動的に監視する「Intel Thread Director」が対応しているほか、OSのスケジューラでもスレッドを監視しタスクをコアに割り当てることができるようになっています。

Linuxで対応

現在、Linuxでは「Intel Thread Director」には対応していませんが、Turbo Boostなどのシステムを用いて従来のプロセッサ通りのコア管理を行っています。その結果、Eコアは速度が出ないコアと判断され、結局使われていないということになるみたいです。

Linux 5.18にはThread Directorが対応しているそうなので、今よりもEコアが活用されるようになるみたい。Intel Thread Directorでは、各コアの実際の数値性能と数値電力効率値を0~255の範囲でOSに伝え、CPUコアの性能と電力効率のどちらかが0の場合、ハードウェアは現在の命令構成に動的に適応し、性能、電力効率、熱の理由から、このコアにタスクを割り当てないよう推奨します。

つまり、性能と効率を見て、そのタスクに適用しているコアかつ、そもそも暇そうなコアに仕事を振り、忙しいコアには仕事を振らない、暇そうでも効率が低い場合は仕事を振らないという方法で管理をしています。これはWindowsのそれと共通しています。

ただし、これはOSのスケジューラシステムに大きな影響を及ぼすため、今の状況からの改善は見込まれますが、完全な問題の解決に至るにはまだ少し時間がかかりそう。おそらく、導入してから数カ月間はチューニングの期間となりそうなので、様子を見守ることになるでしょう。ただ、何度も言うように、今から見ればだいぶ改善されるらしいけど、Windows 11ほどになるというわけではない。そんな所です。

関連リンク