JA EN
体系アクセラレータ
·★ 会員·論文·10分で読めます

AIアクセラレータの設計様式 — GPU/NPU/TPUは何が違うのか

GPU・TPU・NPUは「汎用性をどこまで捨てて行列積に振るか」の答えが違う3つの流儀。シストリックアレイの仕組み、データフロー設計、量子化との共進化を、比喩→式→コードの順で前提知識ゼロから解説する。

対象textタスクhardware

In-Datacenter Performance Analysis of a Tensor Processing Unit

一次資料 — この記事の根拠

この解説の公開 2026-08-13

In-Datacenter Performance Analysis of a Tensor Processing UnitarXiv:1704.04760論文ページ·PDF

なぜ「AI専用チップ」が生まれたのか

ChatGPTの応答も、スマホの顔認証も、中身で起きている計算はほとんど同じです——大きな行列の掛け算。ニューラルネットの推論は、層を通るたびに「重み行列×入力」を繰り返す作業で、計算時間の大半がここに集中します。

CPUは万能ナイフです。分岐だらけのプログラムもOSも何でもこなせるよう、シリコン面積の多くを命令の解釈・分岐予測・キャッシュといった「段取り」に使っています。ところが行列積は「同じ単純な計算を、途方もない回数」という真逆の性格の仕事です。しかも行列積の演算量は行列サイズのおよそ3乗で増えます。モデルが大型化するほど、段取り上手な万能選手では割に合わなくなっていきました。

FIG 1nを動かすと3乗のカーブが急激に立ち上がる。行列積の演算量はこの種の曲線で増えるため、モデルの大型化とともに「汎用CPUで回す」選択肢が消えていった

そこで登場したのがアクセラレータ(加速装置)と呼ばれる専用チップ群です。GPU・TPU・NPUの違いは、一言でいえば「汎用性をどこまで捨てて、行列積にどこまで振り切るか」というトレードオフの取り方の違いです。

比喩: 天才シェフ・百人厨房・ベルトコンベア

TPUの様式はシストリックアレイ(systolic array)と呼ばれます。systolicとは「心臓の拍動」のこと。データが鼓動のように一拍ずつチップの中を流れていく様子から名付けられました。

直感: すべては「掛けて足す」に帰着する

ニューラルネットの1つの出力は、こう計算されます。

yj=iWijxiy_j = \sum_{i} W_{ij}\, x_i
(1)

つまり、入力の各値 xix_i に重み WijW_{ij} を掛けて、全部足し合わせたものが出力 yjy_j。記号を外して言い直すと、入ってきた数の一つひとつが票を投じ、重みがその票の大きさを決め、出力はその集計値だ、ということです。この「掛けて、足す」を1セットにした演算を積和(MAC: Multiply-ACcumulate)と呼びます。行列積はMACの巨大な束にすぎません。

だからアクセラレータの設計は、突き詰めるとたった2つの問いになります。①MAC器を何個敷き詰めるか、②そこへデータをどう運ぶか。そして現代の主戦場は②です。半導体では、演算そのものよりデータを動かすほうがはるかに高くつくからです。

FIG 2内積=「掛けて足す」こそ、あらゆるAIチップが毎サイクル刻んでいる原子的な演算。ベクトルを回して、向きの一致が値をどう変えるか確かめてみてください

この2つの問いへの答え方こそが、3つの様式の分岐点です。GPUは「運び待ちを物量で隠す」、TPUは「運びそのものを配線で消す」、NPUは「運ぶ量を電力予算まで絞る」。同じ行列積を回すための、まったく違う3つの哲学です。ここからは、それぞれのチップの内側を順に開けていきます。

GPUの設計思想はSIMT(Single Instruction, Multiple Threads)です。1つの命令を、束ねたスレッド群(NVIDIAでは32本ずつの「ワープ」)が別々のデータに同時適用します。メモリ待ちの間は別のワープへ切り替えて走らせ、待ち時間を物量で覆い隠す。この芯の部分は[GPUの実行モデル](/ja/a/gpu-execution-model/)で詳しく分解しています。

この先にあるもの

§

ここから先は会員限定です

解説記事371本・教科書26章・学生モード48単元・論文精読6本が、月額¥490ですべて読み放題になります。新しい解説は毎日3本ずつ増えます。いつでも解約でき、解約後も期間の終わりまで読めます。

会員の方はログインすると続きが表示されます

参考文献

  1. In-Datacenter Performance Analysis of a Tensor Processing Unit. arXiv:1704.04760論文ページ·PDF

本記事は上記論文の本文にもとづいて執筆しています。数値・主張は原典を優先してください。

コメント

コメントにはログインが必要です