AI

フル稼働しているXPUであっても、無駄な処理を行っている可能性がある

ジェレミー・ワーナー

デジタルAIチャットボットのインターフェースがオーバーレイ表示されたノートパソコンをタイピングする手
生産的利用率80%の高効率なXPUシステムと、同30%の非効率なシステム(必要なオーバーヘッド、アイドル時の無駄、稼働時の無駄を含む)の比較図。

クリックして拡大

ここで用いるXPUとは、GPU、TPU、カスタムAIシリコンを含む、AIアクセラレーターの全クラスを指します。アーキテクチャの種類に関わらず、利用率はリーダーが監視する主要な指標の一つです。それは当然のことです。アクセラレーターは高価で、電力消費が大きく、データセンター内で最も希少な資産であることが多いからです。

ここに問題があります。利用率は、シリコンがアクティブ(稼働)かどうかを示します。しかし、その活動が有用かつ顧客価値のあるAI出力を生成しているかどうかまでは示しません。XPUは、データを待機したり、データを移動したり、退避されたコンテキストを再構築したり、以前の処理を再計算したり、オーバーヘッドを処理したり、ユーザーに届かない処理を実行したりしている間も、フル稼働しているように見えることがあります。

業界には、私が生産的利用率(Productive Utilization)と呼ぶ、より優れた指標が必要です。これは、ワークロードの品質、レイテンシ、サービス目標を満たす有用な出力に貢献したアクセラレーター稼働時間の割合を示します。

稼働率の高いXPUが、必ずしも生産的であるとは限りません。

生産的利用率は管理フレームワークであり、確立された業界標準や普遍的な数式ではありません。これは、システム設計とインフラストラクチャの経済性を結びつけることを目的としています。

中心となる問いは、単に「アクセラレーターの稼働率はどれくらいか?」ではありません。「アクセラレーター1時間あたり、1ワットあたり、インフラ投資1ドルあたり、どれだけの有用な出力を得ているか?」です。

利用率という言葉は3つの全く異なるカテゴリーを曖昧にしてしまう可能性があるため、この区別は重要です。有用な出力はユーザーに届き、ワークロードの品質とサービスの目標を達成します。必要なオーバーヘッドは、システムの信頼性を維持します。回避可能な無駄とは、提供される結果を改善しない作業、またはより良い設計によって品質や信頼性を損なうことなく排除できる作業のことです。

回避可能な無駄は、2つの形で現れます。アイドル状態の無駄は明らかです。XPUがメモリ、ストレージ、通信、またはスケジューリングを待機している状態です。稼働時の無駄は、見極めるのがより困難です。利用率チャート上は健全に見えても、実際にはアクセラレーターが状態の再構築や以前の計算の繰り返しを行っていたり、結果に一切貢献しない出力を生成していたり​​する場合があります。

アイドル状態の無駄を「XPUがメモリ、ストレージ、通信、スケジューリングを待機している状態」、稼働時の無駄を「退避(エビクト)された状態の再計算、以前の作業の繰り返し、または提供前の出力の破棄」と定義する2列の図。

クリックして拡大

KVキャッシュは、なぜアクティビティが誤解を招く可能性があるのかを示しています。

その最も明確な例が、キーバリューキャッシュ、一般にKVキャッシュと呼ばれるものです。モデルがプロンプトと以前の会話を処理する際、次の回答を生成するのに役立つ内部状態を構築します。その最初のパスは、多くの場合「プリフィル」と呼ばれます。もしその状態がアクセス可能なままであれば、システムはそれを再利用できます。その状態が退避されたり破棄されたりすると、システムはそれを再構築しなければならない場合があります。

プリフィルとデコードでは、システムにかかる負荷の性質が異なります。プリフィルは、プロンプトとコンテキストから状態を構築します。デコードは、トークンごとに回答を生成します。生産的利用率を高めるには、プリフィルの繰り返しを避けるとともに、デコード処理にデータを効率よく供給する必要があります。

その状態を再構築することは、XPUをアクティブな状態に保つことを意味します。しかし、それによって回答の質が向上するわけではありません。ユーザーは、状態が再利用された場合と同じ結果を得ますが、運用側はアクセラレーターの時間、電力、容量というコストを再び負担することになります。

これは稼働時の無駄です。一見すると計算処理の問題のように見えることがよくあります。しかし、実際には、根本的な原因の多くは、メモリ容量、帯域幅、局所性(ローカリティ)、キャッシュ動作、あるいはデータ移動に認められます。システムが適切な状態を適切な場所に保持できなかったために、XPUが稼働しているのです。

適切なワークロードにおいては、優れた設計のメモリおよびストレージ階層によって、再計算よりも効率的に再利用可能な状態を取得できます。ただ、フェッチ(取得)が常に優れているわけではありません。つまり、モデル、コンテキスト長、ハードウェア、トポロジ、ワークロードパターン、およびサービス目標によって答えは異なるということです。

論理的な再利用と物理的な再利用には違いもあります。トレースによって、プロンプトやコンテキストが再利用可能であることが示される場合があります。しかし、基盤となるキャッシュが退避されたり、断片化されたり、アクセスできない場所に移動されたりすると、システムは依然として再計算のコストを負担することになります。生産的利用率は、ワークロードが理論上再利用できたものではなく、インフラストラクチャが実際に提供した成果を測定する必要があります。

ポイントはシンプルです。キャッシュからの退避によって、アクセラレーターの処理が余計な負担となる場合があります。一方、再利用は、同じインフラストラクチャをより有益な成果へと変えることができます。

メモリは容量を成果へと変換します。

メモリとストレージは、AIインフラストラクチャにおける副次的な問題ではありません。それらは、アクセラレーターの能力をどれだけ有用な作業に変えられるかを決定する仕組みです。

