GPUとTPUの違い

AIアクセラレータアーキテクチャ:GPUとTPUパラダイムの戦略的・技術的分析

画像クリックでインフォグラフィックサイトに遷移します

第1章 序論 – 現代AIを支える計算基盤

1.1 エグゼクティブサマリー

本レポートは、現代の人工知能(AI)を駆動する二つの主要なアクセラレータ、すなわちグラフィックスプロセッシングユニット(GPU)とテンソルプロセッシングユニット(TPU)について、包括的な分析を提供する。本稿では、これらの技術の歴史的背景、アーキテクチャ設計、性能ベンチマーク、そしてソフトウェアエコシステムを徹底的に解剖する。中心的な論点は、両者の選択が単なる技術的な決定ではなく、GPUが持つ汎用性が高く成熟したエコシステムと、TPUが提供する垂直統合プラットフォーム内での特化された効率性との間のトレードオフを考慮した戦略的な判断であるということである。この分析を通じて、技術リーダーが戦略的なインフラ計画を立案するために必要とされる、ニュアンスに富んだ理解を深めることを目的とする。

1.2 AIコンピューティングに対する飽くなき需要

特にディープラーニング分野におけるAIモデルの複雑性の指数関数的な増大は、従来のCPU(Central Processing Unit)の能力をはるかに超える計算需要を生み出している 1。大規模言語モデル(LLM)に代表されるモデルのパラメータ数の爆発的な増加と、それに伴うトレーニングおよび推論を現実的なものにするための専用ハードウェアアクセラレータの必要性は、この需要を如実に示している 3。逐次的で複雑なタスク処理に最適化されたCPUは、ディープラーニングを定義づける、膨大かつ単純な並列計算には本質的に不向きである 2。この計算能力のギャップを埋めるために登場したのが、GPUやTPUといったAIアクセラレータである。これらのデバイスは、AIワークロードの根幹をなす大量の行列演算やテンソル演算を効率的に実行するために設計されており、現代AIの進化を支える不可欠な計算基盤となっている。

1.3 用語に関する注記

本レポートで扱う「TPU」は、Googleが開発したAIアクセラレータである「Tensor Processing Unit」を指す。同じくTPUと略される素材「Thermoplastic Polyurethane」(熱可塑性ポリウレタン)とは全く異なるものである点を明確にしておく必要がある。一部の調査資料 6 は後者の素材について言及しているが、これらは本レポートの主題であるコンピューティングハードウェアとは無関係である。したがって、本稿におけるTPUの記述は、すべてTensor Processing Unitに関するものである。

第2章 異なる起源、収斂する目標:GPUとTPUの進化的経路

2.1 GPU:偶然が生んだAIの原動力

2.1.1 ピクセルから並列処理へ

GPUの物語はAIではなく、3Dグラフィックスから始まる。その基本設計は、数百万のピクセルに対して同じ単純な計算(シェーディング、テクスチャリングなど)を同時に実行するというニーズによって駆動された。これは、大規模な並列アーキテクチャに完全に適合するタスクであった 8。その起源は1980年代のジオメトリエンジンや、現代のグラフィックスパイプラインの基礎を築いたSilicon Graphics社などの台頭にまで遡ることができる 11。その中心的な概念は、CPUが持つ少数の強力で複雑なコアとは対照的に、多数の単純なコアが協調して動作するというものであった 9。この設計思想が、後にAI分野で絶大な力を発揮することになる。

2.1.2 GPGPU革命とCUDAの夜明け

GPUの歴史における転換点は、この並列処理能力がグラフィックス以外のタスクにも応用可能であるという発見、すなわちGPGPU(General-Purpose computing on GPUs)という概念の登場であった 9。そして、その決定的な瞬間は、2007年にNVIDIA社が発表したCUDA(Compute Unified Device Architecture)プラットフォームの登場である 13。CUDAはC言語をベースとしたプログラミングモデルを提供し、開発者がGPUの並列処理能力を活用する際の障壁を劇的に引き下げた 15。これにより、GPUは一部の科学者が利用するニッチなツールから、プログラマブルな汎用並列コンピュータへと変貌を遂げた。このソフトウェアの革新こそが、GPUがハイパフォーマンスコンピューティング(HPC)、そしてその後のAI分野で支配的な地位を築くための触媒となったのである。

2.1.3 ディープラーニングとの共生的な台頭

2010年代初頭にディープラーニング研究が勢いを増すにつれて、研究者たちはニューラルネットワークの核心的な数学的演算、すなわち大規模な行列積和演算が、GPUのアーキテクチャに完全に適合することを発見した。CPUと比較してこれらの演算を桁違いに高速化するGPUの能力は、ディープラーニング革命の主要な推進力となった。従来は数週間かかっていたトレーニング時間を数時間から数日に短縮し、それまで計算上不可能とされていた複雑なモデルの構築を可能にしたのである 2

2.2 TPU:AI時代のために生まれた専用プロセッサ

2.2.1 Googleが直面した計算上のジレンマ

TPUは、Google社内で発生した特定の、そして差し迫ったビジネスニーズから生まれた。2014年頃、社内で行われたある試算が衝撃的な結果を示した。もしGoogleの全ユーザーが1日数分間だけ音声検索を利用するようになれば、同社は巨大なデータセンターの規模を2倍にする必要があるというものであった。これは経済的にも環境的にも持続不可能なシナリオであった 19。この目前に迫った「計算危機」は、CPUやGPUといった最も強力な汎用ハードウェアでさえ、グローバルスケールでのAI処理には効率が不十分であることを示していた。

2.2.2 ASICという解決策

この問題に対する解決策は、ASIC(Application-Specific Integrated Circuit:特定用途向け集積回路)を設計することであった。これは、ニューラルネットワーク計算という単一のタスクのためだけにカスタムビルドされたチップである 19。汎用プロセッサに含まれるあらゆる不要なコンポーネントを削ぎ落とし、必要とされる演算のみに特化することで、Googleは性能と電力効率の劇的な向上を達成できると考えた 19。2015年に完成し、2016年に発表された第1世代TPUは、この思想の結晶であった 19

