ストレージ サービスは、AI Hypercomputer エコシステムで高性能なモデル トレーニング、推論、ファイン チューニングを実現するうえで不可欠なデータ アーキテクチャを提供します。では複数のストレージ サービスを 利用できますが、最適な選択肢は、人工 知能(AI)と機械学習(ML)のライフサイクル内のユースケースの I/O、スループット、スケール、レイテンシの要件によって異なり ます。 Google Cloud
このドキュメントでは、GPU または TPU のパフォーマンスの最適化に最適なストレージ サービスを Google Cloud 紹介し、 比較します。また、特定の AI および ML ユースケースに最適なサービスに関する推奨事項も提供します。
ストレージ サービスの概要
Google Cloud には、AI および ML ユースケース向けに最適化された複数のストレージ ソリューションが用意されています。
Cloud Storage は、トレーニングや一括推論に必要な大規模なデータセットの処理と保存用に設計されたオブジェクト ストレージ システムです。Cloud Storage には、AI および ML タスクのデータ ストレージを最適化するための機能がいくつか用意されています。
Google Cloud Managed Lustre は、トレーニングと推論のワークロードに必要な、特殊な低レイテンシで高並行のメタデータ パフォーマンス向けに設計された、フルマネージドの POSIX 準拠並列ファイル システムです。
以降のセクションでは、各ストレージ サービスについて詳しく説明します。
Cloud Storage
Cloud Storage は、グローバルなスケーラビリティ、耐久性、費用対効果を提供するように設計された基盤となるオブジェクト ストアです。Cloud Storage を使用する場合、データは バケットと呼ばれるコンテナにオブジェクトとして保存されます。Cloud Storage には、AI および ML ワークロードのパフォーマンスを最適化するのに役立つバケット向けの機能が複数用意されています。
Cloud Storage Rapid ファミリーのプロダクトは、コンピューティング リソースの近くにデータを配置することで、AI および ML ワークロードのデータボトルネックを解消するように設計されています。これらのプロダクトを使用すると、コンピューティング ワークロードと同じゾーンにデータを配置し、GPU または TPU クラスタの高パフォーマンスで費用対効果の高いデータ ストレージ スケーリングを実現できます。Cloud Storage Rapid プロダクトには、次のものがあります。
Rapid Bucket は、ゾーンバケットの Cloud Storage で最速の 読み取り / 書き込みパフォーマンス を提供します。ゾーンバケット内のオブジェクトは、 I/O 集約型のワークロード向けに最適化された 高性能ストレージ クラスである Rapid Storage ストレージ クラスに保存されます。Rapid Bucket は、レイテンシの短縮に加えて、Cloud Storage の他のプロダクトやバケット ロケーションと比較して、スループットが大幅に向上します(最大 15 TB/秒)。
Rapid Cache は、コードを変更することなく、既存のバケットへのデータ読み取りを高速化します。Rapid Cache は、データ読み取りリクエストのデータ提供に使用される、Cloud Storage バケット用の SSD ベースのゾーン読み取りキャッシュです。このプロダクトは、キャッシュのないバケットよりも高いスループット(最大 2.5 TB/秒)と低いレイテンシを実現します。
Rapid Cache は、アクセラレータ容量がリージョン全体に分散されるマルチリージョン バケット用に設定されることがよくあります。 Google Cloud キャッシュから読み取られたデータには、マルチリージョン バケットから直接読み取られたデータよりもデータ転送料金が削減されます。
Cloud Storage FUSE は、バケットをローカル ファイル システムとしてマウントできるオープンソースの FUSE アダプタです。これにより、アプリケーションは 標準のファイル システム セマンティクスを使用してオブジェクト ストレージとやり取りできます。この機能を使用すると、ローカル ファイル アクセスで Cloud Storage のグローバルなスケーラビリティ、耐久性、費用対効果を活用できます。Cloud Storage FUSE は、 によって積極的にメンテナンスとサポートが行われています Google。
Cloud Storage FUSE には、並列ダウンロードなど、複数のクライアントサイド キャッシュとチューニング パラメータが用意されています。これらの機能により、開発の複雑さを抽象化し、ストリームのシャーディングまたは並列化によって最高のパフォーマンスを実現できます。
階層型名前空間により、バケットに真の ファイル システム構造が実現し、効率的なデータ管理 機能が提供されます。これには、アトミック フォルダの名前変更やファイル検索の高速化 (Cloud Storage FUSE でバケットがマウントされている場合)が含まれます。階層型名前空間では、階層型名前空間のないバケットと比較して、オブジェクトの読み取りと書き込みの秒間クエリ数(QPS)が 8 倍になります。階層型名前空間を使用するメリットの詳細については、 パフォーマンスと管理のメリットをご覧ください。
高スループットのデータ読み込みと頻繁なモデル チェックポイントが必要なワークロードがある場合は、階層型名前空間を有効にすることを強くおすすめします。 Rapid Bucket でゾーンバケットを作成する場合は、階層型名前空間を有効にする必要があります。
Managed Lustre
Google Cloud Managed Lustre は、AI および ML アプリケーション向けに最適化された、高性能で POSIX 準拠のフルマネージド並列ファイル システムです。Managed Lustre アーキテクチャは、チェックポイント、強化学習における高速の重み伝播、Key-Value(KV)キャッシュなど、高スループット、低レイテンシ、高メタデータ並行処理の AI/ML ワークロードに最適です。
Managed Lustre の一般的なユースケースの詳細については、 ビジネス ケースをご覧ください。
ストレージ サービスの比較
次の表に、主な特性における Cloud Storage と Managed Lustre の概要を比較します。
| 特性 | Cloud Storage | Managed Lustre |
|---|---|---|
| アーキテクチャ | オブジェクト ストア
|
並列ファイル システム
|
| ストレージ容量 | EB 単位でスケーリングできます。 |
インスタンスの パフォーマンス ティアに応じて、最大 80 PB までスケーリングできます。 |
| パフォーマンス | 以下をサポートしています。
|
以下をサポートしています。
|
| 料金 |
詳細については、Cloud Storage の料金をご覧ください。 |
詳細については、 Managed Lustre の料金をご覧ください。 |
| 要件別の推奨事項 | トレーニング データセット、非同期のマルチティア チェックポイント、モデルの重み付けの保存に、スケーラブルなオブジェクト ストアと 一般的な費用対効果が必要なアプリケーションにおすすめします。特に、Cloud Storage Rapid は、高性能で費用対効果の高いデータ スケーリングにおすすめです。 |
完全に POSIX 準拠の並列ファイル システムまたはホーム ディレクトリが必要なアプリケーションにおすすめします。また、KV キャッシュのオフロード、同期チェックポイント、強化学習の高速重み伝播など、レイテンシの影響を受けやすいワークロードや高メタデータ並行処理のワークロードにもおすすめです。 |
ユースケース別のストレージ サービスの推奨事項
| ユースケース | ストレージ サービスの推奨事項 | 推奨される理由 |
|---|---|---|
| データセットのトレーニングと準備 | 主な推奨事項: Cloud Storage Rapid Bucket | Cloud Storage バケットは、大量のトレーニング データセットと推論データセットに必要な容量、スループット スケール、 費用対効果、耐久性を提供します。Rapid Bucket を使用してゾーンバケットを作成すると、ゾーンバケットは非常に高い スループット(最大 15 TB/秒)と、最適なコストでオープン ファイルのミリ秒未満のレイテンシを実現できます。 |
| 2 番目の推奨事項: Managed Lustre | Managed Lustre はミリ秒未満のレイテンシを実現します。 低レイテンシとメタデータの並行処理のパフォーマンスが優先される、最も集中的なトレーニングとデータセットの準備タスク専用の超高速ワークスペースとして役立ちます。 | |
| チェックポイントまたは 重み転送のためのモデルの重み付けの移動または保存 | 主な推奨事項: Managed Lustre | Managed Lustre はミリ秒未満のレイテンシと 並列データ アクセスを提供するため、数千のロールアウト ワーカーが 同じ重みファイルを同時にプルしても速度が低下しません。 |
| 2 番目の推奨事項: Cloud Storage Rapid Bucket | Rapid Bucket は、GCSFS を fsspec を介して併用する場合や、クライアントサイドのパフォーマンス チューニングで Cloud Storage FUSE と併用する場合に、非同期のマルチティア チェックポイントまたは分散チェックポイントに適しています。 |
|
| 推論用のモデルの保存とダウンロード | 主な推奨事項: Cloud Storage Rapid Cache または Rapid Bucket | Rapid Cache は、推論のコールド スタートを短縮するブースター として機能します。Rapid Cache を使用すると、 モデルの重み付けを推論ノードと同じゾーンで事前ウォーミングできるため、 新しい推論インスタンスはモデルの重み付けをすばやくダウンロードして最初のリクエストを処理できます。 Rapid Bucket は、高性能で高速化されたゾーン ストレージ エンジンとして機能し、推論フリートと同じゾーンにモデルの重み付けを配置できます。 モデル提供には、ダウンロード パフォーマンスを最大化するために、 vLLM 用の Run:ai Model Streamer を使用することをおすすめします。他の推論スタックでは、 Cloud Storage FUSE の並列ダウンロード パラメータ を最適化することで、モデルの重み付けの ダウンロード時のコールド スタート レイテンシを大幅に短縮できます。 |
| 2 番目の推奨事項: Managed Lustre | Managed Lustre はミリ秒未満のレイテンシと 並列データ アクセスを提供し、パフォーマンスに敏感なモデルと、同じモデルを同時にダウンロードする並行 GPU の スケーリングにメリットをもたらします。 | |
| KV キャッシュのオフロード | 主な推奨事項: Managed Lustre | Managed Lustre はミリ秒未満のレイテンシと 並列データ アクセスを提供するため、異なるノードが KV キャッシュを「プル」し、チャットの履歴全体を再処理することなくチャットを再開できます。 |
次のステップ
AI、ML、 データ集約型分析向けに設計された Cloud Storage の プロダクト ファミリーである Cloud Storage Rapidの詳細を確認する。
Cloud Storage FUSE または Cloud Storage FUSE CSI ドライバを使用してデータセットをダウンロードする際のパフォーマンスを最適化する方法を確認する。
Google Kubernetes Engine でモデルの読み込みを高速化する方法を 確認する。