後藤弘茂のWeekly海外ニュース

AMDやIBM、Armが「Hot Chips 31」でCPUアーキテクチャを公開

CPUカンファレンスでAMDが基調講演

 毎年8月に開催される半導体チップのカンファレンス「Hot Chips」は、最先端プロセッサのお披露目の場として定着している。今年(2019年)は、米スタンフォードのスタンフォード大学の講堂「The Memorial Auditorium」で、8月18日から20日にかけて開催された。

 カンファレンス初日の基調講演には、AMDのCEOであるLisa Su(リサ・スー)氏(President and Chief Executive Officer,AMD)が登場。また、高性能プロセッサのセッションなど14のセッションが講演された。

Hot Chipsの会場となったスタンフォード大学のThe Memorial Auditorium

 基調講演に登場したAMDのSu氏は、高性能プロセッサを巡る現在の半導体技術の状況を説明、今後の高性能システムに必要とされる要件を展望した。Su氏は、2017年12月に米サンフランシスコで開催された半導体学会「IEDM(IEEE International Electron Devices Meeting)」以降、このストーリーを展開しているが、今回は実際の7nmプロセス製品が出そろったことで、具体的な製品とシステムに落とし込んだ説明を行なった。

 Su氏のポイントは、以下のとおり。過去10年間、ハイエンドCPUは約2.5年で2倍、ハイエンドGPUは約2.25年で2倍ずつ性能を向上させて来たが、これはプロセス技術の進歩とダイの大型化やマイクロアーキテクチャの改良、システムのオンダイ統合によるものだった。しかし、ムーアの法則が鈍化しており、チップの製造コストが急上昇しているおり、ダイの大型化や電力も限界に来ているため、今後は新しいアプローチが必要となる。

これまでのサーバーCPUとGPUの性能向上
性能向上の要素
鈍化するムーアの法則
高騰するチップの製造コスト
限界に達しつつあるプロセッサの消費電力

 半導体系の学会では、ここで次の展望としてダイの3D統合などの話に移ったが、プロセッサがテーマであるHot Chipsでは、コンピューティングとインターコネクトに焦点が当てられた。Su氏は、マイクロアーキテクチャの改良によるIPC(Instruction-per-Clock)の向上やチップレット化によるモジュラー設計によるCPUの性能の向上、そしてアクセラレータによる高速化が重要だと説明した。

 ドメインに特化したアクセラレーションを効率的に行なうには、GPUやFPGA、セミカスタムASICが有効となる。HPC(High Performance Computing)や機械学習のワークロードでは、CPUだけでは必要とされるコンピュート性能を実現することができない。そこで、そうしたアクセラレータをどうやって統合するかが、今後のカギとなる。

今後の展望として重要となるシリコンチップ設計とシステム設計、ソフトウェア層の3要素
7nmプロセスの第2世代のEPYCではIPC(Instruction-per-Clock)をさらに向上
9個のダイを使ったモジュラー設計の64コア EPYC サーバーCPU
モジュラー設計とマイクロアーキテクチャの改良によってEPYCの性能がジャンプ

 Su氏は、ソケット当たりの高速I/Oレーン数が非常に多いAMDのサーバーCPU「EPYC」によって、4個のGPUをCPUに直結、また、GPU同士は同社のインターコネクト技術「Infinity Fabric」によって相互接続できることを説明。緊密に接続したCPU+GPUのノードによって、代表的なワークロードがアクセラレートされることを示した。また、今後の展望としては、チップ間インターコネクトとメモリの広帯域化が重要となるとした。

CPUだけでなくGPUやFPGA、アクセラレータとの統合が重要となる
特定アプリケーションではGPUやセミカスタムSoCやFPGAのほうが電力効率がずっと高くなる
CPUとGPUをPCI Express Gen4で接続。GPU同士はInfinity Fabricで相互接続する
ソフトウェアライブラリを用意してソフトウェアに優しいスケーラビリティを実現する

 そして、CPU+GPUのアクセラレーションシステムの例として、Su氏が挙げたのが、米国最高のスーパーコンピュータセンタの1つ、Oak Ridge National Laboratory(ORNL)の次世代スーパーコンピュータ「Frontier(フロンティア)」だった。Frontierは、次世代のエクサスコン、つまり、1 ExaFlops以上の性能を達成するスーパーコンピュータの一角で、AMDのCPUとGPUベースで構築されることが発表されている。2021年にオンラインの予定のFrontierは、AMD GPUをアクセラレータとして組み合わせることで、1.5 ExaFlopsの演算性能を実現する予定だ。

