AMDはかねてから、第3世代EPYCの発表会を3月15日に開催する事をアナウンスしていた。そして予告通りに本日発表されたのが「AMD EPYC 7003シリーズ」であり、発表会の内容はこちらから視聴可能だ。これにあわせてプレス向けの事前説明会が開催されたので、その内容をお届けしたい。

  • AMD、第3世代EPYCを発表 - 最大64コア/128スレッドの「EPYC 7003シリーズ」

開発コードネーム「Milan」こと第3世代EPYCであるが、基本的にコアをZen 3に切り替えたのが最大の違いである(Photo04)。Zen 3コアの拡張そのものについてはここでは触れないが、IPC 19%アップによってRyzen 5000シリーズが大きく性能を伸ばしているのは御存じの通り。これがEPYCの世界にもやっとやってきた、という訳だ。ただISA拡張に関してはちょっと触れておきたい(Photo05)。特にセキュリティ周りでは大幅に拡張が施されており、Intelが今年のCESの発表の際に行ったROPを用いた攻撃への対応も完了している。

  • Photo04: 言っていることは正しいのだが、Industry Trendそのものに関してはIntelとしては異論があるだろう。もっともAVX512拡張に頼ったXeonの性能改善にもちょっと言いたいことはあるのだが。

  • Photo05: ここに示されたのはZen 3の全部ではなく、大まかな網羅である。ちなみにVAES/VPCLMULQDQ以外は全てセキュリティ拡張(VAES/VPCLMULQDQもEncryption/Decryption向けの命令だから、広義には全部セキュリティ向けとも言えなくはない)である。

ここでVAES/VPCLMULQDQであるが、VASEはAES命令の拡張でVAESDEC/VAESDECLAST/VAESENC/VAESENCLASTの4つからなる。これは128bitを超える幅のデータを扱える(ので、AES-256のEncryption/Decryptionなどが高速化できる)というもの。一方VPCLMULQDQはPCLMULQDQ(Packed CarryLess MULtiplication Qword DoubleQword)という命令の拡張で、一部の暗号アルゴリズムに向いた特殊命令なのだが、これを256bit拡張したものである。実はVPCLMULQDQに関してのみ、もしホストがAVX-512Fをサポートしている場合は512bit拡張がなされることになっているが、EPYC(というか、Zen 3コア)では256bitに留まるようだ。

さて、その第3世代EPYCであるが、基本的にはコアをZen 3に変更しただけで、既存のRoma PlatformとDrop-in Compatibleがあるとする(Photo06)。基本的なコアの構造も一緒で、強いて言えばZen 3になったことでCCXあたりのコア数が8になり、CPU全体のCCXの数が8つに半減したのが最大の違いであろうか(Photo07)。ただ、特にEPYCの様にマルチスレッド化されたアプリケーションを走らせる機会が多いプロセッサにおいては、CCXあたり8コアに拡張したことによる性能改善の効果が大きい、としている(Photo08)。

  • Photo06: 4/6/8ch Memoryの話は後述。

  • Photo07: ちなみにI/O DieそのものはRome世代と大きな違いはない(基本的には同じ)だが、セキュリティ周りで若干の拡張とか変更があるとの事。

  • Photo08: Zen 2世代の場合、同じダイ同士でもCCX間の通信は一度I/O DieのInfinity Fabric Switchを経由する必要があったため、これを煩雑に参照するのはペナルティが大きく、なのでShared Dataを別々に持つのが得策だった。Zen 3ではこの重複が避けられるので、コア毎の個別のデータをより多くCacheにストア出来る様になる、という話。