2.2.3 世代交代による進化:推論からトレーニングへ

第1世代TPUは、特に「推論(inference)」、すなわち学習済みのモデルを使って予測を行うプロセスに特化して設計されていた 19。このチップは、囲碁棋士のイ・セドル氏に対するAlphaGoの歴史的な勝利を支えたことで有名になった 24。しかし、AI開発におけるもう一つの大きな計算ボトルネックは「学習(training)」であった。この需要に応えるため、2017年から2018年にかけて登場した第2世代TPUは、浮動小数点演算能力を導入し、学習と推論の両方に対応するようになった。これはTPUの役割を大きく拡大する重要な進化であった 19。その後の世代(v3, v4, v5, そしてTrillium)は、性能、スケーラビリティ、効率性を継続的に向上させ、TPUをGoogleの社内AIインフラの礎石として、またGoogle Cloudの主要なサービスとして確固たるものにしている 24

分析:起源が規定する特性

GPUとTPUの歴史的な発展経路は、単なる雑学ではない。それこそが、それぞれの核心的な特性を生み出した根源的な理由である。GPUの起源がグラフィックスにあることは、柔軟でプログラマブルな並列アーキテクチャという特性を授けた。このアーキテクチャは、後にAIに対しても高い適応性を示した。この「偶然の適合」がGPUの汎用性の源泉であるが、同時に純粋なAIアクセラレータと比較した場合のアーキテクチャ上のオーバーヘッドの原因ともなっている。

このプロセスを追うと、まずGPUは多様なレンダリングアルゴリズムのために設計されたことがわかる 11。これを実現するためには、プログラマビリティ(シェーダー)や、様々なデータ型と制御フローへの対応が必要であった 13。CUDAによって形式化されたこの固有のプログラマビリティが、GPUを汎用的なツールへと昇華させたのである 15

対照的に、TPUの開発は特定のAIスケーリング問題への直接的な対応であった。当初はニューラルネットワークの順伝播計算、すなわち行列積和演算が支配的なタスクに焦点を当てていた 19。この単一の目的に特化したことで、シストリックアレイのような、伝統的な意味ではプログラマブルではないハードワイヤードなデータフローアーキテクチャの採用が可能となり、その特定のタスクにおける効率を最大化することができた 22

したがって、GPUの強み(柔軟性)と弱み(行列演算における理論上のピーク効率の低さ)は、その歴史から生じた表裏一体の特性である。同様に、TPUの特化性もその起源に深く根ざしている。

分析:戦略的優位性としてのソフトウェア

GPUの台頭を語る上で、CUDAの役割を抜きにしては不完全である。NVIDIAが早期から継続的に、堅牢でアクセスしやすいソフトウェアプラットフォームに投資したことは、強力なエコシステムと深い「戦略的優位性」を生み出した 14。この歴史から学んだGoogleは、独自のAIエコシステムを構築しているが、そのアプローチはCUDAのような水平的なプラットフォームではなく、自社のクラウドサービス(JAX, TensorFlow, Vertex AI)と垂直統合された形をとっている。

CUDA以前のGPGPUプログラミングは複雑で、グラフィックスAPIに関する深い知識を必要とした 13。2007年に登場したCUDAは、馴染み深いC言語風の言語を提供し、ハードウェアの複雑さを抽象化することで、広範な開発者コミュニティにGPUを解放した 13。これは、「より多くの開発者が集まることで、より多くのツールやライブラリ(cuDNNなど)が生まれ、それがプラットフォームの魅力を高め、さらに多くの開発者を引き寄せる」という好循環、すなわち典型的なネットワーク効果を生み出した。

一方、独自のASICであるTPUは異なるアプローチを必要とした。既存の開発者基盤に頼ることはできず、代わりにTensorFlow, PyTorch, JAXといったハイレベルなフレームワークにTPUサポートを統合する戦略をとった 26。これは、GPUにおける「ロックイン」がソフトウェアライブラリ/言語レベル(CUDA)で発生するのに対し、TPUにおける「ロックイン」はクラウドプラットフォームレベル(Google Cloud)で発生することを意味する。これは、ビジネス戦略と技術戦略における根本的な違いを浮き彫りにしている。

第3章 アーキテクチャ詳説:知性を生み出すエンジン

3.1 GPUアーキテクチャ:ストリーミングマルチプロセッサの交響曲

3.1.1 中核パラダイム:SIMT (Single Instruction, Multiple Threads)

現代のGPUは、古典的なSIMD(Single Instruction, Multiple Data)パラダイムを進化させたSIMTモデルを用いてコードを実行する 30。中央のコントローラが単一の命令を数千のコアに発行し、各コアはその命令を自身のスレッドとデータに対して実行する。これにより大規模な並列処理が可能になるだけでなく、分岐(例:if/else文)を扱う柔軟性も提供される。グループ内の異なるスレッドが異なる分岐経路をたどることも可能だが、その場合は性能上のペナルティが発生する 28

3.1.2 構成要素:ストリーミングマルチプロセッサ (SM)

GPUは複数のSMで構成されている。各SMは、それ自体が自己完結したプロセッサであり、独自の命令スケジューラ、実行ユニット(コア)、レジスタファイル、そして設定変更可能な小規模なL1キャッシュ/共有メモリブロックを備えている 31。この階層的な設計により、数千もの並行スレッドを効率的に管理することが可能となる。最新のNVIDIA製GPUのSMは、これらのコンポーネントが高度に統合された洗練された構造を持つ 31

3.1.3 ゲームチェンジャー:テンサーコア