多くのワークロードがCPU+GPUで効率的にアクセラレートされる
AMDのCPUとGPUを組み合わせるエクサスーパーコンピュータFrontier
Frontierでエクサの壁を破る
AMDのLisa Su(リサ・スー)氏(President and Chief Executive Officer,AMD)

3種類のダイで構成するAMDの「Zen 2」アーキテクチャ

 汎用CPUのセッションでは、AMD、Arm、IBMの3社が発表を行なった。ちなみにIntelも、メインストリームのCPUコアこそ発表しなかったが4件の発表を行なっている。

 AMDは7nmプロセスの新CPUコア「Zen 2」のベールをまた1枚はいだ。Zen 2ベースのCPU製品について、より詳細を明らかにした。Zen 2は、AMDの7nmプロセスCPUコアだが、チップとしての最大の特徴は、CPUコアとI/O回りを別ダイにしたモジュラー設計にある。

 Zen系統のCPUアーキテクチャでは、4個のCPUコアでL3までのキャッシュを共有するクラスタ「CCX(Core Complex)」を構成している。7nmのZen 2では、2個のCCXで8個のCPUコアを、1個のダイ「CCD」にまとめている。7nmのCCDのダイサイズは74平方mmで、トランジスタは38億。

3種類のダイで多数の製品を派生させるAMDの戦略。各ダイのトランジスタ数が公開された

 I/Oチップはクライアント用とサーバー用の2種類がある。クライアント向けのZen 2「Matisse(マティース)」は、クライアント用のI/Oダイ「cIOD(Client I/O Die)」を使う。cIODは最大2個のCCDの接続が可能で最大8CPUコアまでをサポート、デュアルチャネルのDDR4メモリインターフェイス、高速シリアルインターフェイスを32レーン備える。

 Hot Chipsではトランジスタ数などのチップスペックが明らかにされた。トランジスタ数は20.9億で、ダイサイズは125平方mmだ。プロセスはこれまで14nmとされていたが、実際には14nmから派生した12nmプロセスであることが明らかになった。

クライアント向けのRyzen系の構成

 サーバー向けのZen 2「Rome」では、サーバー用のI/Oダイ「sIOD(Server I/O Die)」を使う。sIODはトランジスタ数が83.4億で、ダイサイズは416平方mm。sIODのトランジスタ数が非常に多いことが判明したが、これはバッファSRAMの搭載によるものと推測される。sIODには8チャネルのDDR4や128レーンのPCI Express Gen4などを備える。プロセスはcIODと同様に12nm。

7nmプロセス世代のEPYCの概要。トータルでは1,000平方mmのダイ面積となるが、高コストな7nmプロセスはCPUコア部分だけで、しかもダイサイズを小さく留めて歩留まりを上げている
各CPUパッケージに8個のCCDで2ソケットで合計128 CPUコアとなるEPYCの2ソケットシステム。ソケット間はシリアルリンクのInfinity Fabricで接続する。

 AMDはモジュラー設計によって、CCDとcIOD、sIODの3種類のダイを起こしただけで、メインストリームPCからハイエンドサーバーまでのラインナップを製造可能にした。また、クライアント向けとサーバー向けの両方のCPU製品を先端プロセスでほぼ同時に出すことを可能にした。

Zen 2の概要を説明したDavid Suggs氏(CPU Microarchitect, Fellow at AMD)
Zen 2の性能向上のブレイクダウン
Zen 2のフロントエンド
Zen 2の整数演算コア
Zen 2の浮動小数点演算パイプ
Zen 2のロード/ストアとメモリ回り
Zen 2のマイクロアーキテクチャ
PDF版はこちら

