1. トップ
  2. 新着ニュース
  3. IT
  4. IT総合

生成AI向けGPU「Instinct MI300X」の構造と性能を分析 AMD GPUロードマップ

ASCII.jp / 2023年7月3日 12時0分

 前回に続き、Data Center and AI Technologyで判明した情報をお伝えしよう。このイベントの一番最後で、AMDはInstinct MI300に関しての詳細を発表した。といっても肝心の性能や内部構造などは今回は見送りである。ではなにが明らかになったか? というと、パッケージ構造の詳細である。

Instinct MI300Xを示すLisa Su CEO

Instinct MI300Xを新たに発表

 Instinct MI300シリーズは今年のCESで公開されたわけだが、この時公開されたのは以下の情報だ。

  • CPUとGPUがUMA構造になったAPUの構成
  • マルチチップ構成
  • AI性能で言えばMI300はMI250X比で性能8倍、効率5倍

 今回発表されたのは以下のとおり。

  • APUはInstinct MI300Aという名称で、前情報の通り24コアのZen 4とGPUを搭載する。3Dチップレット構造で、合計13チップレット。
なぜかソケットに収まった格好でのCGしか公開されていない
  • MI300Aとは別に、CPUを持たないInstinct MI300Xが今回発表された。こちらはHBM 3をMI300Aの16GB×8から24GB×8構成に変更、搭載メモリー量は192GB/秒に達する。同じく3Dチップレットで、合計12チップレット。
最初の画像でSu氏が示してるのがこれ

 性能に関して言えば、今回はとにかくInstinct MI300Xの192GBという搭載メモリー量とメモリー帯域を前面に押し出した格好で、具体的な性能などは一切開示されていない。

そもそもMI300XはAIアクセラレーター的な扱いで説明されているのもアレなのだが。赤枠部は後述する

 ということで以下は筆者の分析である。まず物理構造。そもそも上の画像を見ても、HBM 3の間に謎の小さなダイが存在する。これはなんだ? ということでSam Naffziger氏(SVP, Corporate Fellow and Product Technology Architect)に「これがHBM 3のメモリーコントローラー?」と聞いたところ「違う」とのこと。これは単に高さを合わせるためのサポーターであって、チップレットの数には入っていない、という返事であった。

 ということで、下図が上から見た構造図、さらにその下が横から見た構造図である。