HBMは、最も頻繁にアクセスされるデータとアクティブな実行に必要な帯域幅を提供します。大容量メインメモリとメモリ拡張により、より多くのコンテキストや作業状態を利用可能な状態に保つことができます。高性能なNVMeストレージは、再利用可能な状態を大規模に保持することができ、適切なワークロードにおいては、不必要な再計算を削減できます。

AI作業は一様ではないため、その階層構造が重要になります。一部のデータは、アクセラレーターのすぐ近くに置く必要があります。状態によっては、長時間にわたるインタラクションの間も利用できるように保持しておく必要があります。再利用可能な計算処理の中には、次のトークン生成を超えて価値を持つものがあります。すべてのデータを単にホットまたはコールドとして扱うだけでは、実際のワークロードの挙動を正しく把握できません。

デコード処理は、ピーク時の演算能力だけでなく、システムが重み、KV状態、中間データをどれだけ速く転送できるかによって制約されることがよくあります。だからこそ、有用な出力を生み出すうえで、帯域幅と局所性(ローカリティ)が非常に重要なのです。

容量も同様に重要です。KV状態が使用可能なメモリを消費してしまうと、スケジューラは同時実行数(コンカレンシー)を削減する可能性があります。需要は依然としてあり、アクセラレーターの能力も十分であっても、システムは、より多くのユーザーに対して効率的にサービスを提供するために必要な作業状態を、十分にメモリ内に常駐させることができません。

ここで、マイクロンが持つ有益な視点が活かされます。マイクロンは、HBM、DRAM、メモリ拡張、NVMeストレージを製造しています。そのため、データや状態のフロー全体において、どこで生産的利用率が実現され、あるいはどこで損失が生じているのかを、システムレベルの視点で把握することができます。

その結論は明白です。生産的利用率の低さはコンピューティングの問題として現れるかもしれませんが、その根本原因は多くの場合、メモリ帯域幅、IOPS、あるいは容量の不足にあります。システムがデータの供給、ステートの近くでの保持、再利用可能な処理の保存、効率的なデータの移動を実行できなければ、アクセラレーターは有用な出力を生み出すことができません。

生産的な出力を測定する3つの指標(アクセラレーター時間あたり、ワットあたり、インフラ投資額あたりの有用な出力)を示すフレームワーク。

クリックして拡大

アクセラレーター稼働時間、ワット、投資額あたりの出力を測定する

リーダーは利用率を継続的に追跡すべきです。それは有益だからです。遊休リソース、スケジューリングの問題、そして基本的なオーケストレーションの問題を明らかにすることができます。しかし、それを経済的リターンの尺度として扱うべきではありません。

運用に関するより良い問いとは、もっと鋭いものです。アクセラレーター時間あたり、どれだけの有用な出力を生成しているでしょうか? ワットあたりではどれくらいでしょうか? インフラ投資1ドルあたりではどれくらいでしょうか? 再利用できたはずの状態を、どれくらいの頻度で再構築しているでしょうか? 作業のうち、どれだけが必要なオーバーヘッドで、どれだけが回避可能でしょうか?

グッドプット(Goodput)は、この方向性における重要な一歩となります。NVIDIA AIPerfでは、グッドプットを、最初のトークンまでの時間やトークン間レイテンシといった、指定されたサービスレベル目標を満たす1秒あたりの完了リクエスト数と定義しています。それが、パフォーマンスとユーザーエクスペリエンスを結びつけます。生産的利用率は、経済的な観点から次のような問いを投げかけます。有償のアクセラレーター使用時間のうち、どれだけの割合が、目標を達成する有用な成果を生み出したのか?

その答えは、設計上の判断に影響を与えるはずです。具体的には、リーダーが行うメモリサイズの決定、ストレージ階層の評価、ワークロードの調整、容量の拡張、そしてアクセラレーターの増設が真に必要となるタイミングの決定に関する判断方法への影響です。

次世代のAIインフラストラクチャは、XPUがどれだけ稼働しているように見えるかではなく、アクセラレーター1時間、1ワット、1ドルあたりで、どれだけの有用なインテリジェンスを生み出せるかによって評価されるでしょう。強固なメモリおよびストレージの階層構造こそが、稼働状況を成果へと変換します。

ここで問われるべきは、単にアクセラレーターを追加購入するかどうかということではありません。重要なのは、高価なアクセラレーターの演算サイクルを有効な処理に結びつけ、最終的に有用な成果を生み出すために、システムが適切なメモリとストレージの性能、容量、階層構造を備えているかどうかです。

コアデータセンタービジネスユニット担当シニアバイスプレジデント兼ゼネラルマネージャー

Jeremy Werner

ジェレミー・ワーナーはMicronのコアデータセンター事業ユニット(CDBU)のシニアバイスプレジデント兼ゼネラルマネージャーです。CDBUは、OEMデータセンターの顧客向けのメモリソリューションと、すべてのデータセンターの顧客向けのストレージソリューションに注力しています。 25年以上の業界経験を持つ経験豊富なストレージテクノロジーのエグゼクティブであるジェレミーは、ハイパースケール、クラウド、エンタープライズ市場におけるMicronのデータセンターメモリおよびストレージポートフォリオの戦略と実行を指揮しています。 Micronに入社する前は、KIOXIA AmericaでSSD事業担当ゼネラルマネージャーを務め、SandForce、MetaRAM、Tidal Systemsなどのスタートアップ企業でセールスおよびマーケティングのリーダーシップを10年間務めました。 ジェレミーはB.S.E.E. スタンフォード大学経営大学院の卒業生であり、25件以上の発行済みまたは保留中の特許の発明者です。

関連ブログ