Armのサーバー向けCPU「Neoverse N1」

 省電力CPU IPのArmは、同社が開発したサーバー向けCPU「Neoverse(ネオヴァース)」について紹介した。Armはサーバー向けCPUコアはサードパーティにまかせる戦略だったが、結果としてArmサーバーは市場への浸透が順調には進まなかった。そこで、同社は戦略を転換、CPUコアとオンダイインターコネクトなどを自社で開発してライセンスする方式へと切り替えた。

 Neoverse N1は4-wayデコード、最大8命令イシューのスーパースカラCPUで、Armがシングルスレッド性能を高めたCortex-A76をベースとしている。命令セットはArmv8.2。サーバーCPUであってもArmは電力効率を追求、コンパクトで省電力なCPUコアとしている。Neoverse N1 CPUコア+L2までのキャッシュで電力消費は1~1.8W(2.6~3.1GHz時)、ダイエリアは1.15~1.4平方mm(512KB/1M L2キャッシュ、7nm)。64 CPUコアのSoCでは、性能は1300 SPECint06以上で、電力はSoC全体で105Wに抑えることができるという。

Cortex-Aから機能を拡張
コンパクトで省電力なNeoverse N1

 Armは、Neoverse N1をwebサーバーやプロキシ、APIゲートウェイなどのワークロードをメインのターゲットとしている。Hot ChipsではオープンソースのwebサーバーNGINXなどを例に取り、メモリレイテンシと帯域、コンテクストスイッチオーハーヘッド、CPUフロントエンド効率などの最適化が重要だと説明。Neoverse N1では、マイクロアーキテクチャをそうした環境に合わせた最適化を行なったという。

Neoverse N1が主要ターゲットとするNGINXサーバーソフトなどのワークロード

 具体的にはキャッシュ階層とTranslation Lookaside Buffer(TLB)、分岐予測を強化して、分岐が多くワークロードの量も多い環境に最適化した。また、OS/Hyper-Threadingのアクティビティが非常に多いことを考慮して、コンテクストのスイッチのレイテンシの短縮にもつとめた。その結果、従来、Armコアでサーバーに使われていたCortex-A72と比べて、NGINXでのスループットを大幅に高めることができたという。

 また、ランタイムソフトウェア環境に向け、ベージコレクションやオブジェクトマネージメントを意識した改良も行なった。そのほか、インフラストラクチャアプリケーションに向けたマイクロアーキテクチャの拡張も行なっている。メモリ帯域とレイテンシの改善に加えて、ロード/ストアのアウトオブオーダウィンドウを拡張した。

ワークロード向けの改良点
NGINXサーバーでの性能改善
ソフトウェアのランタイム化に合わせた改良
インフラストラクチャ向けの拡張

 ArmはNeoverse向けのメッシュネットワークも提供する。最大で64コア~128コアの構成が可能なメニイコア向けメッシュネットだ。Armの7nm向けのリファレンスデザインでは64コアに、128レーンのPCI Express Gen4、8チャネルのDDR4インターフェイスを備えている。また、2x-4xのCCIXリンクでアクセラレータチップを接続することも可能だ。

64コアのNeoverse N1のリファレンスデザイン
CCIXでアクセラレータの接続もサポート

 メッシュネットワーク自体は1x2から8x8までのスケーラブルな構成が可能だ。Neoverse N1は、CPUコアごとに、64KBのL1命令キャッシュと64KBのL1データキャッシュと512KBまたは1MBのL2キャッシュを備える。さらにシステム全体で共有のシェアードシステムキャッシュが2個のCPUクラスタごとに配置されており、メッシュネットワークに接続されている。

Neoverse N1コアとシステムレベルキャッシュ
Neoverse のキャッシュ階層
Hot ChipsでNeoverse N1の説明を行なったArmのAndrea Pellegrini氏(Senior Principal Engineer, Infrastructure Line of Business, Arm)