Instinct MI300Xを上から見た構造図
Instinct MI300Xを横から見た構造図

 「I/Oダイ同士やHBM3はシリコン・インターポーザーで接続される」というのがNaffziger氏の説明で、ということは図のように3層構造になっているわけだ(ここでシリコン・インターポーザーの間に挟まれるCU Piller(銅柱)というのは、Instinct MI200で採用されたElevated Fanout Bridge 2.5Dに出てくる部分だ。

 インテルのEMIBと異なり、パッケージそのものを掘り下げるのでなく、シリコン・インターポーザーの周囲を銅柱で持ち上げることで高さのつじつまを合わせる方式である。CPUおよびGPUダイはTSMC N5で、I/OダイはTSMC N6で製造される。このI/Oダイであるが、説明から判断すると以下を搭載する形となる。

  • CPU/GPUとの接続(TSVを経由してのMicroBumpで接続と思うが、ひょっとするとSoIC方式の3D接続かもしれない)
  • HBM 3のI/F
  • インフィニティ・キャッシュ
  • インフィニティ・ファブリックおよびPCI ExpressのI/F

 インフィニティ・キャッシュに関しては後述するが、そもそもMI300のGPUダイにはほとんど2次キャッシュにあたる部分がない。連載693回のRDNA 3でも説明したが、TSMCのN7/N6とN5では、ロジック密度はともかくSRAM密度はほとんど変わらず、大容量SRAMを搭載するならN6の方がコストが下がって有利であり、またHBM3やインフィニティ・ファブリック/PCIeなどのPHYもN6の方が有利である。

 したがって、これを別チップにするのは合理的だし、実際Navi 31ではそうなっているわけだが、Navi 31ではGCDとMCDを水平方向に並べたのに対し、MI300シリーズではこれを垂直に重ねたのが相違点である。

 ここでHBM3の上にヒートスプレッダーが重なっているのがわかるが、そもそもHBM 3の高さはGPUやCPUのダイとそれほど変わらないので、I/OダイとCPU/GPUのダイを重ねると明らかに高さがマッチしない。そこで上にヒートスプレッダーを挟んで均一な高さになるように工夫していると思われる。

 実はこう考えると、先ほどの画像にある赤枠のサポーターの意味も見えてくる。HBM 3にヒートスプレッダーを重ねただけでは、機械的強度はあまり期待できない。放熱の必要があるので、チップ全体のヒートスプレッダーに接触する必要はあるが、強い過重がかかった時に必要以上に力がかかりすぎるとHBM 3の破損の恐れがある。そこで必要以上の力がかかった時に、HBM 3の代わりに荷重を受け止めるのがこのサポーターなのだろう。

Instinct MI300Xは 8ダイで合計320 XCU

 さて、話を戻そう。AMDから提供されたInstinct MI300Xの写真が下の画像だ。

これは斜めになっているものをPhotoshop Workで修正したもの。したがって縦横の比率は正確ではない。ダイのほとんどはXCUで、あとは制御部だけである

 8つのGPUのダイに、それぞれ40個のXCUが搭載されているように見える。ということは、8ダイで合計320 XCUである。これはMI250Xの220 XCU(112 XCU/ダイながら2つ無効なので、110 XCU/ダイ)と比べると、わずかに1.45倍の増加に過ぎない。

 先に書いたAI性能が8倍というのは、実際にはデータ型の変更(FP16/BF16のサポートに加え、おそらくFP8をサポート)を加味しての数字と思われるので、演算器そのもので言えば4倍になると考えられるのだが、いくらなんでも1.45倍は差がありすぎる。

 ただもしここでRDNA 3の時と同様に、1つのXCUあたりの演算性能が2倍に変更されたと考えると、実質640 XCU相当になって演算器の数は2.91倍に増えた計算となる。これならわりとありそうな話である。もちろんこれではまだ4倍に達しないわけだが、Instinct MI250XはPeak Engine Clockが1.7GHzとわりと控えめである。なのでPeak Engine Clockを2.34GHzあたりまで引き上げると考えると、ほぼピーク性能は4倍になる計算だ。この場合、MI300Xの性能は下表の数字になると想像される。

 ただし、電力効率が5倍でしかないので消費電力は1.6倍に増える計算だ。Instinct MI250Xがピーク560WとされていたのでInstinct MI300Xは896W、ほぼ900Wというあたりだろうか。

「フォームファクターそのものはOCP(Open Compute Project)のOAM(OCP Accelerator Module)に互換だ」というので「では消費電力もMAX700W?」(OAMは48V供給で最大700W、12V供給で600Wが定格の上限)と聞いたら、笑って誤魔化された

 このFP8のMatrixで3PFlopsという値は、NVIDIAのH100の4PFlopsにはややおよばないように見える。ただこれはピーク性能で比較して、という話である。実際には容量は不明ながら、少なからぬであろうインフィニティ・キャッシュと、さらにHBM 3が8ch(H100は6ch)というあたり、実際には互角の性能である公算が高い。もっとも性能が互角だからと言っても、CUDAがそのまま動かないあたりがH100に対する大きなネックであることに変わりはないのだが。

 I/Oダイの構造の推定図を下図に示す。これはInstinct MI300Xを上から見た構造図で言えば左下のI/Oダイに相当する(左右対称のI/Oダイもあるはずだ)。インフィニティ・ファブリックのI/Fが4つあるが、上辺と右辺のものはI/Oダイ同士の接続用、そして下辺のものは外部接続用である。と言うのは、Instinct MI300Xを8つ搭載するソリューションが今回も展示されており、この8つのInstinct MI300Xを相互接続するのに7本のインフィニティ・ファブリックが必要である。

I/Oダイの推定図

 ただ7本だけでは相互接続して終わり(外部へのI/Fがない)なので、外部接続にも1本必要になる。4つのI/O ダイからそれぞれ2本づつ外部接続用のインフィニティ・ファブリックが出れば、ちょうど8本というわけだ。

Instinct MI300Aは Genoaと同じZen 4ダイを3つ搭載

 次にInstinct MI300Aであるが、こちらはGPUのダイが3つになり、その代わりにZen 4のダイが3つ搭載される。このZen 4のダイは「Genoaのものとまったく一緒(Exact same)」だそうで、見事なまでの再利用ぶりである。

Instinct MI300Aのものだ、とAMDが主張するCGであるが、肝心のダイのところが見えない
会場で展示されたInstinct MI300Aはこの通りヒートスプレッダーが被さった状態のもののみ(しかもボケている)
裏面。ごらんのLand数である

 さすがにI/Oダイに関しては別ということになるが、その構造の推定図が下図である。GPU用との最大の違いは、キャッシュを持たないことだ。もともとGenoaの場合、追加のキャッシュ(3D V-Cache)はCPUのダイの上に積層される。一方で今回のI/OダイはCPUの下に位置するわけで、キャッシュ拡張用の信号がそもそも出ていないことになる。

Instinct MI300Aの構造推定図

 もしキャッシュの増量が必要なら、3D V-Cache付きのZen 4のダイを搭載すれば済むわけだし、そもそも用途が計算用というよりはGPUの制御とか通信向けということを考えると、3次キャッシュを増量する必要は薄いだろう。

 さて問題はこのInstinct MI300Aの性能だ。先ほどのInstinct MI300Xの試算がそのまま通用するとすると、Instinct MI300AのGPU部分の性能は下表となる。

 CPUの方は、EPYC 9654の数値(Base 2.4GHz/Max Boost 3.7GHz、TDP 360W)をそのまま3分の1にするとして、FP64 Vectorの演算性能は最大710.4GFlops。TDP 120Wといったところ。これをそのまま合算すると、FP64の演算性能は145TFlops、消費電力792Wあたりになる。おおむね800Wというあたりか。Grace Hopper GH100の4PFlops/1000Wとどちらが性能が上か? というのは微妙なところで、カタログ数値だけで言えばGH100に軍配が上がるものの、以下のような結果になるはずだ。

  • 72コアNeoverse N1 vs 24コアZen 4のどちらが早いかは微妙。ひょっとするとZen 4の方が高速かもしれない
  • GH100はGPU用とCPU用が別のメモリーになっており、結局CPUとGPUの間でのデータ転送が発生する。Instinct MI300Aは完全にメモリーが共用になっており、データ移動が原理的に不要
  • メモリー帯域そのものもGH100よりもInstinct MI300Aの方が上。おそらくキャッシュ容量もインフィニティ・キャッシュが実装されるInstinct MI300Aの方が上
  • GH100はCPU同士の通信とGPU同士の通信が完全に別リンクになっている。このあたりもシームレスに利用できるInstinct MI300Aの方が効果的

 構造に起因する弱点がGH100には多く、実際のところどちらが高速か? はベンチマークをやってみないとわからないという感じではある。

 それはともかくとして、このMI300Aはローレンス・リバモア国立研究所のEl Capitanに利用される。このEl Capitanの構成だが、ぼちぼち資料が出てくるようになった。下の画像は今年5月の“Rabbit Storage for El Capitan”というプレゼンテーションのものだ。

RabbitではCompute Nodeから直接使えるような形でNVMeストレージが用意されるらしい

 これによれば以下のことが読み取れる。

  • 1つのノードには4つのInstinct MI300Aと、1つのEPYCが搭載される
  • 2つのノードで1枚のCompute Bladeを構成する

 Instinct MI300Aとは別にEPYCを搭載する理由は、PCIe Switch経由でRabbit-sというStorage Nodeと直接接続するためらしい。仮にこのEPYCをEPYC 9654と仮定すると、以下のようになる。

  • ブレードあたりの性能は理論値で1166TFlops(FP64 Vector)、消費電力7120W

 要するにブレード1枚でFP64 Vectorの性能が1PFlopsを超えているわけで、El Capitanの目標である2EFlopsを実現するためにはブレードが2000枚、ノード数が4000で足りる計算である。もっともこれはピーク性能での話で、もう少しマージンを持たせる必要がある。

 また消費電力もブレードだけで14MWを超える計算で、もちろん2EFlops/14MWならば十分に効率は高いが、Frontierの時と同じく、もう少し動作周波数と消費電力を下げた構成になりそうな気がする。仮にInstinct MI300AのGPUを2.1GHz動作まで落とし、CPUも3.5GHzあたりまで下げれば、性能は125TFlops(FP64 Vector)まで下がるが消費電力も700Wくらいに収まるだろう。

 EPYCもcTDPの最低限である320Wまで下げて運用した場合、ノードあたりの性能は500TFlops、消費電力3120W。ブレードあたり1PFlops/6240Wというところ。少し余裕をみて5000ノード(ブレード2500枚)に増量したとして、Compute Nodeでのピーク性能2.5EFlops、Compute Nodeの消費電力は15.6MW。ストレージやネットワークの分を加味しても30MW程度で収まる計算だ。ノード数がFrontierに比べても少ないから、実効性能で2EFlopsを超えるのも難しくはないように思える。

 Instinct MI300Aは6月13日よりサンプル出荷開始、Instinct MI300Xは今年第3四半期中にサンプル出荷開始予定とされる。ちなみにインテルは6月22日、Auroraのインストールが完了したことを発表した。今年11月のTOP500の結果が楽しみである。

この記事に関連するニュース

トピックスRSS

ランキング

記事ミッション中・・・

10秒滞在

記事にリアクションする

記事ミッション中・・・

10秒滞在

記事にリアクションする

デイリー: 参加する
ウィークリー: 参加する
マンスリー: 参加する
10秒滞在

記事にリアクションする

次の記事を探す

エラーが発生しました

ページを再読み込みして
ください