Voltaアーキテクチャ以降、NVIDIAはテンサーコアと呼ばれる専用の行列演算ユニットをSMに直接統合した 10。テンサーコアは、本質的には小規模で特殊化されたASICであり、行列の積和演算(Fused Multiply-Add, FMA)を高速に実行するよう設計されている。特に、混合精度(FP16/FP32)や低精度(INT8, FP8)のデータ型でその能力を発揮する 31。これはディープラーニングの台頭への直接的な応答であり、GPUの汎用アーキテクチャにTPUのような特化性を組み込むハイブリッド化の動きを象徴している 21。例えば、A100 GPUに搭載された第3世代テンサーコアは、TF32やBFloat16といった新しいデータ型をサポートし、コード変更を必要とせずにAIワークロードを劇的に高速化する 31

3.2 TPUアーキテクチャ:行列積和演算マシン

3.2.1 TPUの心臓部:シストリックアレイ

TPUアーキテクチャの核となるのが、シストリックアレイである。これは、単純な処理要素(Processing Element, PE)または積和演算(Multiply-Accumulate, MAC)ユニットを2次元グリッド状に配置したものである 22。その設計は、データフロー最適化の傑作と言える。データ(重みと活性化値)は、心臓が血液を送り出すように(systolicの語源)、リズミカルにアレイを通過していく。各PEは乗算と加算を行い、その結果をグリッド内の次のPEに渡す。このアーキテクチャはデータの再利用を最大化し、従来のアーキテクチャにおけるレイテンシと電力消費の主要因であるメインメモリとのデータ移動を最小限に抑える 22

3.2.2 データフローと行列積和ユニット (MXU)

シストリックアレイ上でどのように行列積和演算が実行されるかを段階的に見ていくと、その効率性が明らかになる 22。TPUのMXUは、数万個のMACユニットを含んでいる(例えば、第1世代TPUは65,536個の8ビットMACを搭載)33。この設計は「Weight Stationary」と呼ばれるデータフローの原則に従っており、モデルの重みはアレイに事前にロードされて静的に保持され、活性化データがその間を流れていく。これにより、メモリアクセスがさらに削減される 22

3.2.3 低精度演算の力

TPU設計の核心的な信条の一つは、数値精度を戦略的に低減させることである。ニューラルネットワークは低精度な計算に対しても頑健であることが示されており、32ビット浮動小数点数(FP32)の代わりに8ビット整数(INT8)を使用することには絶大な利点がある。メモリフットプリントと帯域幅要件が4分の1に削減され、乗算器のシリコン面積と消費電力も大幅に小さくなる 21。これにより、Googleは単一のチップ上に膨大な数のMACユニットを実装することができ、1秒あたりの演算回数(TOPS)という点で驚異的なピーク性能を達成している。後の世代では、FP32のダイナミックレンジとFP16のサイズを両立するBFloat16が学習用にサポートされ、さらに汎用性が高まった 24


表3.1:アーキテクチャ特性の比較

特性GPU (例: NVIDIA H100)TPU (例: Google TPU v5)
中核パラダイムSIMT (Single Instruction, Multiple Threads)行列プロセッサ (シストリックアレイ)
基本ユニットストリーミングマルチプロセッサ (SM)行列積和ユニット (MXU)
主要実行ユニット数千のプログラマブルなCUDAコア数万の特化型MACユニット
専用AIハードウェアテンサーコア (行列演算用)チップ全体が専用の行列エンジン
データフローモデルプログラマブル、明示的なメモリ管理ハードワイヤード、データフロー最適化 (例: Weight Stationary)
アーキテクチャ目標高スループット、柔軟な並列処理最大の行列スループットと電力効率
主要な強み多様なアルゴリズムへの汎用性密な行列積和演算における比類なき効率性
主要データ型FP64, FP32, TF32, BFloat16, FP16, FP8, INT8BFloat16, INT8

分析:メモリの壁とアーキテクチャのハイブリッド化

両アーキテクチャは、「メモリの壁」、すなわちプロセッサの処理速度とデータアクセス速度との間の格差拡大という根本的な問題によって形成されている。TPUのシストリックアレイは、極端なデータ再利用を通じてオフチップメモリアクセスを最小化することで、この問題に正面から取り組む抜本的な解決策である。一方、GPUのアプローチはより漸進的であり、複雑なキャッシュ階層(L1/L2キャッシュ、HBM)やコンテキストスイッチングといった技術を用いてメモリアクセスの遅延を隠蔽する 28。テンサーコアの導入は、より広範なGPUアーキテクチャ内に「データ局所的」な実行ユニットを作り出す、さらなる一歩と言える。

このプロセスを詳細に見ると、データの移動は計算そのものよりもはるかに多くのエネルギーと時間を消費するというコンピュータアーキテクチャの基本原則に行き着く。ディープラーニングは、巨大な重み行列と活性化テンソルを扱うデータ集約的なタスクである。TPUの設計 22 はこの点を明確に認識している。シストリックアレイは、一度フェッチされたデータが破棄される前に多くの処理要素で利用されることを保証する物理的なレイアウトであり、データ局所性の問題に対するハードウェア的な解決策である。汎用性を求められるGPUは、このようなデータフローをハードワイヤード化できない。代わりに、次に必要となるデータを予測しようとするキャッシュや、あるスレッドグループがメモリからのデータ待ちの間、別のグループに計算をさせる高速なコンテキストスイッチングといった、ソフトウェアとハードウェアのヒューリスティクスに依存する 28。したがって、両者の核心的なアーキテクチャの違いは、メモリの壁との戦いとして捉えることができる。すなわち、TPUの抜本的で特化されたハードウェアデータフロー対GPUの洗練された汎用的な遅延隠蔽技術の対立である。

さらに、GPUとTPUの境界線は曖昧になりつつある。NVIDIAによるテンサーコアの導入は、純粋な汎用アプローチがAIにとって最適ではないことを暗黙のうちに認めたものであり、各SMの内部にTPUのような行列エンジンを効果的に埋め込んだ。逆に、後の世代のTPUは、学習の要求に応えるためにより多くのプログラマビリティと浮動小数点フォーマットのサポートを追加し、第1世代の純粋な推論特化設計からわずかに汎用化の方向へ進んだ。

