コラム

Core Ultraプロセッサ(シリーズ3)の「Xe3 GPU」の全体像を解説 完全な新世代ではないものの用途に合わせた最適化がポイント(2/3 ページ)

Intelが2025年末に一部を出荷する予定の「Core Ultraプロセッサ(シリーズ3)」(開発コード名:Panther Lake)は、「Xe3 GPU」なる新しいGPUコアを搭載する。この記事では、Xe3 GPUの概要をお伝えする。

Xe3で構造が変わった「レンダースライス」 一体なぜ?

 近年のIntel GPUは、一番大きな塊として「レンダースライス(Render Slice)」があり、この中に演算器などを内包する「Xeコア」を複数基搭載するという階層構造になっている。Xeコアの中には、単位ベクトル演算器として「Xe Vector Engine(XVE)」が複数配列されている。

 これらの用語を、NVIDIAのGPUに置き換えて説明すると以下の通りとなる。

  • レンダースライス≒GPC(Graphics Processing Cluster)
  • Xeコア≒SM(Streaming Mulitiprocessor)
  • XVE≒CUDA(Compute Unified Device Architecture)コア

 ここで、Meteor LakeにおけるXe GPU(Alchemistベース)と、Lunar LakeのXe2 GPU(Battlemageベース)、そしてPanther LakeのXe3 GPUのレンダースライスを比較してみようと思う。ここではXe3 GPUについては12コア仕様で説明するが、4コア仕様では少し話が異なるポイントがあるので、後ほどフォローする。

advertisement

 レンダースライスは、ミニGPUを複数内包した「GPUクラスター」ともいえる塊だ。NVIDIAのGPUならGPC、AMDのGPUでは「シェーダーエンジン(Shader Engine)」または「シェーダーアレイ(Shader Array)」に相当する。

 Intelにおいて、このような「ミニGPUのクラスター」的な考え方を採用したのはXeアーキテクチャが初めてだ。それ以前にも「サブスライス(Subslice)」という概念はあったものの、Xeコアに相当するものだ。強いて説明するなら、サブスライスは「レンダースライス1基」ということになる。


Meteor Lakeに搭載されているXe GPUのレンダースライス

Lunar Lakeに搭載されているXe2 GPUのレンダースライス

 XeとXe 2のレンダースライスを比較すると、1基当たり4基のXeコアを内蔵していることに注目すると、変化が少ないように思える。しかし、変化が全くないわけではない。搭載するXVEの数が16基から8基に削減されている……のだが、これは能力の劣化を意味しない

 実は、XVEにおけるSIMD(Single Instruction/Multiple Data:並列処理を行う手法の1つ)の実行レーン数が、Xe GPUの8レーン(SIMD8)から16レーン(SIMD16)に倍増しているのだ。そのため、以下の通り論理的な演算能力は変わりない

  • Xe GPUのXeコア1基当たりの演算器:SIMD8×16XVE=128基
  • Xe2 GPUのXeコア1基当たりの演算器:SIMD16×8XVE=128基

 筆者は、この方針転換を「処理できるスレッド数を半分にする代わりに、一度にこなせる演算密度を増やした」と解釈している。

 もう少し具体的に、実際の3Dグラフィックス描画における違いで説明すると、Xe GPUは「たくさんのシェーダープログラムを動かす」ことに重きを置いたのに対して、Xe2 GPUは「複雑なシェーダープログラムを短時間で終える」ことを重視したともいえる。あるいは、「4K(3840×2160ピクセル)といった高解像度ゲーミングは最初から想定せずに割り切った」と捉えることもできる。

 ここでXe3 GPU(12コア仕様)のブロックダイアグラムを見てみると、Xe/Xe2 GPUと比べて分かりやすい違いがある。それはレンダースライス1基当たりのXeコアの数が4基から6基に増えたことだ。


Panther Lakeに搭載されているXe3 GPU(12コア仕様)のレンダースライスは、Xeコア(とレトレーシングコア)が4基から6基に増えている

 これを踏まえて下に掲載したXe3 GPU(12コア仕様)の全体図を見てみよう。レンダースライスは2基あるので、Xeコアは6基×2=12基構成となる。

 しかし、ここで疑問が湧く人もいるはずだ。Xeコアを12基にするなら、レンダースライスのXeコアを4基に据え置いて「Xeコア4基×レンダースライス3基=Xeコア12基」という構成にしても良かったのではないだろうか。

 確かに、レンダースライスは2基構成よりも3基構成にした方が、処理の並列度は上がる。しかし、独立GPUと比べると内蔵GPUはメモリ帯域が狭いため、並列度を高めて複数のレンダースライスでピクセル色を演算できても、それをメモリへ書き出す部分、いわゆる「ROP(Rendering Output Pipeline)」がボトルネックになって効率的に出力できない(IntelではROPを「PiXel Backends」と呼んでいる)。

 では逆に、なぜXe3 GPU(12コア仕様)ではレンダースライスを2基構成にしたのだろうか。答えはシンプルで、16MBのL2キャッシュでボトルネックを解消(というか低減)できるからだ。

 となると、今度は「L2キャッシュをもう少し大きくすれば、レンダースライスを3基構成にもできたのではないか?」という疑問も浮上する。それは確かにその通りなのだが、「できるけどあえてそうしなかった」のだと推測している。

 SRAMによる大容量キャッシュは、どうしてもチップ上で大きな面積を専用する(SRAMはプロセス微細化の恩恵を受けづらい)上に、電力消費と発熱も大きくなりがちだ(アイドル時にもリーク電流が大きいため)。要するに、現状の「レンダースライス×2基+L2キャッシュ16MB」という仕様がベストバランスだと判断したのだろう。


Xe3 GPU(12コア仕様)のブロックダイアグラム

 実は、AMDもAPUに内蔵するGPUにおいてIntelと似た判断をしており、せいぜい毎秒100GBクラスのメモリ帯域を想定して多くのモデルでGPUクラスタを1~2基にとどめている。最大パフォーマンスを引き出すため、内蔵GPUの設計者は「メモリ帯域」と「キャッシュ容量」のバランスに頭を悩ませているのだ。

 余談はさておき、この「1基のレンダースライスにXeコアが6基」という仕様は、過去のAlchemistはもちろん、Battlemageでも見られなかった。筆者は、この構成が次期アーキテクチャであるCelestialで採用されるのではないかと見ている。ゆえに、Xe3 GPUはCelestial Lightなのではないかと考えた次第である。

Copyright © ITmedia, Inc. All Rights Reserved.