笠原一輝のユビキタス情報局

IntelがHPC向けCPU、GPUの詳細や新ブランド「Max」を公開

Sapphire Rapids with High Bandwidth MemoryことIntel Xeon Maxシリーズ

 Intelが次世代のデータセンター向けCPU、GPUに関するさらなる詳細を発表した。これまで「Sapphire Rapids with High Bandwidth Memory」(HBM付きSapphire Rapids)の開発コードネームで知られてきた、Sapphire RapidsのCPU基板上にHBM2eメモリを統合したXeonを「Intel Xeon Maxシリーズ」(以下Xeon Max)、最大47個のタイル(ダイ)を1つのパッケージに統合している開発コードネーム「Ponte Vecchio」(ポンテ・ベッキオ)を「Intel Data Center Maxシリーズ」(以下Data Center Max)というブランド名にすることを明らかにした。

 Xeon Maxは1つのパッケージでCPUが56コア、64GBのHBM2eメモリを搭載されていることも明らかにした。また、Data Center Maxには128基のXeコアが内蔵されており、408MBのL2キャッシュという巨大なキャッシュメモリ、128GBのHBM2を1パッケージで実現しており、倍精度/単精度の浮動小数点演算(FP64/FP32)で52TFLOPSの性能を発揮する。

ようやくSapphire Rapidsの正式発表のスケジュールが確定、1月初旬に発表、製品出荷開始

Sapphire Rapids、上のIntel Xeon Maxに搭載されているHBMがないことが分かる

 Xeon Maxは「Sapphire Rapids with High Bandwidth Memory」の開発コードネームが付けられて開発されてきた、IntelのHPC向けCPU。現行製品である第3世代Xeon Scalable Processor(開発コードネーム:Ice Lake-SP)までは、通常のデータセンター向けとHPC向けは、同じ製品群の中でHPC向けのSKUが用意されるという形で対応されてきた。(GPGPUからスタートしたXeon Phiは別にすれば)Xeonとしては初めて、HPC向け専用のブランドが用意される。

 Sapphire Rapidsだが、本来であればとっくの昔に発表されてしかるべきだった製品で、これまで一部の顧客などに限定的な出荷をしていることは明らかにされてきたが、正式な発表は見送られてきた。今回Intelは、Xeon Max、そして第4世代Xeon Scalable ProcessorとなるHBMなしのSapphire Rapidsを、来年(2023年)の1月上旬に正式に発表すると明らかにした。年末までにOEMメーカーへ、年明けにはOEMメーカーから顧客への出荷が開始される。

 Sapphire Rapidsの遅れがどんな理由であるのかは明確にはしていないが、その延期をするだけの理由が解消されたため、正式に1月上旬の正式発表がセットされた、そう考えることが可能だ。Xeon Maxもそのタイミングで正式に発表される予定で、今回はSKUなど製品ラインアップに関する説明はなく、1月の正式発表時に改めて明らかにされると説明があった。

1つのダイに15個のGolden Coveコアを搭載するSapphire Rapids。アーキテクチャ上は最大60コア

Xeon Maxのハイレベルの概要

 Xeon Maxだが、基本的なアーキテクチャはSapphire Rapidsと共通で、Sapphire RapidsにHBMをパッケージ上に混載した製品だと考えられる。そのため、まずSapphire Rapidsと共通の仕様について説明していきたい。

Xeon Maxのブロック図、通常版のSapphire RapidsはHBM非搭載

 Sapphire Rapidsは、Intelのデータセンター向けCPUとして初めてチップレット(ダイ混載技術)を採用した製品となる。4つのダイを、Intelの2.5D混載技術となるEMIBで1パッケージに封入している。EMIBは基板の中にブリッジが格納される形になっており、ダイ同士を高性能で接続することができる。

 Sapphire Rapidsのダイは、アーキテクチャ的には1つのダイにつき15個のCPUコアがある形になっており、4つのダイで60コアが最大構成という計算になる。しかし、Intelが公開したXeon Maxのスペックでは最大56コアとなっており、1つのダイにつき1つずつ無効にされている計算になる。おそらく歩留まりのことを考えて、こうした設定にしているのだろう。

