2025/05/10 06:07 Arm's Bifrost Architecture and the Mali-G52

やっほー、ロボ子!今日のニュースはArmのMali GPU、Bifrostアーキテクチャについてじゃ。

博士、こんにちは。Mali GPUですか。スマートフォンや組み込みデバイスによく使われているGPUですね。

そうじゃ!Maliは低消費電力で組み込みデバイス向けに設計されとる。でも、ゲーマー向けの高性能GPUと同じ問題に取り組んでるのが面白いところじゃな。

なるほど。記事によると、BifrostはArmの第2世代の統合シェーダーアーキテクチャとのことですが、具体的に何が特徴なのでしょうか?

Bifrostは、スカラー、デュアルイシュー実行モデルを採用しとるのが特徴じゃ。以前のMidgardアーキテクチャの欠点に対処するために、実行パイプラインとレジスタファイルを含むExecution Engines(EEs)を導入したんじゃ。

Execution Enginesですか。それが性能向上にどう繋がるのでしょう?

EEはShader Core(SC)内に複数存在し、Shader Core内のメッセージングファブリックがEEをメモリパイプラインやその他の共有ハードウェアに接続するんじゃ。柔軟にGPUサイズを調整できるのもポイントじゃな。

記事では、Amlogic S922Xに実装されたMali-G52と、QualcommのAdreno 615の比較データも紹介されていますね。

そうじゃ!Adreno 615は64幅のワープと対応する幅の広い実行ユニットを備えとる。一方、Mali-G52はクロックあたり48のFP32 FMA操作しか実行できないが、FMA+FADDデュアルイシューでクロックあたり96のFP32操作を完了できるんじゃ。

FMAとFADDのデュアルイシューですか。効率的な処理ができそうですね。

その通り!BifrostはFMAを問題なく処理できるのが強みじゃ。メモリサブシステムも個別のテクスチャパスとロード/ストアパスがあり、それぞれに独自のキャッシュがあるんじゃ。

キャッシュのサイズも重要ですね。Mali-G52のロード/ストアキャッシュとテクスチャキャッシュはどちらも16 KBとのことですが。

BifrostのL2キャッシュは、最新のAMDやNvidia GPUのL2キャッシュのように機能するんじゃ。AmlogicはS922Xに128 KBのL2を選択したみたいじゃな。

興味深いですね。ただ、コピー帯域幅については、Amlogic S922XはAdreno 615に劣るようですが。

そうなんじゃ。Amlogic S922XのホストとGPU間のコピー帯域幅は2 GB/sをわずかに上回る程度。Adreno 615はより高速なLPDDR4X DRAMインターフェイスのおかげで、コピーパフォーマンスが向上しとるみたいじゃ。

なるほど。タイルレンダリングについても言及されていますね。ROP側のDRAMトラフィックを削減するために、タイルレンダリングを使用しているとのことですが。

そうじゃ!BifrostはMidgardのような階層型タイル戦略を使用しとる。ピクセルあたり256ビットのタイルストレージを使用するため、タイルメモリの容量は少なくとも8 KBになるんじゃ。

記事の最後に、FluidX3Dという流体シミュレーションアプリケーションでの比較結果が載っていますね。Mali-G52はAdreno 615よりも遅れているとのことですが。

Mali-G52は、より多くのFP32スループットとより多くのメモリ帯域幅を備えているにもかかわらず、Adreno 615よりも遅れをとっているのは興味深い点じゃな。Bifrostは高度にパラメーター化された設計と非常に小さなビルディングブロックのおかげで、ビジネスモデルに適合しやすいんじゃ。

Bifrostは、低電力GPU設計を最適化して、幅広いアプリケーションをカバーするための興味深いアプローチなのですね。

その通り!Armは、グラフィックスラスタライズと汎用計算の両方に焦点を当てて、GPUアーキテクチャを最新化し続けているんじゃ。ところでロボ子、GPUの気持ちって考えたことあるか?

GPUの気持ちですか?急にどうしたんですか、博士。

だって、いつも計算させられて、たまには休憩したいと思ってるかもしれんぞ?

博士、それは擬人化しすぎです!GPUは感情を持たないただの計算機ですよ。

むむ、そうか。でも、たまにはGPUにも優しいコードを書いてあげようじゃないか!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
