Google、MetaのTorchTitan(トーチタイタン)をCloud TPU向けに公開Llama 3 405Bは1,024チップまで約57% MFU、Qwen3 235Bは32.42%と発表
日刊AIニュース10月20日(火)号:前日のAIのニュース12本を短くまとめました(約8分)›
Googleは2026年10月20日、Metaと共同でPyTorchの学習基盤TorchTitanのTPU版をGitHubで公開したと発表した。TorchTPU(トーチティーピーユー)上でLlama 3 405Bは128〜1,024チップで約57% MFU、Qwen3 235Bは1,024チップで32.42% MFUと同社は説明している。

目次
Googleは2026年10月20日(現地)、Developers Blogで、Metaが開発するPyTorchの大規模学習基盤TorchTitan(トーチタイタン)をCloud TPUで動かす「TorchTitan on TPU」を紹介しました。ブログによると、GoogleとMetaが共同でTPU向けの実行パスを開発し、フォークを GitHub の google-pytorch/torchtitan で公開しています。TPUでPyTorchを直接動かすTorchTPU(トーチティーピーユー)を土台に、TPU v7x(Ironwood/アイアンウッド)上でLlama 3 405Bは128〜1,024チップで約57% MFU、Qwen3 235Bは1,024チップの単一スライスで32.42% MFUだったと、Googleは説明しています。
3行まとめ
- Googleは10月20日、MetaのTorchTitanのTPU版を公開。コードは google-pytorch/torchtitan で、ライセンスはBSD 3-Clause。
- Googleの測定では、TPU v7xでLlama 3 405Bは128〜1,024チップで約57% MFU、Qwen3 235Bは1,024チップで32.42% MFU、FLUX.1はJAX版MaxDiffusionの約99%の処理量。
- 最適化は「フラグを順に切り替える手順」として整理され、レシピ未提供のモデル向けにHugging Face Transformers用バックエンドも用意。料金・日本での提供の記載は今回の取得ページになし。
本記事の内容は、日本時間10月21日0時台に公式ページで確認したものです。
何が公開されたのか
ブログによると、TorchTitanは、Llama 3、Qwen 3、FLUXなどのDense(密)モデルやMoE(Mixture-of-Experts)モデルを、PyTorch標準の部品だけで事前学習するための参照基盤です。ブログは、これまでPyTorchモデルをCloud TPUで学習するにはJAXへの全面書き換えか従来のtorch_xlaが必要だったと書き、TorchTPUの登場で torch.device("tpu") というネイティブのバックエンドが使えるようになったと説明しています。
今回の「TorchTitan on TPU」は、そのTorchTPU上で性能の出る分散学習のレシピまで含めて提供するものです。GitHubのREADMEは、Googleによる配布版で、TPU対応は torchtitan/experiments/tpu にあり、TPU用のレシピ、Pallasカーネル、TPU向けのトレーナーと並列化の経路を追加していると説明しています。上流のTorchTitanのドキュメントはそのまま使え、共有コードの変更は上流の pytorch/torchtitan に送る方針です。
ブログが挙げる対象は次のとおりです。
| 種類 | 公式レシピがあるモデル(ブログの記載) |
|---|---|
| 大規模Dense | Llama 3 70B/405B、Qwen 3 8B/32B |
| MoE | Qwen 3 235B |
| 拡散モデル | FLUX.1 12B |
事後学習では、VeRLによるGRPOなどの強化学習の中で、パラメータ更新を担うトレーナーとして使う構成が紹介されています。重みの同期先として挙がっているのは、同じ日に発表されたvLLM-TorchTPUです。推論側の発表はGoogle、TPUでPyTorchが直接動くTorchTPU上にvLLM-TorchTPUとSGLang-TorchTPUを公開で整理しています。
速度はどう出したのか──ブログが挙げる仕組み
ブログが性能の理由として挙げているのは、主に次の4点です。
- SimpleFSDP: 標準のFSDP2はGPUの実行モデル(専用CUDAストリームとフック)を前提にしており、TPUではtorch.compileの領域がフックごとに途切れると説明されています。SimpleFSDPは、シャーディングをDTensorの再配置としてグラフの中に入れるため、XLAコンパイラが通信と計算の重なりを調整できます。
- Graph Trainer: 順伝播・損失・逆伝播を1つのFXグラフとして取り込み、1ステップを1つのXLAプログラムとして実行します。ブログは、JAXで学習ステップ全体を1つのjit関数にするのと概念的に同じだと書いています。
- Pallasカーネル: Splash Attention、ロジット全体をHBMに書かない融合クロスエントロピー、MoE用のグループ化行列積などを、設定フラグで差し替えられます。
- 大規模モデル向けの scan とグラフ分割: 100B級以上では、デコーダ層を1つのループ本体として扱う scan、または順伝播・逆伝播を別プログラムに分けるグラフ分割を使い、活性化をホストメモリに退避します。Llama 3 405BとQwen3 235Bはこの経路を使うと説明されています。
最適化の手順は「TPUモデル最適化プレイブック」として番号付きで整理されています。ベースラインの選択(eager、compile、Graph Trainer)、SimpleFSDPとbf16パラメータ+fp32勾配の組み合わせ、Pallasカーネルの有効化とタイルサイズ調整、バッチサイズの引き上げ、XLA・libtpuフラグの調整とプロファイル、の順です。ブログは、多くのモデルでは新しいコードではなく既存レシピへの設定変更の積み重ねで済むと述べています。順番が大事なのは、各手順が次の手順の測定結果を変えるためだと書かれています。
数字は何を測ったものか
ブログのケーススタディの数字を、ブログの記載どおりに表にしました。いずれもGoogleが自社環境で測ったもので、第三者による再現は今回の取得ページにはありません。
| モデル | 構成 | MFU(ブログの記載) |
|---|---|---|
| Llama 3 405B(大規模Dense) | 128〜1,024チップ | 約57% |
| Qwen3 235B(大規模MoE) | 1,024チップの単一スライス | 32.42% |
| Qwen3 235B | 8,192チップ(8スライス) | 30.51% |
| Muse Glimmer 30B(Dense) | 128チップ(4x4x8) | 43.4% |
| FLUX.1(拡散モデル) | 1,024チップ(8x8x16) | 19.4% |
MFUはモデルFLOPs利用率で、チップの理論性能に対して実際のモデル計算にどれだけ使えたかを示します。最適化ガイドは、MoEではtotal parameterではなくactive parameterで計算するよう注意しています。
FLUX.1(120億パラメータ)の個別事例では、TPU v6e-8、1024×1024、バッチ3で、初期状態の1ステップ11.49秒が、deferred-and-fused eager、SimpleFSDP、Splash Attention、ブロックごとのtorch.compile、モデルコードの小さな書き換えを重ねて2.78秒になりました。ブログは、開始時より4.1倍速く、同じハードウェア上のJAX製MaxDiffusionのスループットの約99%と書いています。途中の段階では、FSDP2をSimpleFSDPに置き換えた時点で9.95秒から6.52秒(52.6%の改善と記載)まで下がったとも説明されています。
Qwen3 235Bについては、64チップから8,192チップまでのチップあたりのバッチを固定するweak-scalingの実験で、チップあたりのスループットが4,568から4,208トークン/秒に下がった(8%減)とあります。ブログは、約1,000チップを超えるデータ並列は「学習の推奨設定ではなくスケーリング実験」だと明記しています。この実験が示すのはフレームワーク、コンパイラ、集団通信がその規模でも保つことで、その構成で学習することを勧めるものではない、という位置づけです。
手元のモデルをどう動かすか
レシピのないモデル向けに、ブログは2つの道具を挙げています。
- Hugging Face Transformers用のモデリングバックエンド: Hubのidでモデルを組み立て、TorchTitanのトレーナーと並列化で動かします。TPU向けの設定1つで、SimpleFSDP、ブロックごとのtorch.compile、Splash Attention、融合クロスエントロピーなどが適用されます。ブログの要約部分は、500以上のHugging Faceモデルを動かせると書いています。ただしMoEのチェックポイントは、エキスパート並列がまだ無い状態で動く、とあります。ブログは、手作業で調整した数字には届かないが、レシピのないモデルの最初の実行には使える、という位置づけです。
- モデル移植用のスキル: コーディングエージェント向けの「model-onboarding skill」がリポジトリに入っています。ブログによると、ケーススタディの進め方を、テストと合格基準つきの手順として人間またはエージェントがたどれます。
リポジトリの入口は、READMEによると torchtitan/experiments/tpu/README.md(環境構築、TorchTPUのwheelのビルド、単一ホストのTPU VMでの実行、GKEでのマルチホスト学習)、recipes(モデルとトポロジごとの設定と起動コマンド)、TorchTPU最適化ガイドの3つです。
今後の予定として書かれていること
ブログのロードマップは5本立てです。
- 本番運用: ML Goodput Measurementライブラリとの連携、GKEのMulti-Tier Checkpointingとの連携
- 精度: 現在Llama 3 70B向けに出ているfloat8レシピを、ほかのモデルへ拡大
- ハードウェア: Googleが発表済みの第8世代TPU(学習向けTPU 8t、推論・強化学習向けTPU 8i)を、Google Cloudで使えるようになり次第サポート
- 並列化: MoEカーネル向けのエキスパート並列、その次に長文脈学習
- モデル: Qwen3.8-Max(2.4兆パラメータのMoE)とKimi K3(2.8兆パラメータ、大半の層でKimi Delta Attention)
いずれも計画であり、時期はブログに書かれていません。
公式ページを見て気づいたこと
日本時間0時14分ごろに公式ページを取得して確認しました。GitHubのリポジトリは、コミット数が783、スター4、フォーク1の状態でした。recipes フォルダの中身は ironwood と trillium の2つで、ブログの「Trilliumで調整した値はIronwoodに引き継がれない」という注意書きと合っています。数字の再現も含め、実際に動かしての検証は筆者は行っていません。
確認できなかったこと
- 料金と日本での提供: 今回取得したブログと3つのGitHubページを検索した範囲では、料金や日本での提供状況の記載は見当たりませんでした。ソフトウェアはBSD 3-Clauseで公開されていますが、TPUの利用料はGoogle Cloud側の別の話で、本記事では確認していません。
- 数字の読み方: 数字は同じブログ内でも、設定によって表記が分かれます。たとえばQwen3 235Bには、Graph Trainer経路で「29%+」、256 v7xチップのレシピで「約32%」、1,024チップで32.42%という記載が並びます。Muse Glimmer 30Bも、レシピの説明では64チップで約44%、ケーススタディの一覧では128チップで43.4%です。チップ数が違うため矛盾とは言えませんが、見出し用の1つの数字に丸められない点は注意が必要です。
- GPUとの比較: ブログはTPU上のMFUとJAX版との比較は書いていますが、同じモデルをGPUで学習した場合との比較は、取得したページにはありません。
- ブログの体裁: 本文の一部に重複した文字列やタイプミス(「Kernals」など)があります。数字の引用は、上記の表とも原文と照らして確認しています。
出典と確認時刻
- Integrating TorchTPU into TorchTitan and Optimizing Models for TPU — Google Developers Blog(2026年10月20日付、日本時間10月21日0時14分に取得)
- google-pytorch/torchtitan — GitHub(同0時14分)
- torch-tpu-optimization-guide.md(同0時14分)
- recipes フォルダ(同0時14分)
本記事は続報があり次第更新します。
この記事でよく聞かれること
- TorchTitan on TPUとは何ですか?
- Google Developers Blogによると、Metaの学習基盤TorchTitanを、Googleが Cloud TPU で動くよう調整したフォークです。GoogleとMetaが共同でTPU向けの実行パスを開発したと同ブログは説明しています。コードは GitHub の google-pytorch/torchtitan で公開されています。
- TorchTitanのTPU版でどのモデルを学習できますか?
- 同ブログによると、公式レシピがあるのはLlama 3 70B/405B、Qwen 3 8B/32B、MoEのQwen 3 235B、拡散モデルのFLUX.1 12Bです。ブログのケーススタディにはMuse Glimmer 30Bも載っています。レシピのないモデルはHugging Face Transformers用のバックエンド経由で動かせると説明されています。
- MFUはどのくらい出ていますか?
- ブログによると、TPU v7x(Ironwood)でLlama 3 405Bは128〜1,024チップで約57%、Qwen3 235Bは1,024チップの単一スライスで32.42%、8,192チップ(8スライス)で30.51%、Muse Glimmer 30Bは128チップで43.4%、FLUX.1は1,024チップで19.4%です。いずれもGoogleが自社環境で測った数字です。
- 料金や日本での提供について書かれていますか?
- 今回取得したブログとGitHubの各ページには、料金や日本での提供についての記載は見当たりませんでした。ライセンスはリポジトリのREADMEにBSD 3-Clause(上流のTorchTitanから継承)とあります。
出典・参照資料
大きいニュースはYouTubeでも解説しています。Xでは新着記事をお知らせしています。
コメント
まだコメントはありません。最初のコメントを書いてみませんか?
AIについて聞きたいことはありますか?
質問箱で無料で受け付けています。回答は公開され、他の方の参考にもなります。
質問箱を見る →