Ingo Molnar 氏は本日、Linux 6.5 カーネル向けのスケジューラ更新を提出しました。 CPU スケジューラの変更で最も注目すべき点は、P コアと E コアを組み合わせたハイブリッド設計の Intel Core CPU の SMP (ハイパー スレッディング) ロード バランシングの強化です。

インテル ハイブリッド CPU にメリットをもたらすスケジューラの改善により、不必要なタスクの移行が回避されます。今日のプル リクエストは、状況を次のようにエレガントに要約しています。

ハイブリッド システム上の SMT ドメイン内での不必要な移行を回避します。

問題:

ハイブリッド CPU システム (高周波数の SMT コアと低周波数の非 SMT コアが混在するプロセッサ) では、古いコードでは、優先順位の低い CPU がタスクをプルします。複数の SMT 兄弟がビジー状態の場合は、優先度の高いコアが使用され、その結果、多くの不要なタスクの移行が発生します。

解決策:

新しいコードは、複数のビジーな兄弟を持つ SMT コアを認識するようにロード バランサーを改善し、優先度の低い CPU がタスクをプルできるようにします。これにより、不必要な移行が回避され、優先度の低いコアがすべての SMT 兄弟で最もビジーなキューを検査できるようになります。

これは、Alder Lake およびハイブリッド設計の新しいプロセッサに利益をもたらすために、Intel エンジニアが過去数年間に行った Linux カーネルの多くの改良点の 1 つにすぎません。全体として、Alder Lake 以降は Linux 上で良好な状態にありますが、Linux でのパフォーマンスをさらに最適化するための Intel の終わりのない探求に伴い、時折、奇妙な P/E コアの動作が発生することがあります。

スケジューラー プルにより、新しい実行可能なブースト機能も追加されます。 Energy Aware Scheduling (EAS) は、周波数における CPU 競合、EAS の最大使用率、負荷分散を考慮して最もビジーな CPU を選択します。この実行可能なブーストにより、特定のワークロードの CPU 使用率が向上します。

Categories: IT Info