前回に引き続きインテル新製品の詳細をお伝えしよう。今回はSapphire Rapidsについてだ。さて、Intel Architecture DayとHotChipsでは「ほとんど」同じ内容であった。異なるのは後述するSVMとS-IOV周りの話だけである。ということで、主にArchitecture Dayのスライドを使いながら説明したい。
マルチチップで性能を向上させる
Sapphire Rapids
Sapphire Rapidsの設計目標は、ノードパフォーマンスとデータセンターパフォーマンスの両方を高めることとされる。具体的にはIPCを高めるとともに、これを支える周辺回路の強化を施すのがノードパフォーマンス、スケールアップ/スケールアウトサーバー構築の手助けとなる仕組みを導入することで、システム全体の実効性能を引き上げようというのがデータセンターパフォーマンスとなる。
さて実現方法であるが、連載629回でも解説したようにマルチチップ(インテル用語ではMulti Tile)構成での提供となった。
さすがにインテルとしても、Xeon向けに巨大なダイを作り続けるというのはそろそろ限界に達したらしい。もっと正確に言えば、巨大なモノシリックダイの限界値はおおむね700mm2かそこらになる。これはどういう話かといえば、半導体製造におけるステッパーによる露光のフェーズで、マスクサイズの限界というものが存在するからで、これがおおむね600~700mm2(これは利用するプロセスやステッパーの性能に依存する)になる。
わかりやすい例が連載572回で紹介したCelebras SystemのWSEである。ダイそのものは4万6225mm2となっているが、写真を見ていただくとわかるように内部はこれを12×7で84個のタイルに分割しており、タイルあたりの面積は550.3mm2かそこらになる。
このチップの作り方は連載572回の3ページ目で説明したように、一度84個のタイルをバラバラにした後で、改めて間に配線を入れる格好でつなぎ合わせており、その意味ではモノリシックなダイとは言えない。
今回このSapphire Rapidsのタイルの面積は400mm2前後とされており、つまり4つでは1600mm2に達する。これをモノリシックで作る方法は現実問題として存在しない。したがって、よりコア数やキャッシュ、搭載するアクセラレーターなどを増やしたり、コアそのものを強化する(=コアのエリアサイズが増える)場合、マルチタイル方式は必須というか避けられない選択肢だったと言える。
構成は下の画像にあるように、4つの同じタイルが載る構成であり、それぞれのタイルにコアとLLC、メモリーコントローラー、UPI、PCIe/CXL、アクセラレーターが載り、間がLink(筆者はこれはUPIベースだと思うのだが、インテルはこの方式を細かく説明していない)でつながれるという方式である。
要するにAMDの第1世代EPYCと同じ仕組みである。AMDは第2世代EPYCでコアとI/Oを分離する方式に改めたが、インテルが今後どういう方向性になるかは少し興味ある部分だ。
さて、Sapphire Rapidsのコアそのもので言えば前回説明したAlder LakeのP-Coreと同じものである。ただ前回の最後で説明したように、Sapphire Rapids向けは以下の違いがある。
- 2次キャッシュが2MB
- AVX-512およびAMXが利用可能
これ以外にも細かな違いがある。このうちAMXについては連載629回で説明済なので割愛する。AVX512に関しては、今年6月にAVX512-FP16の仕様がリリースされており、これに基づく形で実装されている。
要するに従来のAVX512では、FP32だと最大で16演算/サイクルが可能だったのに対し、AVX5412-FP16だと32演算/サイクルが可能になるというわけだ。16bit演算に関しては、Cooper LakeにはBF16のサポートが追加されているが、FP16に関してはSapphire Rapidsが最初である。
CLDEMOTE命令は、実はTremontで最初に実装されている、というか実は筆者も最初このことを忘れていた。このCLDEMOTE命令、正式名称は“Cache Line Demote”命令で、オペランドで指定したアドレスを含むCache Lineを、プロセッサーコアに近いキャッシュ(つまり1次データキャッシュあるいは2次キャッシュ)から遠いキャッシュ(2次あるいは3次キャッシュ)に移動すべき、とプロセッサーに「示唆する」(Hint to)命令である。
即座に1次キャッシュなり2次キャッシュから排除するのではなく、次にプロセッサーが1次データキャッシュなり2次キャッシュの入れ替えをする際に、真っ先に2次/3次キャッシュにスワップアウトされるべき領域をプロセッサーに指示するという仕組みだ。
これは特にプロセッサー間の通信で効果的である。P-Core/E-Coreともに、2次/3次キャッシュはExclusive Cache(排他的キャッシュ)の形で実装される。したがって、あるコアがメモリーを書き換えた(この時点ではまだ1次キャッシュに保存されているだけである)後、そのアドレスをCLDEMOTE命令で3次キャッシュにライトバックさせると、他のコアがその内容を迅速に参照できるわけだ。
おそらくはE-CoreにもこのCLDEMOTE命令は実装されていると思われるが、説明によればAlder LakeではCLDEMOTE命令は無効化されているということで、現時点ではSapphire Rapidsのみが利用できることになる。
この連載の記事
-
第804回
PC
AI向けシステムの課題は電力とメモリーの膨大な消費量 IEDM 2024レポート -
第803回
PC
トランジスタの当面の目標は電圧を0.3V未満に抑えつつ動作効率を5倍以上に引き上げること IEDM 2024レポート -
第802回
PC
16年間に渡り不可欠な存在であったISA Bus 消え去ったI/F史 -
第801回
PC
光インターコネクトで信号伝送の高速化を狙うインテル Hot Chips 2024で注目を浴びたオモシロCPU -
第800回
PC
プロセッサーから直接イーサネット信号を出せるBroadcomのCPO Hot Chips 2024で注目を浴びたオモシロCPU -
第799回
PC
世界最速に躍り出たスパコンEl Capitanはどうやって性能を改善したのか? 周波数は変えずにあるものを落とす -
第798回
PC
日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU -
第797回
PC
わずか2年で完成させた韓国FuriosaAIのAIアクセラレーターRNGD Hot Chips 2024で注目を浴びたオモシロCPU -
第796回
PC
Metaが自社開発したAI推論用アクセラレーターMTIA v2 Hot Chips 2024で注目を浴びたオモシロCPU -
第795回
デジタル
AI性能を引き上げるInstinct MI325XとPensando Salina 400/Pollara 400がサーバーにインパクトをもたらす AMD CPUロードマップ -
第794回
デジタル
第5世代EPYCはMRDIMMをサポートしている? AMD CPUロードマップ - この連載の一覧へ