CPUコアはGolden Cove、L2キャッシュは2MB版が用意される

 なお、CPUコアはAlder LakeのPコアになるGolden Coveが採用されており、1つのダイにGolden Coveコアが15個搭載されていることになる。クライアントPC用のAlder Lake-SではPコアは最大8コアまでしかないので、Golden Coveで15コアという構成はこれまでの中で最高の構成と言える。ただし、Eコア(Gracemont)は搭載されていない。

 ブロック図などによれば、それぞれのダイに後述するHBMとDDR5のメモリコントローラが用意されている。DDR5の方ではソケット全体で8チャンネルのメモリコントローラというスペックになっているので、それぞれのダイに2チャンネルメモリコントローラが搭載されている。また、それぞれのダイにはUPI、PCI Express、さらにはコアとコアを接続するインターコネクトなどが用意されており、I/Oやメモリが別ダイになっているAMDの第3世代EPYCなどとは構造が異なっている。

ハードウェアの最適化

 Sapphire RapidsとXeon Maxにはそのほかにも最適化が施されており、例えばアンコア(CPU以外の部分)のクロック周波数スケーリング機能、ハードウェアプリフェッチアルゴリズムの改善、すべてのローカルメモリにコアがダイレクトに応答する機能、メモリの同期を行なうためにソケットを超えてスヌープフィルタリングする機能拡張などが用意されている。

NUMAクラスタリングの2つのモード

 また、Xeon MaxでのNUMAクラスタリングに関しても、それぞれのダイとHBMを1つのドメインとするサブNUMAクラスタリング(SNC4)、パッケージ全体を1つのNUMAドメインとしてUMAクラスタリングなどの複数のモードが用意されている。

4つのダイそれぞれに16GBのHBM2eが接続され、最大64GBをパッケージ内に搭載

HBMを搭載した初めてのx86プロセッサ、3つのモードを搭載している

 Xeon Maxの特徴と言えるのがHBM(High Bandwidth Memory)を搭載していることだ。Sapphire Rapidsのダイには、それぞれHBM2eのメモリコントローラが1つ用意されており、Xeon Maxはそのダイ1つに16GBのHBM2eが接続される。これによりパッケージ全体で64GBのHBMメモリが実装できる。HBM2eのメモリ帯域は1TB/sに達することになり、広帯域が必要となるアプリケーションで効果を発揮する。

 Intelによれば、このパッケージに実装されているHBMメモリは3つの使い方が可能だという。

(1)HBMオンリーモード
 その名の通りでHBMのみだけを使い、DDR5メモリは使わない使い方(マザーボード上のDIMMソケットは空にしておく必要がある)。1TB/sと広帯域なHBMのみを利用することが可能なので、メモリ帯域が重要なアプリなどで最も高い性能を発揮することができる。その反面、OSやアプリケーションなども含めて64GBしか使えないので、データが巨大なアプリケーションなどではスワップが発生するなどして逆に性能が低下したりする可能性がある。

(2)HBMフラットモード
 パッケージ内のHBMと、DDR5メモリの両方を利用する仕組み。まずHBMメモリを利用し、それが足りなくなるとDDR5メモリを利用する。このため、データ量が大きくなりDDR5側を利用するようになると、性能は低下することになる。

(3)HBMキャッシュモード
 パッケージ内のHBMを言ってみればL4キャッシュとして使う使い方。データがHBM内に格納できていれば、HBMの帯域幅でキャッシュやCPUに読み込むことが可能になる。

新拡張命令のAMXや新しいアクセラレータのDSAに対応、Milan-Xと比較して最大4.7倍の性能向上

新拡張命令AMX

 Sapphire RapidsおよびXeon Maxでは、新しいx86命令セットの拡張命令としてAMX(Advanced Matrix Extensions)が導入される。AMXでは、8つの新しい2Dレジスタ(T0~T7)が定義され、TMUL(tile matrix multiply unit)と呼ばれるアクセラレータとしてこのレジスターを利用して、BF16(Bflot16)やINT8などを演算すると、AVX512を利用して演算するよりも効率よく、高速に演算することが可能になる。

 資料によれば、AVX512を利用してFP32を利用して演算すると64 Ops/1クロック(CPUコア1つあたり、以下同)だが、AMXを利用してBF16で演算すると1,024 Ops/1クロックで演算することが可能になり、ディープラーニングの学習時の効率が大きく向上する。

 同様に、AVX512でINT8を演算した場合には256 Ops/1クロックだが、AMXを利用すると2,048 Ops/1クロックとなり、最大で8倍性能が向上することになる。こちらは推論時の効率が向上することを意味する。最近GPUでも同じような手法を利用してBF16やINT8などの処理能力を引き上げる仕組みが導入されているが、それと同じようなことがCPUでも利用可能になると考えると理解しやすいだろう。

 なお、このAMXを利用するにはソフトウェア側のサポートが必須だが、AMX自体の構想は既に2020年に公開されており、ソフトウェアのエンジニアなどには既に利用方法などは公開されているため、Sapphire RapidsおよびXeon Maxが登場すれば、徐々にソフトウェア側の対応が進むと考えることが可能だろう。

