先述の通り、Compute TileはCPUダイに相当する。Meteor Lakeでは、処理性能重視の「高性能コア(Pコア、開発コード名:Redwood Cove)が最大6基、処理効率(省電力)重視の「高効率コア(Eコア、開発コード名:Crestmont)が最大8基実装される。
Redwood Coveは、第12/13世代CoreプロセッサにおけるPコア(開発コード名:Golden Cove)のマイナーチェンジ版だ。実効性能の改善は、L2キャッシュの増量による部分が大きい。Foverosによる高密度配線と、メモリ/キャッシュ帯域の拡大も性能アップに貢献しているそうだ。
なお、Redwood CoveはGolen Coveと同様にマルチスレッド(ハイパースレッディング)に対応している。OSからは1つの物理コアが2つの論理コアと見えるため、暇となっている実行ユニットを活用できれば1クロックで2倍の命令をこなせる。
一方で、Crestmontは第12/第13世代CoreプロセッサのEコア(開発コード名:Gracemont)と比べると目立つ改良点が幾つかある。
まず、クロック当たりの命令実行効率は、先代比で4〜6%も向上している。具体的な改善率の言及はなかったが、分岐予測のアルゴリズムを改善したことの効果だそうだ。また、ニューラルネットワークベースのAI(人工知能)プログラムでよく使われる「AVX-VNNI命令セット」の入出力ポートは2倍に増えている。恐らく、AI処理を多用するアプリが増えてきたことを踏まえた改良だと思われる。
なお、CrestmontはGracemontと同じく、マルチスレッドには非対応だ。
繰り返しとなるが、Meteor Lakeは最大で「Pコア6基12スレッド+Eコア8基8スレッド」という構成……なのだが、次に説明するSoCタイルにも別途Eコアが2基存在する。また、そのことに伴い、PコアとEコアに処理を割り振る「Intel Thread Director」の挙動に見直しが入っている。
SoC Tileには注目点が多い。筆者としては、このSoC Tileが「Meteor Lakeらしさ」を一番形作っている部位だと思っている。
ブロック図を見るとあちこちに視線が行ってしまいがちなのだが、まず注目すべきはNPU(AIアクセラレーター)ではなく、「Low Power Island E-Cores」だ。
その名の通り、Low Power Island E-Cores(LP Eコア)はれっきとしたCPUコアだ。アーキテクチャ自体はCompute TileにあるEコアと同じで、Crestmontを採用している。
「なんでここにもEコアが?」というところだが、LP Eコアは最大2基2スレッド構成で、Compute TileのEコアよりも動作クロックがより低く抑えられている。「Low Power」の名の通り、クロックやコア数が少ない分、消費電力も少なくなっている。
Intelによると、PCの利用シーンでは普通のEコアですら性能が高すぎることも少なからずあるという。第12/第13世代Coreプロセッサは「Eコア→Pコア」の2段ギアだったのに対して、Meteor Lakeは「LP Eコア→Eコア→Pコア」の3段ギアとすることで、より効率的に稼働できるようにしたと考えれば分かりやすい。
Intelによると、LP Eコアだけが動員される場面は案外多いという。Compute Tileを休ませることで省電力性能を稼いでいるようだ。
ということで、Meteor LakeのCPUコアは結局、最大で「Pコア6基12スレッド+Eコア8基8スレッド+LP Eコア2基2スレッド」となる。つまり最大16コア22スレッドのCPUなのだ。
ここでふと2つの疑問が浮かぶ。1つはこれらのCPUコアがOS(システム)からどう認識されるのか、もう1つはEコアとLP Eコアは同時稼働できるのかというものである。これら2点は、技術説明会でも質問が相次いだ。
Intelによると、16コア22スレッド構成のMeteor Lakeは、OSからも「16コア22スレッド」のCPUとして認識され、EコアとLP Eコアは同時稼働可能だという。特にLP Eコアは、SoC Tileにあるメディアエンジンとの相性が良いといい、「LP Eコアだけで動画再生をこなせる」と自信ありげに語っていた。LP Eコアも、そこそこの性能を備えていそうだ。
都合3種類のCPUコアを混載したこともあって、Meteor LakeではITDの挙動に変更が行われている。
LP Eコアの解説を終えたので、ここからは後回しにしてきたIntel Thread Director(ITD)の挙動変更について説明しよう。
第12/第13世代Coreプロセッサでは、PコアとEコアに処理を割り振るための仕組みとしてITDが導入された。ITDはハードウェア(CPU)とソフトウェア(OS)の双方が協調して稼働することが特徴で、IntelはMicrosoftと協業し、Windows 11にITD対応のタスクスケジューラーを搭載している(※1)。
(※1)編集注:第12/第13世代Coreプロセッサでは、Googleとも協業して、ChromeOSにもITDを搭載している
Meteor Lakeでは、新たにLP Eコアを含む3種類のCPUコアを搭載している。そのため、処理の割り振りを3種類のコアに行う必要が出てくる。そこで、今回もMicrosoftと協業し、Windows 11へとMeteor Lakeの「3段ギア」に対応するタスクスケジューラーを搭載する。
CPUコア(スレッド)の割り当てアルゴリズムは、そのPCの使い方――例えば性能重視なのか、低消費電力重視なのか――で微妙に変わるそうだが、基本的には「高負荷ではないスレッドには、なるべくEコアやLP Eコアを割り当てる」という方針が適用されるという。
物理コアにしても論理コアにしても、スレッドの切り替え時には、大量のレジスタファイルの出し入れが行われる。ごくわずかではあるが、この工程は「処理の遅延」となる。それでも、スレッドの切り替えが頻繁(大量)に発生すれば、CPU全体で見た時のスレッドの実行効率は落ち混んでしまう。
もともと低負荷のスレッドであれば、Eコア側でまとめて実行させても、遅延の実害はないに等しい。ゆえに、新しいITDではこのような方針を取ることにしたそうだ。最初は極力LP Eコアにスレッドを振り、それでムリならCompute TileのEコアに移管し、それでもキツいならPコアにシフト……と、まさしく3段ギアによる「変速」を行っている。
この移管には、Windows 11のタスクスケジューラーから提供されるCPU負荷のリアルタイムレポートを参考にしているという。また、複数のPコアで負荷の低い処理をしている場合に、LP EコアまたはEコアがプロセスを“まとめて引き取る”制御も行うとのことだ。
これらの制御によって、Meteor Lakeは「最大性能」と「消費電力効率」を両立するのだ。
後編では、SoC Tileが備える他の機能と、Graphics Tile、I/O Tileの詳細を紹介する。
Copyright © ITmedia, Inc. All Rights Reserved.