最終更新:
TPUとは?CPU・GPUとの違いと行列計算の仕組み
TPUってどんなチップ?
シストリックアレイって何?
積和演算とは?
掛け算した結果を足し込む操作だよ。たとえば1×5と2×7を足すと19になる。行列積はこのような計算をたくさん行うので、データを供給しながら並列に処理できる回路が役立つんだ。
TPUはTensorFlow専用?
どんなモデルだと性能が出やすい?
TPUを選ぶとき何を測ればいい?
行列積の小さな例
次の計算は、特定世代のTPU内部のタイミングを再現するものではなく、積和演算の例です。
A = [[1, 2], B = [[5, 6],
[3, 4]] [7, 8]]
A × B = [[19, 22],
[43, 50]]
左上は1×5 + 2×7 = 19、右上は1×6 + 2×8 = 22です。TPUの行列演算器は、このような積和演算を多数まとめて処理します。実際には数値形式、丸め誤差、メモリ配置なども関係します。
CPU・GPU・TPUは役割で比較する
| 種類 | 検討する場面 | 確認する条件 |
|---|---|---|
| CPU | 一般処理、前処理、小規模で分岐の多い処理 | 並列化、メモリ、I/O |
| GPU | 多様な並列計算やAI処理 | 対応ライブラリ、メモリ、モデル |
| TPU | 対応する大規模な行列中心の計算 | 演算対応、形状・バッチ、入力・通信 |
TPUの行列演算に合わせて余白を足すパディングが発生すると、メモリや演算器を十分に活用できないことがあります。最適な形状やバッチの条件は世代と実装によって異なります。新世代のコード名や製造プロセスの噂を、確定仕様として選定根拠にしないでください。
参考資料
確認日:2026年9月27日。製品の仕様・料金・対応環境は導入時にも確認してください。
- Google Cloud: Introduction to Cloud TPU:向くモデル・向かないモデル、XLAとフレームワーク。
- Google Cloud: TPU system architecture:MXU、シストリックアレイ、世代ごとの構造。
- Google Cloud: TPU performance guide:パディング、バッチ、入力・通信のボトルネック。