ニュース

生成AI対応のためにML/DL処理能力向上を目指すGoogle Cloudが発表した“TPU v5e”とは何か?

 Googleの子会社でCSP(クラウド・サービス・プロバイダー)となるGoogle Cloudは、8月29日~8月31日(米国時間)の3日間にわたり、米国カリフォルニア州サンフランシスコ市にあるモスコーン・センターにおいて、同社の年次イベント「Google Cloud Next '23」を開催した。

 この中でGoogle Cloudは、同社がIaaSとして提供しているGCE(Google Compute Engine)のインスタンス「Cloud TPU v5e」のプレビュー提供開始と、NVIDIA H100 GPU(開発コードネーム:Hopper)を搭載した「A3」のGA(General Availability、一般提供開始)を明らかにした。同社自身が設計して提供するTPU(Tensor Processing Unit)とNVIDIA GPUのソリューション強化を図ることで、生成AIの構築に必要となる処理能力強化を実現する計画だ。

Googleが公開したTPU v5eのシステム、1つのマザーボード上に4つのTPUが搭載されている

 そうしたGoogle CloudでIaaS事業を率いるGoogle Cloud 副社長 兼 コンピュート・MLインフラストラクチャ事業部 事業部長 マーク・ローメイヤー氏に、TPU v5eにおける強化点などに関して伺ってきたので、今回の発表に関して説明していきたい。

Google Cloud 副社長 兼 コンピュート・MLインフラストラクチャ事業部 事業部長 マーク・ローメイヤー氏

生成AIブームによりIaaSへのGPU、TPUなどの演算需要がより高まっている

 今年に入ってから急速に注目が集まっているのが生成AI(Gen AI、Generative AI)と呼ばれる、人間に変わってコンテンツを作成したり、文字を起こしたり、言語を翻訳したりなどの機能を持つAIだ。こうした生成AIでは、LLM(Large Language Model、大規模言語モデル)という、従来のマシンラーニング/ディープラーニングで利用されていたAIモデルに比べて、パラメーターと呼ばれるデータがより巨大になっているモデルが利用されており、従来のAIに比べて、より強力な機能を実現可能になっている。

 例えば、従来の文字起こしでは、精度がイマイチで使いモノにならないというイメージがあったと思うが、LLMを利用するとより高い精度で文字起こしができる。そのため、これまでは人間に変わってAIができなかったようなことが生成AIではできるようになっている、それが大きく注目されている要因だ。

 実際、今回のNext '23でも、Googleが提供するSaaSベースの生産性向上ツールの「Google Workspace」向けに、Duet AIという生成AIツールをエンタープライズ向けに月額30ドル(1ユーザーあたり)で提供を開始すると明らかにしており、今後ユーザーがAIに対して「こういう内容でプレゼンテーションのスライドを作ってほしい」と示唆すると、ユーザーがクラウドストレージに保存しているデータからそれに関するデータを探してきて、スライドを自動生成する、そうした機能がデモされた。

生成AIが世の中を変えていくと説明する、Google Cloud CEO トーマス・クリアン氏

 そうした、Google自身がエンドユーザーに対して提供する機能はもちろんのこと、今後はGoogle Cloudの顧客である大企業が、生成AIを活用したアプリケーションを作成し、それを顧客に提供していく例が増えていくと考えられている。

 今回のNext '23でも、顧客の事例として、Google Cloudを活用した生成AIベースのチャットボットを、GMの車両向けにサービスとして導入していること、AIスタートアップとして注目を集めているAI21が、Google Cloudのインフラストラクチャを利用して生成AIを実現していることなど、実に多くの発表が行われた。

 というのも、現在多くのエンタープライズが生成AIを活用したアプリケーションの実装を目指しており、その開発、実行の環境としてGoogle CloudのようなCSPが提供するインフラストラクチャを活用するのが一般的で、そのデマンドは高まるばかりだからだ。このため、CSPの側も生成AIに対応したインフラの拡充を急いでいる、そうした状況にある。