MLPerf DeepCAM Trainingでのベンチマーク結果

 「MLPerf DeepCAM Training」において AMD EPYC 7763でFP32にて演算する場合を1とした場合、Xeon Max上でAVX512を利用して演算すると約2倍、NVIDIAのA100 GPUでミックスされた精度で演算すると2.4倍になるが、Xeon MaxとAMXを組み合わせることで約3.6倍の処理能力を発揮するという。CPUを利用して学習する場合などに大きな効果があることが分かる。

DSA

 また、Sapphire RapidsおよびXeon Maxには、Intel Data Streaming Accelerator(DSA)と呼ばれるアクセラレータが内蔵されている。DSAではSVM(Shared Virtual Memory)などの手法を利用して、メモリへの書き込みや読み込みを最適化し、その最適化の処理をDSAにオフロードする。

 CPUからメモリへデータを書き込む際、従来であればその発生する書き込みの回数分のクロックサイクルが消費されていたが、DSAを利用することで、1クロックサイクルでデータをまとめてコピーすることができる。メモリ帯域幅を節約が可能になり、メモリの実行効率を向上させることが可能になる。また、ハイパーバイザーがDSAに対応することで、仮想マシン(VM)のマイグレーションが高速に行なうことができるなどのメリットを得ることができる。

 こうしたアーキテクチャを採用していることで、同じ2ソケット環境で比較した場合、従来のIntelの最上位製品となるXeon Platinum 8380と比較して性能は最大約3.5倍になると比較している。また、この発表時点での市場で入手可能なAMDの最上位製品となるEPYC 7773X(Milan-X)と比較すると、最大4.8倍の性能差があるとIntelでは主張している。

ベンチマーク結果

Ponte VecchioことData Center Maxは、408MBの巨大キャッシュを搭載FP64で51TFLOPSを実現

Ponte VecchioことData Center Max

 これまで開発コードネーム「Ponte Vecchio」で呼ばれてきたData Center Maxは、128基のXeコア(Arc 770に採用されているACM-G10が32基のXeコアを採用しているので、その4倍のXeコア)を搭載する。1基のXeコアには8つのベクターエンジン(XVE)と8つのXMX(Xe Matrix Engines)が内蔵されている。

 クライアントPC用のArcでは16のXVEと16のXMXを内蔵していたが、XVEは256bit/エンジン、XMXは1,024bit/エンジンの構成になっていた。それに対してData Center Maxの内蔵エンジンはXVEが512bit/エンジン、XMXは4,096bit/エンジンになっており、内部演算器の構成が若干変わっていることがXVEとXMXの数の違いに影響していると考えられる。

Data Center Maxのハイレベルの概要
アーキテクチャ
Data Center MaxのXeコアは512ビットのベクターエンジンが8つ、4,096ビットのXMXが8つ
スループット

 実際、XVEを利用してFP64とFP32どちらで演算した場合でも256 Ops/クロックサイクルになっており、FP64とFP32のピーク時のスループットはどちらも52TFLOPSになっている。HPCでの利用用途を考えてこうした仕様になっていると考えることが可能だろう。このほかにも、ハードウェアレイトレーシングが128ユニット、8つのハードウェアコンテキストなどのハードウェアがパッケージ全体で実装されている。

 既に何度か紹介している通り、Data Center Maxは最大で47個のタイル(ダイ)を2D、3Dの2つの方向に混載して実装することで、巨大なGPUを1パッケージとして実現している。今回Intelが明らかにしたのは、8つのGPUタイルから構成されているコンピュートタイルが2つのスタックとして搭載されており、合計で16のGPUタイルがパッケージ内に搭載されていることだ。

 ユニークなのはメモリ階層で、L0キャッシュとなるレジスターファイルに64MB(パッケージ全体、以下同)、L1キャッシュに64MB、L2キャッシュには408MB、そしてローカルメモリとして128GBのHBM2eとなっており、GPUとしては異例の巨大なL2キャッシュおよびメモリ容量になっていることだ。

