• Column
  • AI活用に取り組む企業のためのプラットフォーム

データサイエンティストの生産性を高めるAIプラットフォームが必要【条件2】

佐々木 邦暢(NVIDIAソリューションアーキテクチャ&エンジニアリング シニア ソリューションアーキテクト)
2022年3月31日

NVIDIAの社内AIプラットフォーム「Base Command」

 上述した課題を解決できるAIプラットフォームの実例として、筆者の勤務する米NVIDIAが数年前から利用している「NVIDIA Base Command」を紹介したい。

 NVIDIA社内では現在、2016年に発表したGPUを8基搭載したサーバー「NVIDIA DGX-1」や、その進化版の「DGX-2」、最新版の「DGX A100」などDGXシリーズのサーバーを総計2000台以上を設置している。その運用を支えるAIプラットフォームがBase Commandだ。多くのチームが、このBase Commandを活用し、日々膨大なジョブを実行している。

 Base Commandは2022年3月から試用サービスの提供が始まっている。今後、「NVIDIA DGX Foundry」というサービスを通じ、一般に提供する予定である。大規模なAI関連プロジェクトにおけるチーム開発の効率化に関心をお持ちの方は是非、試していただきたい。

 以下にBase Commandの特徴を挙げる。

特徴1:コンテナベースの運用

 NVIDIAでは、コンテナ技術を積極的に活用している。GPUに最適化したAIソフトウェアは、コンテナイメージとしてパッケージ化し、「NGC catalog」というソフトウェアハブ(Webサイト)で公開してもいる(図1)。

図1:「NGC catalog」におけるコンテナ紹介の画面例

 Base Commandは、このNGCと緊密に連携している。ジョブを実行する際、NGCのコンテナイメージの種類とバージョンを指定すれば、必要なソフトウェア環境が自動的に整う。Base Commandの利用者はAIフレームワークなどの準備作業に煩わされることなく、本来の目的であるAIソフトウェアの開発に集中できる。

特徴2:ジョブのスケジューリング

 NVIDIA社内のAIインフラは2000台以上のサーバーから構成さる。それぞれのサーバーは、8あるいは16基のGPUを備える。この膨大なリソースを無駄なく活用するために、Base Commandはスケジューリング機能を提供する。

 利用者は、自分のジョブが必要とするリソースを例えば「4基のGPUが必要」「8基のGPUを持つサーバーが4台必要」といった形で指定すれば良い(図2)。Base Commandが、全体の空き状況を元に、適切なリソースを割り当ててジョブを実行する。利用者は、自分のジョブがどのサーバーで実行されているかなど物理的な配置を意識することもない。

図2:ジョブ実行時の画面例。ここでは8GPU × 4ノードを指定している

特徴3:データセットやワークスペースの管理

 Base CommandはAI学習用のデータセットを管理し提供する。利用者は、Base Commandが提示するデータセットカタログから必要なものを選べば、データセットが利用者のコンテナに自動的に接続され、利用可能になる(図3)。複数のユーザーあるいはチームが同じデータセットを重複して保持するといった非効率な管理を避けられる。

図3:データセットのカタログの例

 データセットは読み込み専用である。これに対し、読み書きが可能で、かつチーム間で共有できる領域として「ワークスペース」も提供する。AIソフトウェア開発用の各種スクリプトなどを保存することで、共同作業を効率よく進められる。

特徴4:実験管理ツールとの連携

 実験管理ツールとの連携を重視し、Base Commandの機能を外部のツールから呼び出すためのAPI(Application Program Interface)を公開している。Weights & Biases製ツールとBase Commandの連携が発表されている。今後も様々なツールとの連携が予定されている。

佐々木 邦暢(ささき・くにのぶ)

エヌビディア ソリューションアーキテクチャ&エンジニアリング シニア ソリューションアーキテクト。日本マイクロソフトでミッションクリティカルシステム、サーバー仮想化、クラウドおよびHPCのセールス・コンサルティングを担当。2010年に東京工業大学の「TSUBAME 2.0」案件でGPUコンピューティングと出会う。2016年エヌビディア入社。ディープラーニング、HPC領域のマーケティング部門を経て、現在はソリューションアーキテクトとしてGPUインフラ領域で活動している。