Coelacanth's Dream

Coreboot に Alder Lake のデバイスIDが追加 ―― ADL-S の GPU は最大で GT1、ADL-P は GT2 か

オープンソースなBIOS、ファームウェアを開発するプロジェクト CorebootAlder Lake-S/P の DeviceID を追加するパッチが投稿された。
soc/intel/common: Include Alderlake device IDs (I17ce56a2) · Gerrit Code Review

Index

Alder Lake iGPU ( GT0/GT1/GT2 )

Alder Lake の GPU部に付けられたマクロ名から、Alder Lake GPU には GT0、GT1、GT2 の 3種類が存在し、Alder Lake-S は最大で GT1Alder Lake-P は最大で GT2 の規模を持つことがわかる。1

  #define PCI_DEVICE_ID_INTEL_ADL_GT0			0x46ff
  #define PCI_DEVICE_ID_INTEL_ADL_GT1			0x4600
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_1			0x4601
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_2			0x4602
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_3			0x4603
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_4			0x4610
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_5			0x4611
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_6			0x4612
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_7			0x4613
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_8			0x4618
  #define PCI_DEVICE_ID_INTEL_ADL_GT1_9			0x4619
  #define PCI_DEVICE_ID_INTEL_ADL_P_GT2			0x46a0
  #define PCI_DEVICE_ID_INTEL_ADL_S_GT1			0x4680

Intel 次世代のデスクトップ向けプロセッサと見込まれている Rocket Lake もまた GPU部の規模は最大で GT1 までとなっている。
そしてベンチマーク結果から、Alder Lake-S の GPU構成は Gen12 GT1 の規模と一致することがわかっている。2
Intel、オープンソースドライバーに DG1 と Rocket Lake の関するコードを追加 ――DG1 は 96EU、RKL は 16EU または 32EU | Coelacanth’s Dream

GT0 については Coreboot 内のファイルには記載がないが、Intel(R) Graphics Memory Management Library 内の TGL LP GT0 に対する記載から3、GFX(Slice/Sub-Slice/EU?) 機能は持たない、もしくは無効化されており、ディスプレイ出力のみに対応したバリアントと考えられる。

Alder Lake PCH PCIe

Alder Lake-SAlder Lake-P で PCH(Platform Controller Hub) が持つ PCIe RP(Root Port) の DeviceID 数が異なり、
ADP_S (Alder Lake PCH S /Alder Point S?) は 28-RP、ADP_P (Alder Lake PCH P /Alder Point?) は 12-RP となっている。

Comet Lake 世代のものと比較すると、デスクトップ向けである Comet Lake-S の PCH、 CMP_H は 24-RP、モバイル向けの CMP_LP は 16-RP であり、
Alder Lake-S は末尾、GPU部規模からも推測されるようにデスクトップ向けのプロセッサと考えられ、Alder Lake-P はモバイル向け、または組み込み向けといった小規模なシステム向けのプロセッサと考えられる。

次世代 Atom系プロセッサにおいて、モバイル向けとなる JSP (Jasper Lake PCH /Jasper Point?) は 8-RP、組み込み向けの MCC (Mule Creek Canyon, Elkhart Lake PCH) は 7-RP であり、ADP_P は Core系 と Atom系の中間の PCIe RP(Root Port) を持つと言える。
しかし、Linux Kernel へのあるパッチで、Alder Lake(-S) のモデルナンバー(x86_Model) が明らかになると共に、Lakefield同様に Core系と Atom系の両方のコアを持つハイブリッド構成を取ることが確かとなったが、
Alder Lake-P もまたハイブリッド構成を取るかどうかは朧気である。
Intel Alder Lake が ハイブリッドコア構成を取ることが確かに | Coelacanth’s Dream

Alder Lake 推測

まず Alder Lake-S はデスクトップ向けと考えて問題ないのではないかと思う。
Alder Lake-P はモバイル向けか組み込み向けかはっきりしないが、GT2 の DeviceID を持つことから、モバイル向けにおいて GPU性能を重視している Intel の最近の傾向からモバイル向けである色が濃いように思う。
Alder Lake-S は最大 GT1Alder Lake-PGT2 というのは、10th Gen プロセッサに存在する、CPU性能は Comet Lake 、GPU性能は Ice Lake という棲み分けを引き継いだ結果であるようにも思える。

Intel CPU GPU
10th Gen Comet Lake Ice Lake
11th Gen Rocket Lake? Tiger Lake?
12th Gen? Alder Lake-S?? Alder Lake-P??

ただ、Alder Lake-S/P の GPU が Tiger Lake /Rocket Lake より進んだアーキテクチャではなく、同じ Gen12アーキテクチャ を取るのであれば、規模もまた変わらない可能性がある。
オープンソース・ドライバーの記述から、Gen12アーキテクチャ はプロセッサごとではなく、GT の後に続く数字からその規模を判定しているからだ。4
もしそれが合っているとして、Alder Lake-P GT2Tiger Lake LP GT2 より上の GPU性能を出すにはクロックを引き上げるかメモリ帯域を増やす必要があると思われる。

Intel Gen12 GT0.5 GT1 GT2 GT2 (DG1)
Dual-Sub Slices 1 2 6 6
 EUs 16 32 96 96
  SPs 128 256 768 768
GPU L3$ 1536KB? 1536KB? 3072KB 16384KB5
RKL TGL /RKL
/ADL-S?
TGL /ADL-P? DG1