ロードマップでわかる!当世プロセッサー事情 第683回
Hot Chips 34で判明したAMDのInstinct MI200とインテルのPonte Vecchioの詳細 AMD/インテル GPUロードマップ
2022年09月05日 12時00分更新
インテルPonte Vecchioの
動作周波数は1.6GHz程度
次いでインテルのPonte Vecchioについて。こちらの詳細は連載629回と連載632回で説明しているが、もう少しだけ細かい情報がわかったので、説明したい。
まずは動作周波数。もともとPonte Vecchioに関しては、Xe-Core1個あたりの処理性能は公開されていたが、全体としての性能はFP32で45TFlops以上、と漠然とした数字しか出ていなかった。
Ponte Vecchioの場合、Xe Coreを64個まとめた「スタック」を2つ集積した構造であり、つまりXe Core数は128となる。先の性能で言えば、Vector Engineの性能はXe Coreあたり256 Flops/サイクル(FP32およびFP64)となり、これが128個集積されるので32K Flops/サイクル(32768 Flops/cycle)という計算になる。これで45TFlopsを実現しようとすると、最低でも動作周波数は1.4GHz前後(1.37296……GHz)ということになる。ただ実際にどの程度の動作周波数を想定しているのか? ははっきりしなかった。
今回、このPonte Vecchioのピーク・スループットが公式に発表された。
大雑把に言えば、動作周波数は1.6GHz程度と考えられる。もっともこれはピーク・スループット、つまり製品の公式な動作周波数という話で、Auroraで実際に稼働させるにあたってこの動作周波数のままかどうか、はまだ未知数である。
というのはFrontierのように、性能/消費電力比を高めるためにInstinct MI250Xの動作周波数を1.7GHz→1.6GHzに落としたという実例があるからだ。このあたりはAuroraが稼働してTOP500に登録されるまでははっきりわからないところである。
もう1つ明らかになったのはRambo Cacheの詳細である。L1がXe-Coreあたり512KBという話は以前公開されていた(連載629回)が、未公開だったのはL2ことRambo Cacheである。今回これが408MBと発表された。
もともとRambo Cacheは8つのタイルに分かれて実装されていることが明らかにされていたので、つまりタイルあたり51MBという、少し不思議な容量になっている。
Rambo Cacheは先の図でもわかる通り2つのCompute Tileから同時アクセスが可能な構造になっており、Compute TileとRambo Cacheの間の帯域はおおよそ832GB/秒ほどという計算になる(これが8タイル×2つのI/Fで、トータル13TB/秒)。この帯域はかなり広いというか、先のInstinct MI250Xのダイ間接続の倍以上、というおそろしい代物である。
ただこちらはそもそも2次キャッシュということもあり、おそらくバス幅はかなり広いと思われる。仮にRambo Cacheへのアクセス速度がダイと同じ1.7GHzで行なわれているとすれば、512bit幅があれば足りる。半分の速度だとしても1024bit幅があればまかなえる。Foveros経由ということを考えれば、512bit幅あるいは1024bit幅であってもそれほど構成は難しくないだろう。
また408MBものRambo Cacheを搭載したメリットとしてインテルが示した例が下の画像だ。ディープニューラルネットワーク向け処理はともかく、特に科学技術計算の中でもランダムアクセスが頻繁に発生するFFTで、32MB/80MBの場合と比較して倍近くまでスループットが上がるとしている。もっとも特にFFTの場合、本当に408MBで十分なのか? というのは気になるところだ。
性能ではもう1つ、XMX Matrix Unitの効率も今回示されたのだが、なんというかものすごすぎる。これはBF16を利用してGEMMを実施した例で、Matrixのサイズを4096まで引き上げると効率が95%を超えるとしているのだが、逆に512で40%未満、1024で70%弱、2048でも90%にいかないというありさまである。
相当大きくしないと効率が悪いというのは、逆に言えばMatrix Unitにデータを格納したり、逆に結果を取り出すオーバーヘッドが相当大きい、ということになる。このあたりは、性能をうまく出すためには苦労しそうである(同じことはSapphire Rapidsで搭載されるAMX Unitにも言えそうだが。
あとおもしいのは、Ponte VecchioではSPMD(Single Processor Multi Data)/SIMT(Single Instruction Multi Thread)とSIMD(Single Instruction Multi Data)の2種類の動作モードをサポートする、という話もあった。GPU的な動作で言えばSPMD/SIMT的なプログラミングの方が一般的であるが、CPUで動いていたプログラムを移植するという観点ではSIMDの方が楽である。
性能はもちろんSPMD/SIMTの方が出るという話で、例えばHACC(Hardware/Hybrid Accelerator Cosmology Code:アルゴンヌ国立研究所で開発されている、宇宙の構造などの計算に利用されるライブラリー。Exascale Computing Projectsにもう少し細かい話がある)をまずSIMDの形で移植、これをSIMTに書き換えたら4.2倍程度に高速化したとされる(SPMDに最適化するにはもう少しチューニングが必要だそうだが)。ただこれも書き方とかデータの持ち方などで変わってくる部分があることもあり、定量的な形での性能向上率などは示されなかった。
もともとPonte Vecchioは、消えてしまったKnights Hill(第3世代Xeon Phi)の代わりに開発されたもので、そのXeon PhiはCPUで行なっていた処理をより効率的に実行するGPGPUになる予定だったわけで、そうなるとx86からのアプリケーションの移行は必須である。
このために同社は最近oneAPIに力をいれており、最近では低レベルでのGPUのハードウェアの制御も可能とするoneAPI Level Zero APIの提供や、CUDAで記述されたアプリケーションをSYCLに効率的に変換するIntel DPC++ Compatibility Toolの提供など、ソフト面での充実に余念がない。
今回のSPMD/SIMTモードとSIMDモードの両提供も、こうした流れの一部と考えれば理解はしやすいのだが、問題は「いつ出てくるの?」という話である。Sapphire Rapidsもそうだが、Ponte Vecchioも何時になったら本格稼働に至るのだろうか?
この連載の記事
-
第764回
PC
B100は1ダイあたりの性能がH100を下回るがAI性能はH100の5倍 NVIDIA GPUロードマップ -
第763回
PC
FDD/HDDをつなぐため急速に普及したSASI 消え去ったI/F史 -
第762回
PC
測定器やFDDなどどんな機器も接続できたGPIB 消え去ったI/F史 -
第761回
PC
Intel 14Aの量産は2年遅れの2028年? 半導体生産2位を目指すインテル インテル CPUロードマップ -
第760回
PC
14nmを再構築したIntel 12が2027年に登場すればおもしろいことになりそう インテル CPUロードマップ -
第759回
PC
プリンター接続で業界標準になったセントロニクスI/F 消え去ったI/F史 -
第758回
PC
モデムをつなぐのに必要だったRS-232-CというシリアルI/F 消え去ったI/F史 -
第757回
PC
「RISC-VはArmに劣る」と主張し猛烈な批判にあうArm RISC-Vプロセッサー遍歴 -
第756回
PC
RISC-Vにとって最大の競合となるArm RISC-Vプロセッサー遍歴 -
第755回
PC
RISC-Vの転機となった中立国への組織移転 RISC-Vプロセッサー遍歴 -
第754回
PC
インテルがCPUの最低価格を82ドルに引き上げ、もう50ドルでは売れない製造コスト問題 インテル CPUロードマップ - この連載の一覧へ