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

第4世代EPYCのBergamoとGenoa-Xの詳細が判明 AMD CPUロードマップ

ASCII.jp / 2023年6月26日 12時0分

 前回の冒頭でも少し触れたが、AMDは6月13日にData Center and AI Technologyというイベントを開催した。

 この様子はYouTubeで視聴可能(ただし1時間半:ダイジェスト版は3分48秒)であるが、ここでBergamoとGenoa-Xという新しい第4世代EPYCと、さらにInstinct MI300シリーズの若干の詳細、それとPensandoベースの新製品紹介などがあった。今回はこの中からBergamoとGenoa-Xの詳細について解説しよう。

3次キャッシュを増やした第4世代EPYC Bergamo

 BergamoはZen 4cコアを128コア搭載する、という話はすでに公式にも語られていたが、このZen 4cとZen 4の違いは3次キャッシュの容量のみである、という話を連載696回にお届けした。さてその答え合わせであるが、論理的にはこれは正確ながら、物理的にはやや間違っていた。今回公開された話は以下の3つであった。

  • CPU Coreそのものは論理的にはZen 4そのままながら、物理設計をやり直してエリアサイズを縮小。
  • 3次キャッシュは従来の4MB/コアから2MB/コアに縮小。また3次キャッシュには(3D V-Cacheを利用した)容量拡張オプションは用意されない。これにともない、TSVエリアは存在しない。
  • CCXの構成そのものは8コア/CCXで変わらず。したがってBergamoでは1つのダイに2つのCCXが搭載される。なおこの2つのCCX同士はローカルで通信するのではなく、IoD経由での通信となる(要するにZen/Zen 2世代と同じ)。

 まずは物理設計の話。俗にPPA(Power, Performance, and Area) Optimizationなどと言うが、物理設計を行なう際に動作周波数のターゲットをどのあたりに置くかで消費電力やエリアサイズが変わってくる。

 これはセルライブラリーに高密度・低消費電力のものを使うか、高速のものを使うかという話であり、クリティカルパス(プロセッサーの動作速度を決める、一番タイミング的にシビアな部分)には高速のライブラリー、それ以外のところは高密度・低消費電力のものを使うというのが一般的ではあるが、「どの程度使うか」は設計者のサジ加減次第であり、最終的にどの程度の周波数をターゲットとするか、あるいはダイサイズをどの程度に抑えたいか、消費電力をどの程度にするか、などでサジ加減が変わることになる。

 Zen 4cの場合、CPUコア+2次キャッシュのサイズをZen 4と比較して35%縮小した。またZen 4ベースのEPYC 9654が96コアでTDP 360Wなのに対し、Zen 4cベースのEPYC 9754は128コアでTDP 360Wだから、ラフに言って25%消費電力を削減している計算になる。

CPUコア+2次キャッシュのサイズをZen 4と比較して35%縮小した。こんな風にモザイクをかけているあたり、結構コア内部のレイアウトが変わったものと思われる

 実際にはIoDの分もある(IoDは完全に同じものだそうである)ので、もう少し消費電力の削減分は大きいかもしれない。その反面、動作周波数はEPYC 9654がベース2.4GHz/最大ブースト3.7GHzなのに対し、EPYC 9754はベース2.25GHz/最大ブースト3.1GHzと低めになっているのは、コアそのものを高密度/低消費電力向けに振った副作用ともいえる。

 ただコア数×動作周波数という理論的な演算性能で言えば、EPYC 9654 vs EPYC 9754は以下のとおりで、EPYC 9754の方がむしろ高めである。動作周波数を抑えてコアの数を増やしたことが功を奏した格好だ。

< th=""><>

 次が3次キャッシュのサイズである。下の画像はZen 4とZen 4cの差を示したものだが、先に書いたとおりコアそのものの論理設計はまったく同一だそうで、違いは3次キャッシュの容量のみということになる。

連載696回の画像はZen 3とZen 4の比較だった。今度はZen 4 vs Zen 4cである

 その3次キャッシュだが、さすがにここはZen 4でも高速向けのセルライブラリーを使うことはなく、高密度/低消費電力のセルライブラリーを使っていると思われるので、3次キャッシュの再設計でも単純に面積が半分弱になるだけと考えられる。

 「弱」なのは上でも書いたがZen 4cでは3次キャッシュにTSVエリアがなくなる。下の画像はZen 4の3次キャッシュの構造を示したスライドであるが、これを元にしたZen 4cの推定図がさらにその下の画像である。Zen 4のダイサイズが70mm2とされるのに対し、この推定図によればZen 4cのダイサイズは78.3mm2ほどになると計算される。