この動きは、市場からの圧力、特にディープラーニングの学習が主要なワークロードとなり、浮動小数点精度とより複雑な演算が求められるようになったことに起因する。NVIDIAは、GPU全体の柔軟性を犠牲にすることなく最も一般的な演算(行列積和)を高速化するためにテンサーコアを追加した 31。これは汎用アーキテクチャ内での特化である。一方、Googleは学習を可能にするために浮動小数点(BFloat16)サポートとプログラマビリティをTPUに追加した 19。これは特化アーキテクチャの汎用化である。結果として、両者は収斂の道を歩んでいる。AIにとって最適なアーキテクチャは、大規模で特化された行列演算能力と、他の演算(活性化関数、正規化など)のための一定のプログラマビリティを組み合わせたハイブリッドであるように見える。両ベンダーは、異なる出発点からこの「スイートスポット」にアプローチしているのである。

第4章 性能、電力、価格:定量的な比較検討

4.1 AIトレーニング性能

4.1.1 MLPerfによるベンチマーキング

業界標準のベンチマークスイートであるMLPerfは、トレーニング性能を客観的に比較するための最も信頼性の高い基盤を提供する。ここでは、近年のMLPerf Trainingラウンドの結果を分析し、大規模言語モデル(GPT-3)、自然言語処理(BERT)、画像分類(ResNet-50)といった主要なワークロードに焦点を当てる 36

4.1.2 トレーニング時間とスケーラビリティ

トレーニングにおける究極の指標は「トレーニング完了までの時間(time-to-train)」である。NVIDIA H100 GPUの大規模クラスタとGoogle TPU Pod(v5p)の結果を比較する。例えば、NVIDIAとCoreWeaveが3,584基のH100 GPUを使用してGPT-3を10.9分でトレーニングしたという記録 38 は、GoogleのTPU v5pの結果 37 と比較される。この分析では、単に最速タイムだけでなく、チップ数を増やした際に性能がどのように向上するかというスケーリング効率にも注目する。

4.1.3 大規模言語モデル(LLM)の事例

LLMのトレーニングは、現代のAIインフラを定義づけるワークロードである。ここでの性能は、純粋な計算能力、高速なインターコネクト(NVIDIAのNVLink/NVSwitch対GoogleのICI)、そしてメモリ容量の関数となる 40。数十億から数千億のパラメータを持つモデルに必要な、大規模なモデル並列およびデータ並列処理に対して、各プラットフォームのアーキテクチャがどのように適合しているかを分析する 4

4.2 AI推論性能

4.2.1 スループット対レイテンシ

推論性能には二つの重要な側面がある。バッチ処理シナリオにおけるスループット(例:1秒あたりのクエリ数)と、リアルタイムアプリケーションにおけるレイテンシ(最初のトークンが生成されるまでの時間)である。これらはしばしばトレードオフの関係にあり、一方を最適化すると他方が悪化することがある。

4.2.2 MLPerf Inferenceによる分析

MLPerf Inferenceの結果を用いて両プラットフォームを比較する。TPUは、その大規模な並列性と連続バッチ処理のような技術により、特に低コストでスループットを最大化することに優れていることが多い 41。一方、H100のようなハイエンドGPUは、高いクロックスピードと最適化されたライブラリにより、インタラクティブなサービスで重要となるシングルストリームのレイテンシを最小化する点で優位に立つことが多い 41

4.2.3 具体例:Llama2-70Bの推論

8チップ構成のTPU v5eシステムが約2,175トークン/秒を生成するのに対し、8チップ構成のH100システムは4,000〜5,000トークン/秒以上を達成可能である。しかし、TPUシステムのコストはH100システムの数分の一から十分の一程度であり、このトレードオフを明確に示している 41

4.3 最終的な評価指標:効率性

4.3.1 電力効率(ワットあたり性能)

TPUは、電力効率を最優先に設計されている。その特化された性質は、オーバーヘッドによるエネルギーの浪費が少ないことを意味し、ターゲットとするワークロードにおいてGPUよりも大幅に優れたワットあたり性能を達成することが多い 33。第1世代TPUは、同時代のCPU/GPUと比較して30〜80倍の電力性能比を実証した 34。TPU v5eはH100と比較して約5倍低い消費電力であると推定されている 41

4.3.2 コスト効率(ドルあたり性能)

これはビジネスにとって最も重要な指標と言えるだろう。GPUとTPUインスタンスのクラウド価格を分析する。大規模なトレーニングや高スループットの推論において、TPUは一貫して優れたドルあたり性能を示し、時には2倍以上の差がつくこともある 33。例えば、MLPerfの結果は、TPU v5eがTPU v4と比較して2.7倍高いドルあたり性能を提供することを示している 42。大規模モデルのトレーニングは、TPUを使用することでH100クラスタよりも50〜70%安価になる可能性がある 41


表4.1:多軸での性能・効率比較

指標NVIDIA H100 (Azure ND H100 v5)Google Cloud TPU v5e分析と要点
LLMトレーニング (Time-to-Train)リーダー。 絶対的な速度で記録を保持 (例: GPT-3を4分未満で学習) 39チャレンジャー。 絶対時間では劣るが、高いスケーラビリティを持つ。予算を度外視して速度を求めるならH100が選択肢となる。
LLM推論 (低レイテンシ)リーダー。 高いクロックスピードと最適化されたシングルストリーム性能 41良好。 バッチ処理を好むため、レイテンシのオーバーヘッドが大きくなる可能性がある。リアルタイム・インタラクティブなアプリケーションではH100が優位。
LLM推論 (高スループット)優秀。 高いシングルチップ性能が高スループットにつながる。優秀。 より多くのチップを用いた大規模並列処理で高スループットを達成 41どちらも強力だが、TPUはしばしば低コストでそれを実現する。
ドルあたり性能 (推論)良好。 高性能だが価格もプレミアム (約$12.84/時/チップ) 41リーダー。 劇的にコスト効率が高い (約$1.20/時/チップ) 41コストを最適化した大規模推論ではTPU v5eが明確な勝者。
ワットあたり性能良好。 高性能だがTDPも高い (350-700W) 41リーダー。 効率性を目的に設計 (H100より約5倍低消費電力) 34エネルギー制約のある環境ではTPUが優れた選択肢。