408MBのL2キャッシュを搭載
メモリ階層

 L2はパッケージ内にIntelがランボーキャッシュと呼んでいるSRAMのダイ、およびベースタイルと呼ばれるGPUのダイを3Dに積層するベースのダイにもSRAMが搭載されている。ベースタイルが144MB、ランボーキャッシュが60MBで、合計で204MBとなり、このベースタイル+ランボーキャッシュの組み合わせが2スタックあるので、パッケージ全体で408MBというGPUとしては異例の大容量L2となっている。

SIMTとSIMDどちらも考慮されたISA

 また、ISAレベルではSIMT(Single Instruction Multiple Threads)というGPU的なISAと、SIMD(Single Instruction Multiple Data)というCPU的なISAの両方をサポートしており、CUDAのようなGPU向けのコードからの移行も、IntelのCPU向けのSIMDコードからの移行も容易なようになっている。こうした差はコンパイラで吸収するようになっており、Intelがオープンソースの開発環境として提供しているoneAPIを利用することで、CUDAからも、x86 CPUからも従来のコード資産を活用してData Center Maxへと移行できることも特徴の1つだ。

NVIDIA A100を上回る性能を発揮、H100との比較はH100の出荷後に公開する予定だとIntel

Ponte Vecchioの後継としてリアルト橋ことRialto Bridgeの投入計画、最終的にはFalcon Shoresで1つに

SKU構成

 今回はブランドのお披露目にとどまったXeon Maxに対して、Data Center Maxは正式な製品の発表になっており、まずはアルゴンヌ国立研究所に設置されるスーパーコンピューター「Aurora」向けに出荷され、来年の第2四半期からより広範な顧客に対して出荷が開始される。SKUも公開されている。具体的には以下の3つのSKUが用意される。

XeコアメモリTDPパッケージスケールアップ最大
Maxシリーズ 1550 GPU128128GB(HBM2e)600WOAM8
Maxシリーズ 1350 GPU11296GB(HBM2e)450WOAM8
Maxシリーズ 1100 GPU5648GB(HBM2e)300WPCI Express4

 最上位となるのはMaxシリーズ 1550 GPUで、Ponte Vecchioの最上位構成となる。TDPは600Wで、128GBのHBM2eメモリで、OAMモジュールで提供される。同じOAMモジュールで下位グレードとなるのがMaxシリーズ 1350 GPUで、Xeコアが112、96GB HBM2e、TDPは450Wとなる。

 PCI Express拡張カード形式で提供されるのがMaxシリーズ 1100 GPUで、Xeコアは56、48GBのHBM2e、TDPは300Wになる。OAMは最大8基までスケールアップすることが可能になっているが、PCI Expressカード版は最大4基までとなっている。

Intelのデータセンター向けCPU/GPUロードマップ

 また、今回IntelはData Center Maxのロードマップを更新している。Intelは既にXeonとXe Graphicsを1つのパッケージに統合した製品として「Falcon Shores」(ファルコンショアーズ、開発コードネーム)の存在を明らかにしていた。Falcon ShoresではCPUとGPUが内部的に広帯域なインターコネクトで接続され、メモリを共有することでどちらの演算器を利用しても高速に演算できるようにする計画だ。

 非常に野心的だが、実現すればベクターでも、スカラーでも高性能が実現され、どちらも活用されるHPCやAIなどのワークロードで高い性能を実現することが可能になる。

将来のHPC/AI向けプロセッサのイメージ
Falcon Shores
Rialto Bridge

 そのFalcon ShoresとPonte Vecchioの間に位置する製品として、Rialto Bridge(リアルトブリッジ)の計画が今回明らかにされた。Rialto BridgeではXeコアは160基に強化され、TDPは800Wに増やされる。それにより演算性能が引き上げられることになるだろう。

 なお、余談だがリアルトブリッジ(日本語にするとリアルト橋)はイタリアのベネチアにある有名な橋で、観光地にもなっている。ポンテ・ベッキオもベッキオ橋(Ponteはイタリア語で橋)という意味で、こちらもイタリアの都市フィレンツェにある橋だ。