Coelacanth's Dream

Intel Alder Lake-S のベンチマーク結果から読むキャッシュ構成 【追記 2020-10-07】16-Core/24-Thread?

APISAK (@TUM_APISAK) / Twitter 氏が Alder Lake-S の SiSoftware の実行結果を発見、それを Twitter にて共有した。
そして、結果には Alder Lake-S のコア、スレッド数、キャッシュ容量が記されており、Alder Lake-S のベールがまた少し上げられることとなる。
Details for Computer/Device Intel Alder Lake Client Platform Alder Lake Client System (Intel AlderLake-S ADP-S DRR4 CRB) : SiSoftware Official Live Ranker

Index

Alder Lake-S の構成推測

発見された Alder Lake-S の構成は、16-Core/32-Thread、L2キャッシュ 10x1.25MB、L3キャッシュ 30MB となっている。
16-Core に対して L2キャッシュ 10基という一見奇妙なものだが、これまでの情報から詳細を推測することが可能だ。

(追記 2020/10/07)

SiSoftware の実行結果において、CPU系ベンチマークの行の Capacity 部が 24T(Thread) となっており、どちらかのコアは HTT が無効化されているものと思われます。
CPUコア全体を 1つのトポロジとして検出し、コアあたりのスレッド数の違いに対応できなかったがために、16-Core/32-Thread と認識されたのではないかと考えられます。

(追記終了)

まず、Alder LakeCore系アーキテクチャ: Golden CoveAtom系アーキテクチャ: Gracemont を組み合わせたハイブリッド構成であることが、Intel Architecture Day 2020 にて明かされている。1

次に、デスクトップ向けとされる Alder Lake-S今は削除されてしまっているが それぞれ 8-Core ずつ、計 16-Core が最大規模の構成になると思われる。2
今回発見された Alder Lake-S はその最大規模のものだろう。

10基の L2キャッシュに関してだが、現 Atom系アーキテクチャTremont では、4-Core とそれらで共有する L2キャッシュでタイル(またはクラスタ) を構成している。
恐らく、この構成が次 Atom系アーキテクチャ である Gracemont でも引き継がれており、Golden Cove 8-Core (8x L2) + Gracemont 2-Tile(8-Core, 2x L2) 、合わせて L2キャッシュ 10基として認識されたものと思われる。

Tremont では共有する L2キャッシュ容量を 1MB から 4.5MB までの範囲で選択可能となっており、現世代のハイブリッドプロセッサ Lakefield では 1.5MB としている。
Alder Lake-S の Atom側が L2キャッシュ容量が 1.25MB とすると、Lakefield より小さいことになるが、異なるアーキテクチャとトポロジのキャッシュ容量の検出にソフトウェアがまだ対応しておらず、Core側の L2キャッシュを読み取って、それを 10基と表示した可能性もある。

L3キャッシュ(LLC, Last Level Cache) も、Golden Cove のコア、Gracemont のタイル数に合わせて増やしていると考えられ、その場合 3MB(per Core or Title) となる。
Lakefield でもこのようになっており、Sunny Cove 1コア、Tremont 1タイル(4-Core) に対し、LLC 2MB(per Core or Tile) という構成。

L2 1.25MB、LLC 3MB というのは、Tiger Lake に採用されている Willow Coveアーキテクチャ と同様の構成であり、Golden Cove では新たにキャッシュ構成を変更することはしなかったものと思われる。
Intel が以前公開した CPU Core Roadmap でも、Willow Cove には “Cache redesign” の文言があるが、Golden Cove ではキャッシュに関して特に触れられていない。3

Alder Lake-S Golden Cove
(Core)
Gracemont
(Atom)
Core/Thread 8/16 8/8?
L2cache 8x 1.25MB?
(per Core)
2x 1.25MB???
(per Tile)
LLC 8x 3MB?
(per Core)
2x 3MB?
(per Tile)

有効にされている HTT

そして、キャッシュ構成以外に注目されるのがスレッド数であり、Lakefield では両アーキテクチャコアで無効化されていた HTT(Hyper Threading Technology) が Alder Lake-S では有効化されている。
Alder Lake ではハイブリッドの構成に関して、Lakefield よりも拡張されたハードウェアベースのスケジューラーを実装していることが Intel Architecture Day 2020 にて Raja Koduri 氏より語られており、その効果が HTT有効化に繋がっているのかもしれない。

Alder Lake のメモリと GPU

今回の情報ではメモリが DDR4 とされているが、Alder Lake は DDR4/LPDDR4/LPDDR5/DDR5 に対応するため、DRR4 とあること以外には 特におかしいところはない。4

  +-------------+--------+---------+
  | Memory Type | Max Ch | Max DPC |
  +-------------+--------+---------+
  | DDR4        |      1 |       2 |
  | LPDDR4(X)   |      4 |       1 |
  | LPDDR5      |      4 |       1 |
  | DDR5        |      2 |       1 |
  +-------------+--------+---------+

These numbers are for a single memory controller. Since ADL has two memory controllers, there’s twice as many channels in total. DPC stays the same.

それと実行結果で GPU が AlderLake-S Mobile Graphics となっているのは、Tiger Lake-U と同じ Gen12LPアーキテクチャ だからではないかと思われる。