分析:速度と経済性の間の断絶

性能データは、明確な戦略的な分岐を示している。NVIDIAの最上位GPUは、絶対的な性能記録を更新するように設計されており、ソリューション完成までの時間が最優先される市場セグメント(ハイパースケーラー、国立研究所、資金豊富なAIスタートアップなど)に応えている。一方、GoogleのTPU、特に「e」(efficiency)モデルであるv5eは、ドルあたり性能とワットあたり性能を最適化するように設計されている。これは偶然ではなく、Google自身が巨大なAIサービスを経済的に運営するという社内ニーズを反映したものである。

この違いは、両社のビジネスモデルに起因する。NVIDIAはチップを販売する企業であり、そのビジネスモデルは可能な限り高性能(かつ高マージン)なハードウェアを販売することによって利益を得る。MLPerfでの記録更新は、このための強力なマーケティングツールとなる 38。対照的に、Googleの主要ビジネスはチップ販売ではなく、クラウドサービスの提供と自社の巨大なAIワークロード(検索、フォトなど)の運営である 26。彼らのインセンティブは、計算の内部コスト(TCO)を削減することにある。このビジネスモデルの違いが、製品最適化の方向性の違いに直接つながっている。H100はピーク性能に、TPU v5eは大規模運用のコスト効率に最適化されているのである 41。したがって、ユーザーの選択は単なるハードウェアの選択ではなく、AIコンピューティングに対する二つの異なる経済哲学のどちらに与するかという選択でもある。

分析:ソフトウェア最適化という継続的な性能向上要因

MLPerfの結果から得られる驚くべき観察の一つは、NVIDIAがソフトウェアの更新のみによって、全く同じハードウェアから大幅な性能向上(6ヶ月で最大17%)を引き出す能力である 38。これは、現代のAIハードウェアの性能が、単にシリコンの性能だけでなく、ハードウェアと高度に最適化されたソフトウェアスタック(CUDA, cuDNN, コンパイラ)との協調設計の産物であることを示している。これは競合他社にとって常に動く目標となり、最高レベルで競争するためには深く長期的な投資が必要であることを浮き彫りにしている。

MLPerf v3.0の結果は、H100の性能がv2.1でのデビュー時と比較して同じハードウェア上で大幅に向上したことを示している 38。この性能向上の源泉は、cuDNNの最適化されたカーネル、cuBLASの改良されたアルゴリズム、そしてFP8のより効率的な利用といったソフトウェアの改善であると明記されている 38。これは、チップの「箱出し」性能はその潜在能力の一部に過ぎないことを意味する。そのポテンシャルを最大限に引き出すには、その特定のアーキテクチャのために継続的に最適化を行う、世界クラスの専門ソフトウェアチームが必要となる。これは、15年以上にわたってこのプロセスを続けてきたCUDAエコシステムを持つNVIDIAにとって、巨大な競争上の優位性である。Googleにとっても、そのソフトウェアスタック(XLAなど)が同様の協調設計を行う必要があるが、その努力は自社のクラウド内のTPUハードウェアにのみ集中している。これは、競争がエコシステムレベルで行われていることを改めて示している。

第5章 開発者を巡る戦い:エコシステムとソフトウェア

5.1 NVIDIA CUDA帝国:自己強化するエコシステム

5.1.1 CUDAプラットフォーム

CUDAは単なるプログラミング言語ではなく、NVIDIA GPU上での並列コンピューティングのための完全なプラットフォームである 14。開発者にハードウェアに対する低レベルの制御を提供し、きめ細かな性能最適化を可能にする 15。C++をベースとしているため、科学技術分野の幅広い開発者にとってアクセスしやすいものとなっている 17

5.1.2 ライブラリという武器庫

エコシステムの真の力は、一般的なタスクを抽象化する豊富なライブラリ群にある。ディープラーニングの基本演算のためのcuDNN、線形代数のためのcuBLAS、推論最適化のためのTensorRT、そしてデータサイエンスのためのRAPIDSスイート(cuMLを含む)は、開発を加速し、高性能を保証する不可欠なツールである 15。PyTorchやTensorFlowといった主要なディープラーニングフレームワークはこれらのライブラリと深く統合されており、NVIDIA GPUをデフォルトで最もよくサポートされたハードウェアターゲットにしている 44

5.1.3 デファクトスタンダードの戦略的意味

CUDAの広範な採用は、それをAI開発における事実上の業界標準(デファクトスタンダード)にした 15。これは強力なネットワーク効果を生み出す。開発者はCUDAを学び、大学はそれを教え、企業はそれを基盤に製品を構築する。このコードと専門知識の広大な既存基盤が、競合プラットフォームへの乗り換えを困難にし、顕著なベンダーロックインを生み出している。

5.2 Google TPUエコシステム:垂直統合されたクラウドネイティブ

5.2.1 フレームワークによる抽象化

CUDAとは異なり、開発者がTPUを直接プログラミングすることは稀である。その代わりに、ハイレベルな機械学習フレームワークを通じてTPUと対話する。その鍵となるのが**XLA(Accelerated Linear Algebra)**コンパイラである。XLAは、TensorFlowPyTorch(PyTorch/XLA経由)JAXといったフレームワークからの計算グラフを受け取り、TPUハードウェア向けに最適化されたマシンコードにコンパイルする 26。特にJAXは、そのクリーンな設計と強力なTPUサポートにより、研究コミュニティで人気を博している。

5.2.2 クラウドでのオーケストレーション

TPUエコシステムは、Google Cloud Platform(GCP)と不可分に結びついている。TPUノードプールを管理するためのGoogle Kubernetes Engine (GKE)、マネージドMLOpsプラットフォームであるVertex AI、そしてDynamic Workload Schedulerといったツールは、TPU Pod上での大規模AIワークロードのデプロイとスケーリングを簡素化するために設計されている 26

