はじめに
Google TPU には、SparseCore なるものが入っているのは、下記のブログに書きました。
- v2 : 2個、HBM x 2
- v3 : 2個、HBM x 2
- v4 : 4個、HBM x 4
入っています。
The most general SC units are the 16 compute tiles (dark blue boxes in Figure 7). Each tile has an associated HBM channel and supports multiple outstanding memory accesses.
とあり、SparseCoreには16個のタイルがあり、各タイルはHBMのチャネルに対応するようになっているようです。
Google TPU の block diagram
HotChips 2023 での Google の下記の発表資料に、TPU v4 の block diagram が載っていました。

この block diagram には、SparseCore が4個あります。そして、各SparseCore は HBM 1個に1個という感じになっています。
v5e, v5p, v6e では?
v5e, v5p, v6e には、SparseCoreは、入っているでしょうか?
- TPU のアーキテクチャ によると、
SparseCore SparseCores は、推奨モデルに見られるエンベディングに依存するモデルを高速化するデータフロー プロセッサです。v5p にはチップあたり 4 つの SparseCore が搭載されています。v6e にはチップあたり 2 つの SparseCore が搭載されて
とあります。
- v5p : 4個、HBM x 6
- v6e : 2個、HBM x 2
v5e に関しては、TPU v6e のところに、

とありました。つまり、
- v5e : 0個
まとめると、
- v2 : 2個、HBM x 2
- v3 : 2個、HBM x 2
- v4 : 4個、HBM x 4
- v5e : 0個、HBM x 2
- v5p : 4個、HBM x 6
- v6e : 2個、HBM x 2
SparseCoreは、基本的には学習をターゲットしたものに付いていて、HBM 1個に、1個という感じです。ただし、v5p は HBMは6個ですが、SparseCore は4個です。
おわりに
HBM 1 個に、SparseCore 1個だと思いましたが、v5p は HBM が6個で、SparseCore は4個になっています。
Ironwood は、2 die で各 die に HBMが4個なので、SparseCore は 2 x 4 = 8 個なんでしょうかね。。