このドキュメントでは、ハイ パフォーマンス コンピューティング(HPC)ワークロード向けの Google Cloud のストレージ オプションと、並列ファイル システムを HPC ワークロードに使用するケースについて説明します。並列ファイル システムでは、複数のクライアントが並列 I/O パスを使用して、複数のネットワーク ストレージ ノードに保存された共有データにアクセスします。
このドキュメントの内容は、データ集約型 HPC ワークロードのストレージを設計、プロビジョニング、管理するアーキテクトと管理者を対象としています。このドキュメントでは、ネットワーク ファイル システム(NFS)、並列ファイル システム、POSIX、HPC アプリケーションのストレージ要件に関する概念的な理解があることを前提としています。
HPC とは
HPC システムは、複数のコンピューティング リソースを集約することで、大きな計算問題を迅速に解きます。HPC によって、ヘルスケア、ライフ サイエンス、メディア、エンターテイメント、金融サービス、エネルギーなどの業界で研究とイノベーションが促進されます。研究者、科学者、アナリストは、HPC システムを実験、シミュレーションの実行、プロトタイプの評価に使用します。HPC ワークロード(地震処理、ゲノミクス シーケンシング、メディア レンダリング、気象モデリングなど)では、より増加したデータレート、より低下したレイテンシで大量のデータを生成してアクセスします。高パフォーマンス ストレージとデータ管理は、HPC インフラストラクチャの重要な構成要素です。
Google Cloudの HPC ワークロード向けストレージ オプション
オンプレミスで HPC インフラストラクチャをセットアップして運用することは、費用がかかり、継続的なメンテナンスが必要になります。また通常、オンプレミスのインフラストラクチャは、需要の変化に合わせて迅速にスケーリングできません。オンプレミスのハードウェアの計画、調達、デプロイ、デコミッションには、かなり時間がかかるため、HPC リソースの追加に遅れが生じることや、処理能力の不足につながります。クラウドでは、最新のテクノロジーを使用する HPC インフラストラクチャを効率的にプロビジョニングし、容量をオンデマンドでスケーリングできます。
Google Cloud と Google の技術パートナーでは、クラウドに HPC インフラストラクチャをデプロイし、オンプレミスの HPC インフラストラクチャを強化するための、費用効率に優れ、柔軟で、スケーラブルなストレージ オプションを提供しています。科学者、研究者、アナリストは、必要に応じて、プロジェクト向けの追加の HPC 容量をすぐに利用できます。
Google Cloudに HPC ワークロードをデプロイするには、ワークロードの要件に応じて、次のストレージ サービスとプロダクトから選択します。
ワークロード タイプ | 推奨されるストレージ サービスとプロダクト |
---|---|
低レイテンシでデータにアクセスする必要があるが、共有データセットに対して厳しい要件の I/O を必要とせず、クライアント間のデータ共有が制限されているワークロード。 | NFS ストレージを使用します。次のいずれかを選択します。 |
複雑で相互依存する大規模な I/O を生成するワークロード(信頼性の高いプロセス間通信に Message-Passing Interface(MPI)を使用する密結合な HPC アプリケーションなど)。 | 並列ファイル システムを使用します。次のいずれかを選択します。 並列ファイル システムでサポートできるワークロード要件の詳細については、並列ファイル システムを使用するケースをご覧ください。 |
並列ファイル システムを使用するケース
並列ファイル システムでは、複数のクライアントが、並列 I/O パスを使用して、複数のネットワーク ストレージ ノード全体に共有データを格納しアクセスします。並列ファイル システムは、密結合な HPC ワークロード(データ集約型の人工知能(AI)ワークロードや SAS アプリケーションを使用する分析ワークロードなど)に最適です。次のいずれかの要件を満たす、レイテンシの影響を受けやすい HPC ワークロードには、並列ファイル システム(Managed Lustre など)の使用を検討してください。
- 密結合のデータ処理: 気象モデリングや地震探査などの HPC ワークロードでは、複数のサーバーで同時実行される多くの相互依存ジョブを使用してデータを繰り返し処理する必要があります。通常、こうしたプロセスでは、MPI を使用して定期的にデータを交換し、チェックポインティングを使用して障害から迅速に復旧します。並列ファイル システムを使用すると、相互に依存するクライアントが低レイテンシ ネットワークを介して大量の共有データを同時に保存し、アクセスできます。
- POSIX I/O API とセマンティクスのサポート: Managed Lustre などの並列ファイル システムは、POSIX API とセマンティクスの両方を必要とするワークロードに最適です。ファイル システムの API とそのセマンティクスは、独立した機能です。たとえば、NFS は POSIX API をサポートしています。POSIX API は、アプリケーションで
open()
、read()
、write()
などの関数を使用してデータの読み取りと書き込みを行う方法です。ただし、NFS が別のクライアント間のデータアクセスを取りまとめる方法は、マシン上の異なるスレッド間のデータアクセスを取りまとめる POSIX セマンティクスとは異なります。たとえば、NFS では、クライアント間での POSIX read-after-write キャッシュの整合性はサポートされていません。NFSv3 は弱い整合性、NFSv4 は close-to-open 整合性に基づいています。 - ペタバイトの容量: 並列ファイル システムは、単一のファイル システムの名前空間で数ペタバイトの容量までスケールできます。NetApp Volumes は最大 1 PB をサポートし、Filestore Regional と Zonal はファイル システムごとに最大 100 TiB をサポートします。Cloud Storage は、低コストで信頼性の高い容量を提供し、自動的にスケールしますが、HPC ワークロードのデータ共有セマンティクスと低レイテンシの要件は満たせないことがあります。
- 低レイテンシかつ高帯域幅: 非常に大規模なファイルや数百万個の小規模ファイルへの高速アクセスが必要な HPC ワークロードでは、並列ファイル システムが NFS やオブジェクト ストレージのパフォーマンスを超える可能性があります。並列ファイル システムで提供されるミリ秒未満のレイテンシは、オブジェクト ストレージよりも大幅に低いため、最大 IOPS に影響する可能性があります。また、並列ファイル システムでサポートされている最大帯域幅は、NFS ベースのシステムよりも桁違いに高い場合があります。これにより、VM の NIC が飽和状態になる可能性があります。
- エクストリーム クライアント スケーリング: NFS ストレージでは数千ものクライアントをサポートできます。並列ファイル システムは、10,000 を超えるクライアントからの共有データへの同時アクセスをサポートするようにスケーリングでき、クライアントの数に関係なく高いスループットを実現できます。
密結合 HPC アプリケーションの例
このセクションでは、並列ファイル システムによる低レイテンシで高スループットのストレージを必要とする、密結合の HPC アプリケーション例について説明します。
AI 対応の分子モデリング
医薬品研究は、大きな費用がかかり、大量のデータを使用するプロセスです。最新の医薬品研究機関は、研究開発のコストを削減し、運用を効率的にスケーリングして、科学研究を加速するために AI を利用しています。たとえば、研究者は AI 対応のアプリケーションを使用して、薬剤の分子間の相互作用をシミュレートし、薬剤中の化合物に対する組み替えの影響を予測します。これらのアプリケーションは、並列化された処理能力の高い GPU プロセッサで動作し、大量のデータを読み込み、整理、分析してシミュレーションを高速に実行します。並列ファイル システムは、AI アプリケーションのパフォーマンスを最大化するために必要なストレージ IOPS とスループットを提供します。
SAS アプリケーションを使用した信用リスク分析
住宅ローン融資企業や投資銀行などの金融機関は、クライアントや投資ポートフォリオの信用価値を継続的に分析してモニタリングする必要があります。たとえば、大手住宅ローン融資企業は数千人の見込み顧客に関するリスク関連のデータを日々収集しています。クレジット アナリストのチームは、分析アプリケーションを使用して、所得、クレジット履歴、支出パターンなど、クライアントごとのさまざまなデータを共同で確認します。この分析から得られる分析情報により、クレジット アナリストは正確かつタイムリーな融資提案ができるようになります。
大規模なデータセットの分析を高速化しスケールするため、金融サービス機関では、SAS Grid Manager などのグリッド コンピューティング プラットフォームを使用します。Managed Lustre などの並列ファイル システムは、マルチスレッド SAS アプリケーションの高スループットと低レイテンシのストレージ要件をサポートしています。
天気予報
気象学者は、特定の地理的地域の気象パターンを予測するために、その地域を複数のセルに分割し、各セルにモニタリング デバイス(地上レーダーや気象バルーンなど)をデプロイします。大気の条件は、これらのデバイスが常に観察、測定します。また、HPC クラスタで実行されている気象予測アプリケーションへデータを継続的にストリーミングすることもそのデバイスが行います。
気象予測アプリケーションは、測定された気象パラメータ間の既知の物理的関係に基づいた数学モデルを使用して、ストリーミングされたデータを処理します。個別のジョブがリージョン内の各セルからデータを処理します。アプリケーションが新しい測定値を受信すると、すべてのジョブは割り当てられたセルの最新データを繰り返し処理し、出力をリージョン内の他のセルのジョブと交換します。気象パターンを確実に予測するには、並列で実行している何千ものジョブが生成し、アクセスするテラバイト単位のデータをアプリケーションで保存して共有する必要があります。
航空機設計向け CFD
計算流体力学(CFD)では、数学モデル、物理法則、計算ロジックを使用して、移動物体を囲む気体や流体の動きをシミュレートします。航空機エンジニアが飛行機の本体を設計する場合、考慮する因子の 1 つが空気力学です。CFD を使用すると、高価なプロトタイプを構築する時間とコストを投資する前に、設計者が、空気力学に関する設計変更の影響を速やかにシミュレートできます。各シミュレーションの実行結果を分析した後、設計者は、航空機本体の個々のコンポーネントのボリュームや形状などの属性を最適化し、空気力学を再度シミュレートします。CFD を使用すると、航空機設計者は、何百ものこのような設計変更の影響を簡単に協力し合いシミュレートできます。
設計のシミュレーションを効率的に行うには、CFD アプリケーションに共有データへのサブミリ秒でのアクセスと、最大 100 GBps の速度で大量のデータを保存する機能が必要です。
並列ファイル システム オプションの概要
このセクションでは、並列ファイル システムのGoogle Cloud で使用可能なオプションの概要について説明します。
Google Cloud Managed Lustre
Managed Lustre は、密結合の HPC ワークロードに高スループットで低レイテンシのストレージを提供する、Google マネージド サービスです。大規模なデータセットへの高スループットで低レイテンシのアクセスを提供することで、HPC ワークロードと AI のトレーニングと推論を大幅に高速化します。AI / ML ワークロードに Managed Lustre を使用する方法については、 Google Cloudで AI / ML ワークロードのストレージを設計するをご覧ください。マネージド Lustre は、複数のストレージ ノードにデータを分散するため、多くの VM による同時アクセスが可能になります。この並列アクセスにより、従来のファイル システムで発生するボトルネックが解消され、ワークロードで必要な大量のデータを迅速に取り込んで処理できます。
DDN Infinia
高度な AI データ オーケストレーションが必要な場合は、Google Cloud Marketplace で利用可能な DDN Infinia を使用できます。Infinia は、推論、トレーニング、リアルタイム分析に最適化された AI 向けのデータ インテリジェンス ソリューションを提供します。超高速のデータ取り込み、メタデータが豊富なインデックス作成、TensorFlow や PyTorch などの AI フレームワークとのシームレスな統合を実現します。
DDN Infinia の主な機能は次のとおりです。
- 高パフォーマンス: ミリ秒未満のレイテンシと複数の TB/秒のスループットを実現します。
- スケーラビリティ: テラバイトからエクサバイトへのスケーリングをサポートし、1 回のデプロイで最大 10 万個以上の GPU と 100 万個の同時クライアントに対応できます。
- 予測可能なサービス品質(QoS)を備えたマルチテナンシー: 複数のテナントに安全で分離された環境を提供し、ワークロード全体で一貫したパフォーマンスを実現する予測可能な QoS を提供します。
- 統合データ アクセス: Amazon S3 互換、CSI、Cinder などの組み込みのマルチプロトコル サポートにより、既存のアプリケーションやワークフローとのシームレスな統合を実現します。
- 高度なセキュリティ: データ保護とコンプライアンスを確保するのに役立つ、組み込みの暗号化、障害ドメインを認識する消失訂正符号、スナップショットなどの機能が用意されています。
Sycomp Storage Fueled by IBM Spectrum Scale
Google Cloud Marketplace で入手可能な Sycomp Storage Fueled by IBM Spectrum Scale を使用すると、ハイ パフォーマンス コンピューティング(HPC)、AI と ML、ビッグデータのワークロードを Google Cloudで実行できます。Sycomp Storage を使用すると、何千もの VM から同時にデータにアクセスし、ストレージ階層を自動的に管理して費用を削減しながら、アプリケーションをオンプレミスまたは Google Cloudで実行できます。Sycomp Storage は迅速にデプロイでき、NFS と IBM Storage Scale クライアントを介したデータへのアクセスをサポートします。
IBM Storage Scale は、大量(PB 規模)のデータを安全に管理できる並列ファイル システムです。Sycomp Storage Scale は、POSIX 準拠の共有ファイル システムを必要とする HPC、AI、ML、ビッグデータなどのアプリケーションに適した並列ファイル システムです。調整可能なストレージ容量とパフォーマンスのスケーリングを備えた Sycomp Storage は、小規模から大規模の HPC、AI、ML のワークロードをサポートできます。
Google Cloudにクラスタをデプロイしたら、その使用方法を決定します。既存のオンプレミス IBM Storage Scale クラスタ、サードパーティの NFS NAS ソリューション、またはその他のオブジェクトベースのストレージ ソリューションに接続して、クラスタをクラウドのみで使用するか、ハイブリッド モードで使用するかを選択します。
寄稿者
著者: Kumar Dhanagopal | クロスプロダクト ソリューション デベロッパー
その他の寄稿者:
- Barak Epstein | プロダクト マネージャー
- Carlos Boneti | シニア スタッフ ソフトウェア エンジニア
- Dean Hildebrand | CTO オフィス テクニカル ディレクター
- Sean Derrington | グループ アウトバウンド プロダクト マネージャー、ストレージ
- Wyatt Gorman | HPC アウトバウンド プロダクト マネージャー