より大きな処理能力が必要になる学習ではNVIDIA GPUへの需要が高く、GPUは奪い合いの状況

 生成AI向けのインフラといっても、そもそも生成AIが従来のマシンラーニング/ディープレーニングベースAIの延長線上にある技術であるので、基本的には従来提供されてきたマシンラーニング/ディープラーニング向けの演算装置がそのまま使える。ただし、モデルがより大規模になっているので、必要とされる演算性能はより高くなっている。それが大きな違いと言える。

 今回Google Cloudは、NVIDIAが提供するNVIDIA H100 GPU(Hopper)を採用した「A3 supercomputer」(A3)と同社が呼ぶインスタンスの、9月からのGA(一般提供開始)を明らかにした。生成AIを開発するエンタープライズにとって、今最も時間がかかる作業はLLMのような大規模モデルを利用した学習になる。このため、AI学習の演算のうち「90%以上のシェアを持っている」(NVIDIA ジェンスン・フアンCEO)GPUのインスタンスを強化するというのは、CSPにとって論理的な流れだ。

 A3は、簡単に言えばHGX H100がベースになっており、2つの第4世代Xeonスケーラブル・プロセッサーと8つのNVIDIA H100 GPUを搭載している。そのHGX H100をクラスターとしてGoogleのデータセンターにインストールする形になっており、最大で数万台のH100 GPUまでスケールして利用することができる。Google Cloudが導入しているHGX H100は、NVIDIAのNVLinkと、今回のNext '23で発表されたGoogle独自IPUの発展版となるTitaniumのネットワークアダプターで階層的にスケールアウトできるように設計されており、並列実行するGPUの数が増えても、比較的性能低下が少ないのが特徴となる。

 今回のNext '23には、そのNVIDIA H100 GPUを提供するNVIDIAのジェンスン・フアンCEOが、基調講演にゲストとして呼ばれ、Google Cloud CEOのトーマス・クリアン氏と対談を行った。フアンCEOはこの中で「5月に発表したGH200を搭載したシステムを最初に提供するCSPはGoogle Cloudだ」とリップサービスを行い、COMPUTEXで発表したGH200(Grace Hopper)のシステムを最初に提供するCSPが、Google Cloudになると明らかにした。

NVIDIAがCOMPUTEX 23で発表したGH200ことGrace Hopper(COMPUTEX 23にて撮影)
トレードマークの革ジャンを着て登壇したNVIDIA ジェンスン・フアンCEO(左)

 Google Cloudの顧客にとっての懸念は、必要とするような数のGPUがきちんと供給される、料金さえ払えば自由に使えるようになるかどうかだ。というのも、現在生成AIへのデマンドが非常に高くなっていることで、DGX H100や、その1世代前のDGX A100などの納品まで時間がかかるようになっている。それだけNVIDIAの予想を上回るような需要があり、供給が追い付いていないと見られる状況が発生しているからだ。

 Google CloudのクリアンCEOは、NVIDIA GPUの供給は十分なのかと問われると、それには直接は答えずに「われわれはTPUなどマシンラーニング/ディープラーニングのアクセラレータには13もの選択肢を提供している。それで顧客の需要を満たすことができると考えている」と述べ、NVIDIAが十分な数のGPUを供給できるのかに関して何もコメントをせず、後述するTPUなどを含めることで十分に顧客の需要を満たせると説明した。

記者説明会で記者の質問に答える、Google Cloud CEO トーマス・クリアン氏

GPUだけでは埋められない市場をカバーするTPUの最新版としてTPU v5eを発表

 そのTPUだが、今回Google Cloudは新しいTPUとして「TPU v5e」、そしてそのTPU v5eを利用したインスタンスとして「Cloud TPU v5e」を発表した。

上から見たマザーボードと4つのTPU v5e

 Google Cloudが提供するTPUは、2016年のGoogle I/Oでその構想が発表されたマシンラーニング/ディープラーニング専用のマイクロプロセッサーである。

 もともとのコンセプトとしては、汎用のソフトウェアを実行する必要があるCPUやGPUなどに実装されている、分岐予測やOut-Of-Order実行ユニット、階層化されたキャッシュメモリなどの部分を取り払い、ニューラルネットワークが学習などを行う時に多用される行列算を高速に処理することに特化したアーキテクチャとなっている。Googleが基本的な設計を行い、外部のファウンダリーで製造して、Google Cloudのインスタンスとして提供している。今回のTPU v5eの場合には、TPU v5eがチップの名称で、Cloud TPU v5eがインスタンスとしての名称となる。

 GPUのような汎用プロセッサーの場合は、AIの学習以外にもさまざまな演算に利用される。GPU(Graphics Processing Unit)の「G」の由来であるグラフィックスはその代表例と言え、グラフィックスを高速に処理するための演算器がGPUには用意されている。それら演算器の消費電力などが思ったより大きいため、専用プロセッサーと比較してGPUの電力効率は思ったよりよくない。

 それに対して最初から行列演算に特化した演算器(MXU:Matrix Multiplier Unit)などを備えるTPUは、マシンラーニング/ディープラーニングの演算を高速に、かつGPUに比べて低い消費電力で演算することができるため、電力あたりの性能に優れているのだ。

