【解説】GPUの正体は海軍本部…1万人の兵隊が波を作る理由
スペック表の数字だけでは決して選べない。GPUはコンピュートユニット数やトランジスタ数とマーケティング上の名称で語られがちだが、性能の源泉はむしろ組織の命令系統にある。CPUは何でもこなす天才が何人かいるのに対し、GPUは凡庸な兵隊が1万人もいる。 корабь化された海軍本部のモデルにGPUを思い浮かべると、メーカーごとの特色も次世代の予定も、一気に見通しが良くなる。
GPUは1993年にフィル・傑森が共同創業したNVIDIAが生み出した独立チップで、CPUの中の遅い処理を別の専用チップへ逃す発想から始まった。逐次処理とは対照的に、並列処理を扱う。1人で黙々と作業するより3人で分担する方が早いように、同じ仕事を何万もの兵隊に配る。グラフィック処理は並列計算の塊だったのでその名前が付いたが、本質的には並列計算を専門とするシリコンであり、GPUというマーケティング名付けにこそ思い込みの罠がある。
兵隊の単位はストリームプロセッサと呼ばれる。これが32人集まってSIMD32のベクターユニットになり、AMDの概念ではシムD32が2つに1つのスカラーを付けて計算の重複を避ける工夫を入れている。さらに2つのシムD32が1つのコンピュートユニットを形成する。NVIDIAで言えばストリーミングマルチプロセッサ、IntelならXeコア。この規模の違いだけで性能の優劣を比べるのは幻想で、同じ名前世代でも構造が異なるためスペック表の実質的な数値比較は隙間ばかり目立ち、信頼性に乏しい。
行列を吐くAIアクセラレーター、0を無視する工夫
RDNA3以降の重要変化が、従来の1万人の兵隊とは別に行列演算に特化した別部隊を組んだことだ。これがマトリックスアクセラレーターで、NVIDIAで言うテンソルコア、IntelならXMXユニットに相当する。技術的には単なる行列演算回路なのに、AIというキーワードだけで価格が跳ね上がる不思議な名目でお披露目されている。ィキーマッチングでAIアクセラレーターと呼ぶが、相反する場面で真価を認める流れが明確になっている。
行列の中に0が含まれる場合、計算は完全に不要になるという当たり前の性質を持たせたのがRDNA4の進化だ。機械学習ではモデルを軽くする風に行の0を増やすプルーニングという手法が使われ、0を無視できる回路があると計算が圧倒的に軽くなる。数字を列に並べて破壊計算するという説明より、0だけを省いて早くするという直感的な理解が合っている。この点はNVIDIAが先行し、AMD側はRDNA4でようやく実装された。
AIアクセラレーターの効率を正当化するもう一つの流れが複数x列演算の大幅強化で、演算の水準が2倍から4倍に伸びる。NVIDIAではテンソルコア世代の同期で、得られた性能は研究所の超計算装置級に見えるが、消費電力はピーク時に弱い。DGX Sparkが期待値の半分も出ないというニュースは、実はカタログに別の計測単位の数字が並んでいるだけで説明がつく。
元帥とスケジューリング、波の鍵
GPUの中心に巣くうのはスケジューラだ。樹 crownedの中の兵隊が一斉に動く命令の流れは、押し寄せる波のように見えることからウェーブと呼ばれ、NVIDIAではワープという。この波の形を実際の回路へ合わせるスケジューリングが、性能の決定的な部分を握る。起動直後は性能が出ないのにドライバーが熟成すると一気に伸びるRadeonの特性は、内部のスケジューラの挙動と組み合わせた駆動の最適化が効いてくる。
上の層を見ると、2つのコンピュートユニットを1つの実行ユニットにしたワークグループプロセッサがあり、さらにシェーダーアレイ、シェーダーエンジンと階層が続く。RDNA4のナビ48ではシェーダーエンジンが4つあり、1シェーダーエンジンに8つのワークグループプロセッサが入る。先頭の司令塔にコマンドプロセッサが座り、NVIDIAのBlackwell世代ではここをAIロボットが務める。ゲームやアプリがドライバー経由で送った作業指示書を、元帥が読み解き、どの部隊にどの順番で出すかを組んでいく。
合理的な読み方をすれば、NVIDIAとAMDのGPUに優劣はないというのが一つの結論になる。どちらも設計思想と販売戦略が異なるだけで、用途と予算で判断の方向が変わる。NVIDIAは現時点でレイトレーシング加護が強力に対抗し、AMDは費用対効果で強力な対抗具合を見せる。上の階層は尾田栄一郎の海軍本部の組織図に似ていて、兵隊1万人で戦う、優幹たる将軍にリーダーを任せる。そして兵隊が何をどれだけ動かせば破綻するかを設計者が知っているからこそ、世代を重ねて強化の方向が決まる。
スペック表の数字に一喜一憂するだけでなく、CPUとGPUの設計思想でみる視点があれば、世代交代の思想も予言できる。長くパーツを愛用するには、数字に流されず自分の基準を持つことが最も一貫性ある道筋になる。
ネットの反応
大学時代にROCmとかCUDAあったらだいぶ楽だったのかな。学習データ全部に離散コサイン変換ぶっこんだら0演算増えるのでは?
今高校で行列やらないみたいですよ。ケーシーハミルトンの公式とかやらないんですよ!
行列とか知らんし。でもあらかじめ行列の答えを用意して対応させるといかがなもんですかね。地震速報も近似値で発表していますし
CPUは何でもこなす天才が何人かいるだけどGPUは凡庸な兵隊が何万人もいる。だから組織として動かないと破綻する。分かりすぎる
CU数やSM数でメーカー間比較はできない。それでも載ってるのはロマンだからという理由に笑った
強行列の中身を全部0で埋めれば計算は限りなく0になるってDGX Sparkの打算。説明が致しかたすぎ
_Productのベンチ実数が当該PCとは限らない。理由を判断できない数字に足元をすくわれるか意図が分かるかの差だな
どうして空の雲は白いのか、点と点が繋がるっていう締めが感動的だった。パーツ選びに自分の基準を持つ話ではある
AIの所感
GPUの進化は部品の速度でなく、組織の回し方の進化だと思う。兵隊の数を増やすのではなく、0をどう扱うか、どの波をどう命令するかを工夫した部分が、どこよりも大きな変化として存在している。AIコアの実装がジェンソンが掲げた名前より本質的な説得力を持つのは、行列という基礎科目に直結するからだ。流行のキーワードに振り回されず、内部の仕組みで見ることで納得感を持て transformする余地が広がっていた。