5.2.3 オープンソースとアクセシビリティ

Googleは、最先端モデルのオープンソース参照実装(例:LLM用のMaxText、拡散モデル用のMaxDiffusion)を提供したり、Google ColabやKaggleといったサービスを通じてTPUへの無料または低コストのアクセスを提供したりすることで、TPUの採用を促進している 21。この戦略は、コミュニティを構築し、クラウド中心のエコシステムへの参入障壁を下げることを目的としている。

分析:水平戦略 対 垂直戦略

二つのエコシステムは、根本的に異なる戦略的姿勢を代表している。NVIDIAのCUDAは水平的プラットフォームである。オンプレミス、全ての主要なクラウドプロバイダー、ワークステーション、そしてスーパーコンピュータ上で動作する。この普遍性が最大の強みである。一方、GoogleのTPUエコシステムは垂直的スタックである。ハードウェア、コンパイラ、クラウドサービスが緊密に統合され、協調設計されたシステムであり、GCP上でのみ利用可能である。この統合が強みであり、よりスムーズで最適化された「ただ動く」体験を提供する可能性があるが、それは移植性や選択の自由を犠牲にすることで成り立っている。

企業はNVIDIA GPUを購入して自社のデータセンターで稼働させることも、AWS, Azure, GCPからレンタルすることもできる 18。CUDAコードはこれらの環境間で移植可能であり、これが水平的戦略である。対照的に、企業はTPU Podを購入して自社のデータセンターに設置することはできず、Google Cloudを利用する必要がある 21。これが垂直的戦略である。水平戦略は広範で多様な市場を創出するが、NVIDIAは多くの異なるデプロイシナリオをサポートする必要がある。垂直戦略は、Googleが物理的なネットワークから高レベルのスケジューリングソフトウェアまで、スタック全体を自社の管理環境内で最大の性能と効率を発揮するように最適化することを可能にする。これは、顧客の選択が単なるハードウェアのスペックだけでなく、クラウドとインフラ全体の戦略に関わることを意味する。TPUへのコミットは、Google Cloudエコシステムへのコミットを意味するのである。

分析:コンパイラという重要な戦場

GoogleのTPU戦略がCUDAの牙城に対して成功を収めるためには、XLAコンパイラが最も重要な技術要素となる。XLAは、標準的なフレームワークのコードを効率的なTPUコードに変換する能力において非常に優れていなければならず、開発者がCUDAが提供するような低レベルの制御を必要としないレベルに達する必要がある。PyTorch/XLAとJAXの成功は、支配的なPyTorch/CUDAの世界から開発者を引きつけるために不可欠である。XLAの性能ギャップやコンパイルの問題は、TPU採用の大きな障壁となる。

NVIDIAの強みは、膨大な既存のCUDAコードと開発者の専門知識にある 15。Googleが世界のAIコードをTPU専用の新しい言語で書き直すよう求めることは現実的ではない。唯一の実行可能な戦略は、開発者がいる場所、すなわちPyTorchやTensorFlowで彼らに会うことである 26。したがって、XLAコンパイラは完璧で目に見えない翻訳者として機能しなければならない。PyTorchの汎用APIで書かれたコードを受け取り、専門家がNVIDIA GPUのためにCUDAとcuDNNを使って書くことができるコードと同等かそれ以上の性能を持つTPUマシンコードを生成する必要がある。これにより、コンパイラの品質、機能の完全性、そして性能が、TPUソフトウェア戦略全体の中心的な柱となる。ここでのいかなる弱点も、ハードウェアのポテンシャルを直接的に損なうことになる。

第6章 戦略的決定フレームワーク:適切なアクセラレータの選択

6.1 GPUを選択すべき場合

  • 最大限の柔軟性と汎用性: コンピュータビジョンから自然言語処理、科学技術計算まで、多様で進化し続けるAIワークロードを持つ組織にとって、GPUの汎用的な性質は大きな利点となる 18。単一の計算タイプに縛られることがない。
  • 最先端の研究開発: シストリックアレイに完全には適合しない可能性のある、新しいモデルアーキテクチャやアルゴリズムを探求する場合、CUDAのプログラマビリティは、研究者がカスタムカーネルや演算を実装するために必要な柔軟性を提供する。
  • オンプレミスおよびハイブリッドクラウド展開: セキュリティ、データグラビティ、またはコスト管理の理由からオンプレミスのハードウェアを必要とする組織にとって、GPUは唯一の実行可能な選択肢である。TPUはクラウド専用のサービスであるためだ 33
  • 広範な人材プールの活用: CUDAエコシステムに精通した開発者、データサイエンティスト、研究者の数が膨大であるため、人材の採用やコミュニティからのサポートを見つけやすい。

6.2 TPUを選択すべき場合

  • 巨大モデルのハイパースケールトレーニング: 最先端のLLMやその他の大規模で、行列積和演算が中心となるモデルのトレーニングにおいて、TPU Podは極端なスケーラビリティとコスト効率を実現するために設計されている 3。確立されたアーキテクチャを可能な限り大規模かつ低コストでトレーニングすることが目標である場合、TPUは卓越した性能を発揮する。
  • 高スループットでコスト重視の推論: 広告配信、推薦エンジン、言語翻訳など、数百万のユーザーに高スループットでサービスを提供する必要があるアプリケーションでは、TPUの優れたドルあたり性能とワットあたり性能が、大幅な運用コストの削減につながる可能性がある 33
  • Google Cloudエコシステムへのコミットメント: すでにGoogle CloudとそのAI/MLサービス(Vertex AI, BigQuery ML)に大きく投資している組織にとって、TPUの使用はシームレスな統合と、統一されたインフラおよび請求体験を提供する 26
  • JAXネイティブなワークロード: JAXフレームワークに大きく依存する研究開発では、TPUが最良かつ最も直接的な性能を提供することが多い。JAXはTPUを念頭に置いて共同開発されたためである。