Zen 4の3次キャッシュの構造。これはRyzen 7000 X3Dシリーズの時にも出てきたスライドで別に珍しいものではない
Zen 4cの推定図。いつもの継ぎ接ぎワーク。記事冒頭のZen 4cをZen 4と比較した画像を元にすると、コア+2次キャッシュは幅0.6倍、高さ1.08倍になっていると推定して変更。3次キャッシュは単に半分にしたが、実際はコアの高さが変わっているのに合わせてレイアウトを再設計しているかもしれない(やってない気はするが)

 一方でAMDによるBergamoのCGから同じように寸法を割り出すと、おおよそ74.9mm2程で、筆者の推定はやや大きめであるが、なんにせよ75mm2前後ということで、GenoaのZen 4のダイからわずかなダイサイズの増加でコア数を倍増できたことになる。

BergamoはCCDの幅がやや増えているので、Genoaのように12ダイを載せるのはやや難しそう

Bergamoの性能はXeon Platinumの約3.7倍

 さて肝心の性能である。そもそもBergamoはクラウドワーク向けのCPUとして設計された。ここで言うクラウドワークというものの説明が下の画像だ。

いやさすがに従来のアプリケーションではRuntimeが無限大ということはないと思うのだが……

 要するにBergamoが利用されるクラウド向けの場合、あるアプリケーションを長く動かすというよりも、極めて短い(下手をするとミリ秒オーダー)時間で処理をして、すぐ別の処理に切り替わる、というコンテクストスイッチングの多そうな処理が主体となる。

 こうした処理では大量のキャッシュを積んでも性能が上がりにくい(扱うべき処理データがミリ秒単位で変わるので、煩雑にメモリーをランダムアクセスする必要が出るので、キャッシュの効果が出にくい)し、そうなるとメモリーアクセス待ちの時間が結構長くなりがちなので、ターボなどで動作周波数を引き上げる前に下手をすると処理が終わりかねない。

 こうしたケースではコア数をそのまま増やす方が有利というわけだ。実際にクラウドワークの比較では競合を大きく上回る性能を発揮する、としている。

クラウドワークの比較。比較対象はSapphire RapidsベースのXeonと、ArmのNeoverse N1を128コア搭載するAmpereのAltra Maxである

 おもしろいのは製品SKUである。トップエンドはEPYC 9754で、これは128コアの構成だが、その下にSMTを無効化したEPYC 9754Sがラインナップされていることだ。

全製品とも3次キャッシュが256MBなので、つまり8ダイ構成ということになる。EPYC 9734は実際には112コアなので7ダイでも間に合うのだが、おそらくは各CCXあたり有効コア数を7に減らし、7×16=112という構成になっているものと思われる

 これは主に性能とライセンスに起因する。下の画像はMemcachedの性能を比較したものだが、要するにプロセッサーあたりの性能を高めたいのか、スレッドあたりの性能を高めたいのか、は顧客がどこにそれを使うのかで変わってくる。

折れ線がスレッドあたりのスループット(というか秒あたりオペレーション数)、縦棒はプロセッサーあたりのスループットである。最高のスループットはSMT有効なEPYC 9754だが、スレッドあたりではEPYC 9754Sの方が上である

 ただ、「ではスレッドあたりの性能を高めたければBIOS SetupでSMTを無効にすればオッケー」とはならないのは、ここにライセンスコストが絡んでくるためだ。クラウドではさまざまなアプリケーションが動いており、もちろん有償のものは多いのだが、そうした有償のアプリケーションの中には「プロセッサー数でライセンス料が決まる」「コア数でライセンスが決まる」「スレッド数でライセンスが決まる」とさまざまなものがある。

 ここで難しいのが、こうしたライセンスの場合は「BIOSでSMTを無効化したから128スレッドです」といっても通じず、256スレッド分のコストを要求されることだ。したがって、最初からSMTを無効にしたEPYC 9574Sを用意したというわけだ。こちらはBIOS SetupをいじってもSMTを有効化できないので、ライセンス料は128スレッド分で済む。

 AMDはさらに、Bergamoを利用した場合にサーバーをどれだけ削減できるかという試算も示しているがこれは一例でしかなく、構成によって損得はだいぶ変ってくるのであくまでも参考でしかない。

