Predicationで半自動ベクトル化も可能
さらに独自の4オペランドFMAを実装
Predicationは、Load/Storeの際にも利用できる。Load/Store命令の際に、データを並べ替えながらのロードが可能(インデックスレジスターで指定)だが、これにPredicationを加えて「そもそもLoad/Storeをする/しない」の制御も可能になっている。このPredication付きロードは複数のモードがサポートされている。
ややわかりにくいが、これはZ0.Dというレジスターに、X0というアドレスから始まるメモリーの値をロードする処理で、ただし並び順をZ1.Dというインデックスでして、さらにP0/zのPredicationでロードする/しないを設定している
こうしたPredicationの指定そのものは珍しくないというか、SIMD演算では似たものはいくつかあるが、通常は個々の命令に対する拡張として実装されているのに対し、A64FXではベクトルレジスターに対する操作の一般的な手法としてPredicationが用意されているのが大きな違いである。
もっともこれは(プロセッサー内部の処理からすると)面倒な作業になるわけで、専用処理ユニットとパイプラインが追加されたのも無理ないところである。
実際、ここまでの細かな操作がサポートされていないSPARC64 XIfxには、Predicationユニットが搭載されていない。
そしてPredicationと先のFirst-fault loadを組み合わせると、とてもベクトル化できそうにないコードですら、SVEでぶん回せることになる。
これはわかりにくいが、下の4命令で16要素まとめて判別している。また左のスカラーコードは、A[N]が十分大きければいずれはページフォルトを起こすはずで、その振る舞いはFirst-fault loadで再現できることになる
A[N]はintなので32bitとすれば16倍、もしこれをINT8で実装したら64倍の速度でwhileループを回せるわけだ。さらには、Predicationを使っての半自動ベクトル化も可能としている。
SVEに絡んだ独自の実装が、4オペランドFMAである。D=A×B+Cという一般的なFMA(Fused Multiply-Add)処理の場合、A/B/C/Dの4つのオペランドが必要になる。ただARM v8ではこの4オペランド命令をサポートしていない。
そこで、通常は上のソースにあるように2命令での処理になるわけだが、A64FXではこれを内部的に処理して、1つのFMA4命令としてハンドリングすることになる。これにより、フロントエンドでは2命令として認識されるものの、バックエンドでは1命令で処理されることになり、実質的な性能向上につながるわけだ。
消費電力を下げるために
デコードと実行ユニットを制限できる
性能向上の一方で、省電力の仕組みもやや独特である。チップ単位のEnergy monitorと、コア単位のEnergy analyzerを併用し、細かく消費電力を監視しながら電圧/動作周波数を制御するというあたりまでは一般的であるが、Power knobの実装はあまり見かけたことがない。
要するに、デコードを絞るとともに、利用する実行ユニットも制限することで消費電力を下げるという仕組みである。最小に絞ると、デコードは2命令/サイクルになるし、EXB/FLBのユニットは休止になるため、実質5命令のスーパースカラー/アウト・オブ・オーダー構成になる。
ついでにHBM2のバンド幅も10%単位で絞ることが可能になる(もちろん動作周波数も下げられる)仕組みだ。

この連載の記事
-
第852回
PC
Google最新TPU「Ironwood」は前世代比4.7倍の性能向上かつ160Wの低消費電力で圧倒的省エネを実現 -
第851回
PC
Instinct MI400/MI500登場でAI/HPC向けGPUはどう変わる? CoWoS-L採用の詳細も判明 AMD GPUロードマップ -
第850回
デジタル
Zen 6+Zen 6c、そしてZen 7へ! EPYCは256コアへ向かう AMD CPUロードマップ -
第849回
PC
d-MatrixのAIプロセッサーCorsairはNVIDIA GB200に匹敵する性能を600Wの消費電力で実現 -
第848回
PC
消えたTofinoの残響 Intel IPU E2200がつなぐイーサネットの未来 -
第847回
PC
国産プロセッサーのPEZY-SC4sが消費電力わずか212Wで高効率99.2%を記録! 次世代省電力チップの決定版に王手 -
第846回
PC
Eコア288基の次世代Xeon「Clearwater Forest」に見る効率設計の極意 インテル CPUロードマップ -
第845回
PC
最大256MB共有キャッシュ対応で大規模処理も快適! Cuzcoが実現する高性能・拡張自在なRISC-Vプロセッサーの秘密 -
第844回
PC
耐量子暗号対応でセキュリティ強化! IBMのPower11が叶えた高信頼性と高速AI推論 -
第843回
PC
NVIDIAとインテルの協業発表によりGB10のCPUをx86に置き換えた新世代AIチップが登場する? -
第842回
PC
双方向8Tbps伝送の次世代光インターコネクト! AyarLabsのTeraPHYがもたらす革新的光通信の詳細 - この連載の一覧へ
