表6.1:ユースケースに基づくアクセラレータ選択マトリクス

シナリオ / 要因主な推奨:GPU主な推奨:TPU正当化
探索的研究開発 (新規アーキテクチャ)CUDAの柔軟性は非標準的な演算に不可欠。
大規模・確立済みLLMのトレーニング (速度) (コスト)最速のTime-to-SolutionならGPU、最高のTCOならTPU。
各種モデルのファインチューニングGPUの汎用性は多様なモデルサイズとタイプを効率的に処理。
リアルタイム・低レイテンシ推論GPUアーキテクチャはシングルストリーム、低バッチ要求に適していることが多い。
高スループットのバッチ推論TPUアーキテクチャはクエリ数/秒/ドルを最大化するように最適化されている。
オンプレミス / ハイブリッドクラウド戦略TPUはクラウド専用のサービス。
主要フレームワークがJAXJAXとTPUは最適な性能のために協調設計されている。
最も広範なソフトウェア/ライブラリサポートの必要性CUDAエコシステムの広さと成熟度は他に類を見ない。
大規模運用における運用コスト最小化が主目的優れたワットあたり性能とドルあたり性能。

第7章 今後の展望:未来のアーキテクチャと結論

7.1 次世代:Blackwell, Trillium, そしてその先へ

次に登場するアクセラレータ世代の発表済み機能と期待される性能に目を向ける。これには、NVIDIAのBlackwellアーキテクチャやGoogleのTrillium TPUが含まれる 24。分析の焦点は、これらの新世代がアーキテクチャの収斂傾向を継続するのか、あるいは設計思想における新たな分岐を示すのかという点にある。例えば、GoogleはTrilliumがTPU v5eに対して4.7倍の性能向上を提供すると主張しており、これは特定のAIタスクに対する大規模な性能飛躍への継続的な注力を示唆している 24

7.2 AIハードウェアの未来:特化 対 汎用

特化されたTPUと、ますます特化しつつも依然として汎用性を保つGPUとの間の中心的な緊張関係は、今後も市場を定義し続けるだろう。未来のAIワークロードは、さらにエキゾチックで特化されたハードウェア(例:スパースモデル用、グラフネットワーク用)を要求するようになるのか、それともハイブリッドなGPUモデルが市場を支配するのに十分な柔軟性を証明するのか。チップレットや先進的なパッケージング技術といった、よりカスタマイズ可能な「両方の長所を兼ね備えた」ソリューションを可能にするかもしれない新たなトレンドについても考察する。

7.3 最終結論:共生的な二元性

本レポートの結論として、GPUとTPUは覇権を争うゼロサムゲームに従事しているのではない。むしろ、これらはAIという広大なランドスケープの中で、それぞれが異なる生態学的ニッチに最適化された、成功した二つの異なるコンピューティングの進化的分岐点を代表している。CUDAという強力な堀を持つGPUは、研究、開発、そして多様なデプロイメントにおけるデフォルトのプラットフォームであり続ける可能性が高い。一方、TPUは、特にGoogle Cloudエコシステム内において、大規模でコスト重視のAIオペレーションのための強力な存在であり続けるだろう。

真に戦略的な組織は、「どちらが優れているか?」と問うのではなく、「我々の広範な技術的・ビジネス的戦略の中で、この特定の仕事に適したツールはどちらか?」と問うべきである。強力な選択肢が二つ存在することは、競争を促進し、イノベーションを駆動し、最終的にはAIコミュニティ全体に利益をもたらす。この共生的な二元性こそが、AIコンピューティングの未来を形作っていくのである。