これはNGINXで375Mリクエスト/秒を処理するのにどれだけのサーバーが必要かを算出したもの。もっともこれ、よく見るとEPYC 9754の方も29サーバーでラックの電源供給能力(12KW)を使い切ってるあたり、TOR Switchを追加することもできなそうなあたり、やや現実味が薄い試算ではある
上の画像の試算を2P Serverベースに切り替え(上の画像は1P Serverベース)、Xeon Platinum 8490Hも加えたケース。Xeonはコア数が最大のものを選んだのだろうが、これは可哀そうな気も
上の画像でEPYCをSMT無効化した9754Sに切り替えた場合。わずか3台の増加で済んでいるあたりがポイント。もっともトータルの価格はEPYC 9754が1万1900ドル、EPYC 9754Sが1万200ドルなので、2P構成ではEPYC 9754の場合で35万7000ドル、EPYC 9754Sでは36万7200ドルとなる。ライセンスコストの差が、この差額(1万200ドル)より大きければお得であるのだが

 ちなみにDellがすでにこのBergamoを搭載した製品を4シリーズ用意したことも同時に発表された。

左の4製品は汎用ということで、GenoaとBergamoのどちらを使うかを選べる格好。他にHPC向けにPowerEdge C6525とPowerEdge XE8545がラインナップされるが、こちらはHPC向けということでGenoaのみでBergamoのラインナップは用意されない模様

3D V-Cacheを搭載した Genoa-X

 次いでGenoa-Xであるが、こちらはGenoaに3D V-Cacheを搭載したモデルである。3D V-CacheをEPYCに搭載した場合の効果というのは連載642回のMilan-Xの時にも説明した通りだ。

Genoa-Xは、Ryzen 7000X3Dシリーズと異なり、全ダイが3D V-Cacheを搭載する

 当たり前だがなんでも性能が上がるというわけではなくキャッシュ増量の効果が得られるアプリケーションに限るし、また構成的にも増量したキャッシュがうまく使えるようなケースに限られるが、そうした条件をうまく満たすと大幅に性能が上がることがわかっている。

 これは今回のGenoa-Xにもそのまま当てはまる。まずSKUであるが、下の画像の3製品のみである。

96コアのEPYC 9684XのみTDPがやや高いのはわかるが、400Wというのは驚き。スペック的にはEPYC 9654と大きくは変わらない(Baseが2.4GHz→2.55GHzとやや高い)のに、なぜ40W多いのか? EPYC 9684X以外は8ダイ構成である

 ちなみにEPYC 9684X、最大ブーストは3.7GHzでEPYC 9654と変わらないが、全コアブーストは3.42GHzとやや刻んできており、EPYC 9654の3.55GHzよりやや低めである。

 それぞれのラインナップの用途をまとめたのが下の画像で、EDA向けなどにはスレッドあたりの性能が高いことが求められるので16コアのEPYC 9184Xが最適だが、CFDやFEA、構造計算などはトータルの性能が求められるので32コアのEPYC 9384Xや96コアのEPYC 9684Xが向いているという説明である。

EDAに関してはまだシミュレーションなどがシングルスレッドで動作するものが結構あり、スレッドあたりの性能が重視される

 ちなみにEPYC 9684Xではコアあたり12MBの3次キャッシュが利用できるわけだが、EPYC 9384Xで24MB、EPYC 9184Xでは48MBの3次キャッシュが利用できることになる。

 加えて言えば全製品ともDDR5-4800 12chをサポートしているわけで、スレッドあたりのメモリー帯域やキャッシュ容量が問題になる場合は、必ずしも96コアのEPYC 9684Xではなくより下位モデルの方がトータルでは性能が高いということもあり得るわけで、このあたりはアプリケーション要件に応じて選べばよいという姿勢である。

 実際に、Sapphire Rapidsとの性能比較が下の画像だが、これも当然条件次第なところがある。

これは同じ32コアの製品同士での比較。同じコアでも平均1.3~1.8倍高速とされる
こちらはハイエンド製品同士での比較。コア数の差もあり、平均でも2倍以上高速である

 なおマイクロソフトは今回も、Genoa-Xを実装したHBv4 Instanceの性能を開示している。今回は分析はしないが、結果から言えば以前のMilan-Xの時のように、なんでもかんでも性能が上がるわけではないが、うまくスイートスポットにはまれば(Genoaと比較しても)性能が向上することが示されている。

 マイクロソフトはこのHBv4 Instance、当初はGenoaベースでプレビューを提供していたが、今後すべてをGenoa-Xに更新の上で正式にサービスを提供する予定である。

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

トピックスRSS

ランキング

記事ミッション中・・・

10秒滞在

記事にリアクションする

記事ミッション中・・・

10秒滞在

記事にリアクションする

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

記事にリアクションする

次の記事を探す

エラーが発生しました

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