Core Ultra(シリーズ2)にデスクトップ/ハイエンドモバイル向けモデルが登場! これまでのIntel製CPUとの決定的な違い(3/5 ページ)

» 2024年10月11日 00時00分 公開
[西川善司ITmedia]

「ハイパースレッディング非対応」になったPコア/Eコアも性能アップ

 ここからは、Arrow LakeのComputeタイル(CPUコア)の特徴を見ていこう。

 Core Ultra 200Sプロセッサの場合、Computeタイルはパフォーマンスコア(Pコア)が最大8基、高効率コア(Eコア)が最大16基という構成となる。

最大24コア24スレッド Core Ultra 200Sプロセッサの最上位モデルであるCore Ultra 9 285Kの場合、Pコア8基+Eコア16基の合計24コア24スレッド構成となる

 Pコアは、Core Ultra 200Vプロセッサで初搭載された「Lion Cove」(開発コード名)だ。つまり、ハイパースレッディング(同時マルチスレッド)機構は非搭載となる。

 過去の拙著でも触れた通り、Lion Coveの平均IPC(クロックあたりの処理命令数)は非常に高い。ゆえに、ハイパースレッディングに対応したとしても、その投資(トランジスタ数や消費電力)に見合った性能を引き出すことは厳しい。

 ハイパースレッディングは元々、CPUの余剰演算器を有効活用する目的で搭載されてきた。現在実行しているスレッドとは無関係なスレッドの処理に対応させることで、アイドル(非活用)状態になっている演算器や他の実行ユニットを稼働できることが、動作効率面で何よりも意義深かった。しかし、IPCが良好になったこもあり、昨今のPコアではハイパースレッディングに対応する意義が薄れている。

 前も言ったが、最近のIntelは「これなら、ハイパースレッディングに対応させるコストをEコアの増量に回した方が全体性能が改善するんじゃね?」という設計信条を持っているようだ。

 結局のところ、ハイパースレッディングでは「CPUコアが完全に“分身”する」わけではない。IntelがLion Coveに対して「ハイパースレッディングは載せない」と判断したのは、パフォーマンス向上という面では理にはかなっている。ただし、競合CPUに対してスレッド数が減った(≒パフォーマンスを発揮しづらい)ように見えるのは確かなので、既存ユーザーに対して丁寧な説明が必要になってくるだろう。

Lion Cove Pコアは、Core Ultra 200Vプロセッサでデビューを果たした「Lion Cove」を採用した。繰り返しだが、ハイパースレッディング機構は搭載されていない
IPCの向上 ハイパースレッディング非搭載ながらも、Coreプロセッサ(第14世代)のPコアと比べてIPCが平均9%向上している

 Eコアも、Core Ultra 200Vプロセッサと同じ「Skymont」(開発コード名)を搭載している。元々、Eコアにはハイパースレッディング機構は搭載されていないので、そのあたりの仕様変更はない。

 しかし、Core Ultraプロセッサ(シリーズ1)のEコア「Cresmont」(開発コード名)と比べると、「浮動小数点演算/AVX系SIMD演算のパフォーマンス改善」「アウトオブオーダー実行の範囲拡大」など、CPUコアとしての基礎性能を高める措置が施されている。

 この効果はてきめんなようだ。Intelによると、第13世代CoreプロセッサとCoreプロセッサ(14世代)のEコア「Gracemont」(開発コード名)と比較した場合、整数演算のパフォーマンスはシングルスレッド/マルチスレッドの双方で最大32%向上し、浮動小数点演算のパフォーマンスはシングルスレッドで最大72%、マルチスレッドで最大55%向上したという。筆者としては「『Eコア』という呼び方で損をしている」という印象を持った。

 このLion CoveとSkymontについての深い解説は、いずれ回を改めて行いたいと考えている。

Skymont EコアもCore Ultra 200Vプロセッサと同じ「Skymont」を採用している
大幅向上 Coreプロセッサ(第14世代)と比べると、Eコアの性能も大幅に向上している