またMemory Interleavingに関する拡張がこちら(Photo09)。必ずしも8ch全部にメモリを装着せずに運用する、というケースが出てきた事への対応でもある。また、先ほどのセキュリティ拡張とも絡むが、第3世代EPYCではより広範な攻撃への対応が整う事になった(Photo10)。このあたりを比較したのがこちら(Photo11)で、より安全性の高いプラットフォームになったとAMDは説明している。

  • Photo09: 勿論性能的には8chフルの構成が一番帯域は大きくなる。

  • Photo10: SEV-ESそのものは第1世代からサポートされているが、Zen 3ではこれの拡張も施されており、より強固な保護が可能になるなど、細かく色々Updateされているものも多い。

  • Photo11: 第3世代EPYCで、ついに未対応のGuest OSもセキュリティ保護対象になったのは歓迎すべきポイントである。

その第3世代EPYCであるが、今回発表されたのは19モデルにも及ぶ(Photo12)。全製品とも最大8chのDDR4-3200と128レーンのPCIe Gen4を搭載。2Pモデルでは、プロセッサ間のInfinityFabricが18Gに増速された模様だ。ラインナップとしては、Single Thread性能最優先のモデルが4つ、コア数最優先モデルが5つ、バランスを取ったモデルが10となっており、ラインナップのバランスを取った格好だ。

  • Photo12: 青い「→」が付いているのは、Single Core Performanceを追求したスペシャルモデルとなる。

  • Photo13: Fシリーズはアクセラレータと組み合わせて処理を行うのに最適だし、76/77シリーズはクラウドワークロードなどCPU処理が主体で、しかもスケーリングが効く用途向け。73/74/75シリーズはその中間ということになる。

プロセッサ全体の性能を並べたのがこちら(Photo14)となる。このグラフにもXeon GoldとXeon Silverの値が記されているが、もう少し具体的に比較したのがこれら(Photo15~18)である。第2世代EPYCの時も似たような話があったが、同等の性能を持つシステム構築の際にEPYCを使う事で、サーバーの数を半分に、ラックの数を3/4にし、TCOを35%低く出来る、としている(Photo19)。

  • Photo14: これは全コア/スレッドでの性能で、1スレッドあたりの性能ではない事に注意。またこれは2Pシステムでの推定なので、1Pシステム向けのPモデルは省かれている。あと、それぞれのコア数グループの一番右端は、第2世代EPYCの数字になっているのに注意。

  • Photo15: SPECRate 2017 FP Baseでのスコアの比較。AVX512を引っ張り出すとまた色々変わってくるのだろうが、それ無しだと概ねダブルスコアである。もっともこれ、Xeon Gold 6258RがEPYC 7763のほぼ半額($3950)であることを考えると、性能/コストでは微妙な気もする。

  • Photo16: SPECRate 2017 Int Baseでのスコアの比較。こちらはAVX512を持ち込んでもそうそう性能は上がらない。ただPhoto15と同じで、性能/コスト的には微妙な気も。

  • Photo17: 第2世代XeonとしてはトップエンドのXeon Platinum 8280との比較。こちらはXeonの方も$10009とかなりお高い事もあって、良い競争力とは言える。

  • Photo18: SPECRate 2017 FP Baseでの比較。75F3は$4860で、Xeon Gold 6258Rよりちょっと高い程度なので、これだけの性能差があれば十分優秀とは言える。

  • Photo19: 「同等の性能」がSPECRate 2017 Int Baseというあたりが、それでいいのか? という議論はありそう。

今回の比較でAMDが第3世代Xeonを持ってこなかったのは、現状Intelが出荷している第3世代XeonはCooper Lakeのみで、これは4P以上のシステム向けであることが関係しているのだろう。本来ここには(以前この記事でも触れたが)Ice Lake-SPが来る筈であり、予定では今年第1四半期中に投入される筈なのだが、それに先んじて第3世代EPYCを投入できた、という形だ。そんな訳で、第3世代Xeonとは比較にならない、という事でもある。このあたり、発表会ではもう少し情報が出てくるかもしれない。

最後に今回発表の第3世代EPYCのスペック及び価格をまとめておく(表1)。

  • 表1