TPU v5eのマザーボード

 Google Cloud 副社長 兼 コンピュート・MLインフラストラクチャ事業部 事業部長 マーク・ローメイヤー氏によれば、今回のTPU v5eは、従来よりもさらに効率を従事した製品になっているという。「今回われわれはTPU v5eと製品名にEfficiencyを意味するeを付加した。それだけ効率を意識して設計したからだ」と述べ、これまで「e」という文字が入ってこなかったTPUの製品名に「v5e」とeをつけた理由を説明している。

 というのも、今回Google CloudはTPU v5eの特徴に関して、従来世代のTPU v4世代と比べて、学習時の価格性能比が2倍、推論時の価格性能比が2.5倍だとだけ説明しており、従来世代よりも高いピーク性能を発揮するとは一言も説明していないからだ。実際、今回TPU v5eのチップ単体に関して、具体的なスペックをGoogle Cloudは公開していない。

 従って、現時点ではチップがどのように進化したのに関してはわからないとしか言いようがなくて、これまでの通例から言えば、今後(来年あたりか?)徐々に公開されていくことになるだろう。

Podあたりのチップ数は減ったが、マルチスライスに対応することでトータルの演算量が増える

 その中で唯一具体的に公開されたスペックが、1つのPod(要するにクラスターのこと)で最大256基までスケールアップできるという点だ。このスペックは、それだけを見れば、1つのPodで4096基のチップまでスケールアップできるというTPU v4のスペックと比較すると、大幅にスペックダウンしているように見える。

 しかし、ローメイヤー氏によれば、TPU v5eではわざとそういう仕様になっており、無理にPodでスケールアップしなくてもよいように、新しい仕組みとして「マルチスライス(Multislice)」が導入されているという。

 Googleによれば、歴史的な経緯もあってマシンラーニング/ディープラーニングの学習は、ソフトウェア的にはスライスと呼ばれる、複数のTPUとNICから構成される仮想的な単位をベースに演算が行われてきたという。TPU v4世代までは、このスライスは学習の演算時には1つのスライスのみが利用可能で、その1つのスライスは最大で3072基のチップまでしか利用できないようになっていた。つまり、ハードウェア的には最大4096基のPodであっても、ソフトウェア的には3072基まで1回の学習や推論に利用できないようになっていた。逆に言うと、大規模な学習や推論時には性能の限界はそこで規定されてしまっていたという。

 今回TPU v5eで導入されたマルチスライスはその言葉の通りで、そのTPUとNICなどで構成されるスライスをソフトウェア的に複数扱えるようにしている。従来のTPU v4では一度には1つのスライスしかサポートされていなかったので、最大3072チップまでしか一度の学習/推論処理に利用できなかったのに対して、「最大で数万個までスケールが可能」(ローメイヤー氏)というレベルまで、一気に引き上げる。

 そうしたマルチスライスの導入により、従来よりも巨大なLLMなどの生成AI処理時の処理能力を引き上げ、かつ1つのPodではチップ数を256に引き下げることで、内部インターコネクトの消費電力などを抑えることが可能になるため、データセンター全体の消費電力が改善されるとローメイヤー氏は説明した。そうした結果が、学習時の価格性能比が3倍、推論時の価格性能比が2.5倍というメリットなのだ。

TPU v5eを搭載したラック。1つのブレードにつき4つのTPUが搭載されているので64TPU構成のラックとなる。スペック上は最大256TPUまでスケールアップできる

Googleが提供するVertex AIなどのソフトウェアスタックがハードウェアの違いを吸収して目的に応じて演算できる

 そのように、マルチスライスという新しいソフトウェアの仕組みを導入するが、生成AIを利用するユーザー側の対応はほとんど必要ないという。

 ローメイヤー氏は「Google CloudはVertex AIという統合的なAIソフトウェアの開発環境を顧客に対して提供している。基本的にはわれわれが提供しているツールを利用していただくことで、ハードウェアの違いは吸収するようになっており、ユーザーはその上で動くモデルの設計に集中できる」と述べたように、コンパイラなどのレベルでTPU、さらに言えばNVIDIA GPUを利用する場合にはCUDAのコードなどを自動で吐き出すようになっているため、ユーザーのレベルではそこを意識する必要はないというのだ。

 単に、コストと必要とする処理能力でターゲットとなるハードウェアを選べばいいということだ。まさにそれがGoogle CloudのクリアンCEOがいう「13のアクセラレータに対応しており、それで顧客の需要を満たすことができる」ということの意味になる。

 Googleとしては、従来通りGPUを必要とする顧客にはA3を選択してもらい、それでも足りない場合にはTPUにオフロードしてもらう、それが今現在の戦略ということになるだろう。そのためには、TPUの価格性能比を上げるのが得策で(つまり、顧客がNVIDIA GPUでなく価格でTPUを選ぶような状況を作り出すこと)、今回のようなTPU v5eのように効率を上げていくという選択になったと考えることができる。その意味で、GPUが本当に足りなくて今後もあまり増やせないような状況が発生しても、それをTPUで補うことができるというGoogle CloudのIaaS戦略は理にかなっていると言えるだろう。