タスク振り分けが一層洗練された「Intel Thread Director」

 Arrow Lakeでは、CPUのキャッシュメモリの階層構造に大きな変革はない。ただ、着実かつ順当な強化はなされている

 全てのCPUコアで共有するL3キャッシュの容量は最大36MBとなる。これは第13世代CoreプロセッサとCoreプロセッサ(14世代)から変わりない。

 L2キャッシュについては、Pコアでは1コアあたり3MBに増強された。これは第13世代CoreプロセッサとCoreプロセッサ(14世代)におけるPコアの1.5倍の容量だ。Eコアは4基あたり4MBのL2キャッシュを共有する設計で、第13世代CoreプロセッサとCoreプロセッサ(14世代)と同じだ。

 PコアのL2キャッシュを増量した理由はシンプルで、比較的長いループを回るスレッドの実行を担当する機会が多いからだ。L2キャッシュの強化(増量)は、メモリへのアクセスを低減させ、シングルスレッドの性能向上に直結する。

L3キャッシュ L3キャッシュはPコア/Eコア共用で最大36MB、PコアのL2キャッシュは1コアあたり3MBに増量された
EコアのL2キャッシュ EコアのL2キャッシュは、第13世代CoreプロセッサとCoreプロセッサ(14世代)と同等で4コアあたり4MBとなる
ダイヤグラム CPUキャッシュ階層のダイアグラム

 スレッド(ワークロード)をPコアとEコアに振り分ける「Intel Thread Director」は、第13世代CoreプロセッサとCoreプロセッサ(14世代)はもちろん、Core Ultraプロセッサ(シリーズ1)やCore Ultra 200Vプロセッサとも少し異なるアルゴリズムで動作するという。

ITD Intel Thread Directorにも改善を施している

 まずEコアだが、従来の第13世代CoreプロセッサとCoreプロセッサ(14世代)の場合は「平均IPCがどのくらい出ているか?」ということだけを基準とするシンプルなアルゴリズムでスレッドの割り振りを行っていた。

 それに対して、Arrow Lakeでは従来のPコアに近い精度のテレメトリーベースの割り当てが適用される。つまり、例えば「どのアドレス範囲のスレッドを、どのくらいの稼働率で、どのくらいの時間動かしたか」「どんな種別の命令が実行されたのか」「CPUキャッシュのヒット率はいかほどか」といった情報を蓄積し、Eコアに継続して従事させるのか、あるいはスレッドを別コアに割り当て直すのか、といった判断を行う。ここで言う「別コア」には、Pコアだけでなく、別クラスタにあるEコアも含まれる

 Pコアにおけるスレッド割り振りは、従来通りテレメトリーベースのアルゴリズムで行われる。ただし、高いシングルスレッド性能が要求される場合は、なるべくPコアに集中してスレッドを割り当てるように振る舞うという。

 これらのスレッド割り当ては、ニューラルネットワークベースの予測メカニズムを採用しているとのことで、「このスレッドはどのコアに割り当てるべきか?」の予測精度が劇的に向上したとIntelは説明している。

TDのふるまい 通常はEコア側に積極的にスレッドを振り分け、Pコアに余力があれば一部の処理をPコアに振っている
埒が明かない しかし「Eコアではパフォーマンスが伸びない(足りない)」と判断されると、Pコアへの割り振りを一気に多くする

 Arrow Lakeには、ハイパースレッディング機構がない。とはいえ、マルチコアCPUであることには変わりなく、マルチスレッド処理には対応している。当然、OSレベルが行うコンテキストスイッチングも普通に対応している。

 Core Ultra 200S/200HXプロセッサは、ゲーミングPCでの採用が多くなると思われる。その際に、ゲームのメインスレッドを動作させているPコアを、不用意かつ高頻度にプリエンプションさせて別スレッドを割り当ててしまっては、ユーザーのためにならない。

 Intelは、Arrow LakeのThread Directorを「適材適所」ならぬ、よりレベルの高い「適スレッド/適コア」となるように予測モデルをさらに賢いものに仕立てた――そう考えると、今回の機能拡張がイメージしやすいだろう。

すごく改善 Arrow LakeのThread Directorは、よりレベルの高い「適スレッド/適コア」となるよう制御がなされる

Copyright © ITmedia, Inc. All Rights Reserved.

最新トピックスPR

過去記事カレンダー