Tensor Processing Unit(TPU)は、Googleが設計した特定用途向け集積回路であり、特に機械学習のワークロード、中でもニューラルネットワークの訓練と推論の中核を成す行列乗算を加速するために特化している。汎用のGPUとは異なり、TPUはテンソル演算向けに設計されており、グラフィックス描画用には作られていない。
歴史
Googleは2015年から社内的にTPUを導入し、検索ランキング、ストリートビューの文字認識、そしてAlphaGoの対局中の着手評価などのサービスを加速させた。その後、2016年のI/Oカンファレンスでこのチップを公に発表した。第一世代のTPUは既に訓練済みモデルの推論に焦点を当てており、2017年に発表された第二世代では訓練のサポートが追加され、GoogleはGoogle Cloudを通じて外部顧客にもTPUを提供し始めた。以降の世代であるTPU v3(2018年)、v4(2021年)、v5(2023年)、Trillium(2024年)では、それぞれ性能とメモリが向上し、2020年代半ばまでにTPUは数千チップから成る大規模な相互接続ポッドを形成し、Google自身の基盤モデル、特にGeminiファミリーの訓練に使用されるとともに、Google Cloud経由で外部顧客にも貸し出された。
設計とGPUとの比較
TPUはシストリックアレイ・アーキテクチャに基づいて構築されている。これは、処理要素が固定のリズムで隣接する要素にデータを渡す格子状の構成であり、深層学習で使われる反復的な行列乗算に非常に効率的であるものの、汎用の並列計算に関してはGPUほど柔軟ではない。この特化により、TPUは大規模なニューラルネットワークの訓練とサービングにおいて、ワットあたりおよびドルあたりの効率面で優位性を持つが、テンソル以外のワークロードへの適応性は低い。NvidiaのGPUが広く採用されているCUDAソフトウェア・プラットフォーム上で動作するのに対して、TPUは主にTensorFlow、後のPyTorchおよびGoogle自身の数値計算ライブラリであるJAXを通じてプログラムされ、ソフトウェア・エコシステムは小さめだが成長しつつある。
重要性
TPUは、大手AI研究機関がNvidiaのような供給業者からの汎用シリコンに依存せず、自社製チップ設計を垂直統合する最も明確な例の一つであり、この戦略は後にAmazonのTrainiumやMetaのMTIAなど、他の企業が独自AIアクセラレータを設計する際にも踏襲された。これは、2020年代のAI・ブーム期に大規模言語モデルの訓練と推論の需要が高まったことを受けたものである。TPUは単体のハードウェアとして販売されるのではなく、主にGoogle Cloudを通じて提供されるため、AIアクセラレータ市場全体でのシェアはGPUよりも小さく留まるが、Googleの社内AI基盤の中核を成し、最大規模のモデル訓練にも使用される。また、GoogleはTPUを、外部GPU供給に大きく依存する競合他社と比較して競争力を維持できる主要な要因としてあげている。