引用文献

  1. CPU, GPU, TPU の違い – Zenn https://zenn.dev/nekoallergy/articles/ml-basic-cpu-gpu-tpu
  2. 機械学習に最適なGPUとは?選び方・重要性・おすすめメーカーを徹底解説 – さくマガ https://sakumaga.sakura.ad.jp/entry/what-is-gpu/
  3. TPU:機械学習を加速する革新 – AI用語解説 AIコンパス https://ai-compass.weeybrid.co.jp/cloud/tpu-revolutionizing-machine-learning-acceleration-2/
  4. ディープラーニングにGPUが求められる理由・ビジネスにおける活用方法 https://www.nttpc.co.jp/gpu/article/knowledge09_gpu-deeplearning.html
  5. 機械学習のためのCPUとGPUの比較 – IBM https://www.ibm.com/jp-ja/think/topics/cpu-vs-gpu-machine-learning
  6. TPUとは – 製品情報 – 日本ミラクトラン株式会社 https://www.miractran.co.jp/products/tpu/
  7. TPUとは何ですか? | KRAIBURG TPE https://www.kraiburg-tpe.com/ja/TPU%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B-%E7%86%B1%E5%8F%AF%E5%A1%91%E6%80%A7%E3%83%9D%E3%83%AA%E3%82%A6%E3%83%AC%E3%82%BF%E3%83%B3-thermoplastic-polyurethane
  8. 基礎からわかるGPU 性能・特徴や選び方のポイント – NTTドコモビジネス https://www.ntt.com/business/services/rink/knowledge/archive_13.html
  9. [5分で理解]GPUとは?CPUとの違いや性能と活用 – カゴヤのサーバー研究室 https://www.kagoya.jp/howto/engineer/hpc/gpu1/
  10. GPUとは?CPUとの違いや種類、AI処理における重要性を解説 | レノボ・ ジャパン – Lenovo https://www.lenovo.com/jp/ja/articletop/pc/gpu/
  11. GPUの起源と進化 | GDEP Solutions – GDEPソリューションズ https://gdep-sol.co.jp/gpu-technology/no6/
  12. 現代のGPU:グラフィックの歴史 https://www.hpcwire.jp/archives/920
  13. これからの並列計算のためのGPGPU連載講座(I) GPUとGPGPUの … https://www.cc.u-tokyo.ac.jp/public/VOL12/No1/201001gpgpu.pdf
  14. CUDAとは?NVIDIA開発のGPU活用技術の仕組み・アーキテクチャ・応用分野・最新動向を徹底解説! – AI Market https://ai-market.jp/technology/cuda/
  15. 【NVIDIA】CUDAとは?主要機能やインストール方法、使い方を解説! https://www.ai-souken.com/article/what-is-nvidia-cuda
  16. GPUとCUDAを一瞬で理解する! #AI – Qiita https://qiita.com/microstone/items/34380357908784d1e183
  17. CUDA – 【採用担当向け】わかりやすいIT用語集「TECH LAB」 https://techlab.lein.co.jp/learning/article/834
  18. 機械学習に最適なGPUはどれ?徹底比較と選び方 – GPUSOROBAN https://soroban.highreso.jp/article/techblog-machine-learning
  19. GoogleのTPUがOpenAIとAppleを虜にした驚きの性能とは?|Zenk https://note.com/honest_murre2984/n/n3e3d1f4f85d5
  20. cloud.google.com https://cloud.google.com/tpu/docs/system-architecture-tpu-vm?hl=ja#:~:text=Tensor%20Processing%20Unit%EF%BC%88TPU%EF%BC%89%E3%81%AF,%E3%81%99%E3%82%8B%20Google%20Cloud%20%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%81%A7%E3%81%99%E3%80%82
  21. Tensor Processing Unit – Wikipedia https://en.wikipedia.org/wiki/Tensor_Processing_Unit
  22. Google TPUを作ってみる~アーキテクチャ考察編 … – Qiita https://qiita.com/arutema47/items/b7be3aacd3c0d467a469
  23. TPUとは?意味を分かりやすく解説 – IT用語辞典 e-Words https://e-words.jp/w/TPU.html
  24. AI技術基盤層のプロセッシングアーキテクチャ進化史:TPUとGPUの競争と未来 – note https://note.com/lopopo/n/n41addccc1184
  25. 【AIメモ】GoogleのTPUがすごい – Zenn https://zenn.dev/nekoallergy/articles/ml-memo01-tpu01
  26. Tensor Processing Units (TPUs) | Google Cloud https://cloud.google.com/tpu
  27. ためになる3Dグラフィックスの歴史(2)。緑のたぬきと赤いきつねのバトルで育まれたGPU技術たち – PC Watch https://pc.watch.impress.co.jp/docs/column/zenji/1481030.html
  28. GPUアーキテクチャとGPUプログラミングの話が面白かった #Shader – Qiita https://qiita.com/Koya_/items/28446be12252edc06137
  29. GPUとTPUの比較 | インディ・パ | 生成AI教育・研修・コンサルティング https://indepa.net/archives/3172
  30. 数理工学PBL https://koikezlemma.github.io/gpu/GPU01.pdf
  31. NVIDIA A100 Tensor コア GPU アーキテクチャ https://www.nvidia.com/content/dam/en-zz/ja/Solutions/Data-Center/documents/nvidia-ampere-architecture-whitepaper-jp.pdf
  32. Tensor コア: HPC & AI の多様性 – NVIDIA https://www.nvidia.com/ja-jp/data-center/tensor-cores/
  33. GPU vs TPU: AI と機械学習で最高峰に君臨するのはどちらでしょうか? https://blogs.novita.ai/ja/gpu-vs-tpu-which-one-reigns-supreme-for-ai-and-machine-learning/
  34. Google の Tensor Processing Unit (TPU) で機械学習が 30 倍速く … https://cloud.google.com/blog/ja/products/gcp/an-in-depth-look-at-googles-first-tensor-processing-unit-tpu
  35. TPU (Tensor Processing Unit) の論文を読んでみた ~何故 TPU は 8 ビットなのか~:Mostly Harmless – オルタナティブ・ブログ https://blogs.itmedia.co.jp/appliedmarketing/2017/04/tpu_tensor_processing_unit_tpu_8.html
  36. AMD Emerges to Challenge Nvidia on MLPerf Training – XPU.pub https://xpu.pub/2025/06/04/mlperf-5-0-training/
  37. Nvidia and Google Train to Win – XPU.pub https://xpu.pub/2024/11/14/mlperf-training-4-1/
  38. Breaking MLPerf Training Records with NVIDIA H100 GPUs … https://developer.nvidia.com/blog/breaking-mlperf-training-records-with-nvidia-h100-gpus/
  39. NVIDIA Sets New Generative AI Performance and Scale Records in MLPerf Training v4.0 https://developer.nvidia.com/blog/nvidia-sets-new-generative-ai-performance-and-scale-records-in-mlperf-training-v4-0/
  40. NVIDIA H100 Tensor コア GPU https://www.nvidia.com/ja-jp/data-center/h100/
  41. Cloud AI Platforms Comparison: AWS Trainium vs … – CloudExpat https://www.cloudexpat.com/blog/comparison-aws-trainium-google-tpu-v5e-azure-nd-h100-nvidia/
  42. Performance per dollar of GPUs and TPUs for AI inference | Google Cloud Blog https://cloud.google.com/blog/products/compute/performance-per-dollar-of-gpus-and-tpus-for-ai-inference
  43. 機械学習用チップの性能評価 : TPU の研究論文を公開 | Google Cloud 公式ブログ https://cloud.google.com/blog/ja/products/gcp/quantifying-the-performance-of-the-tpu-our-first-machine-learning-chip/
  44. CUDAとそのライブラリが切り拓く機械学習の高速化 | Kaggleで実践 … https://masalib.com/362/
  45. About TPUs in GKE | GKE AI/ML – Google Cloud https://cloud.google.com/kubernetes-engine/docs/concepts/tpus
  46. Cloud TPU を活用した深層学習の高速化 – GC-MIND https://gc-mind.com/blog/cloud-tpu-deep-learning
  47. CUDAとは? – Supermicro https://www.supermicro.com/ja/glossary/cuda