IBMのPower 9 AIOはOpenCAPIのメモリインターフェイス版を実装

 IBMは同社のPower CPUのロードマップを発表した。IBMは2017年に「Power 9」を投入した。今後は、2020年にPower 9のI/O拡張版の「Advanced I/O(AIO)」を投入、さらに2021年には次世代マイクロアーキテクチャの「Power 10」を投入する。

 Power CPUは現在、NVIDIAのハイエンドGPUとともに、スーパーコンピュータに導入されており、GPUを統合したヘテロジニアスコンピューティングの重要な土台となっている。Power 9世代は14nmプロセスで、Power 10は7nm以降のプロセスになると推測される。

IBMのPowerのロードマップ
Power 9の3バリエーション

 IBMは、Hot Chipsで今後のPowerの強化のポイントが、I/Oとメモリ帯域にあることを明らかにした。そして、IBMのアーキテクチャでは、I/O強化とメモリ帯域の拡張を同一のアーキテクチャで実現する。

 Power 9 AIO(Advanced I/O)では、DDR4を使いながら、メモリ帯域はサステインで650GB/sに達する。CPUとメモリのインターフェイスにDDR4を使わず、新インターフェイス「Open Memory Interface(OMI)」を使うことで実現する。OMIは、言ってみればアクセラレータインターフェイスのOpenCAPIのメモリインターフェイス版だ。差動伝送で25.6Gbpsの転送レート、x8リンクを1チャネルに使う。Power 9 AIOは、OMI 25Gbps x8構成のチャネルを、トータルで16チャネル備える。双方向でピークでは800GB/sの計算で、サステインの帯域では650GB/sとなる。

Powerシリーズのメモリアーキテクチャ
OMIを使うメモリ構成

 DIMM側にはOMIに準拠したMicrochipのバッファチップ「Microchip SMC 100」を搭載する。SMC 100がOMIインターフェイスをDDR4インターフェイスにトランスレートする。DIMMは帯域最適化版と大容量版の2系統。帯域最適化版では、SMC 100バッファチップには、DDR4チップをx16では1ランクで5チップ接続する。容量はPower 9 AIOチップトータルで512GBで帯域は650GB/sとなる。大容量版ではDDR4をx8で、2ランク18チップ接続する。容量はPower 9 AIOで4TBに達するがサステインの帯域は320GB/sとなる。

OMIインターフェイスとバッファチップ
バッファチップMicrochip SMC 100でDRAMを接続

 バッファチップを使うアプローチは大容量メモリ搭載サーバーでは一般的だが、OMIを使うPower 9 AIOではインターフェイスが高速になっている点が大きく異なる。Power 9 Scale UPでもバッファを使うが、バッファチップとのDMIは9.6Gbpsだった。OMI DIMMはJEDECで標準化も行なうという。

 OMIを実装する代わりにPower 9 AIOからはメモリインターフェイスPHYが取り去られている。そのため、トータルでのDRAMアクセスレイテンシの増大は最小に抑えられるという。通常のLRDIMMに対しては4ns台のレイテンシアップ、RDIMMに対しては5~10nsにとどまるという。

 また、IDMはアクセラレータインターフェイスOpenCAPIの実装プランも明らかにした。Power 9 AIOにはOpenCAPI 4.0、2021年のPower 10ではOpenCAPI 5.0が実装される。OpenCAPI 5.0では転送レートは32/50Gbpsに達する。

OpenCAPIのロードマップとIBMの実装

 Power 9 AIOは14nmプロセスで728平方mmのダイサイズ、80億トランジスタ、24のSMT(Simultaneous Multithreading)4コア、120MBのL3 eDRAMキャッシュを備える。また、25Gbpsの高速シリアルインターフェイス「PowerAXON」を備えており、これをマルチソケットのSMP(Symmetric Multi-Processing)接続、NVIDIA GPU接続のNVLink、アクセラレータ接続のOpenCAPI 4.0に使う。NVLinkは最大x48、OpenCAPIも最大x48。

Power 9 AIOのダイ
Power 9 AIOとNVIDIA GPUの構成
Power 9 AIOの発表を行なったJeff Stuecheli氏(Power Systems hardware architect, IBM)