科学を格納する:研究者がコンテナーを利用でしてイノベーションを加速

投稿者: Akhil Docca

ミネソタ大学が AI やハイパフォーマンス コンピューティングのソフトウェア ライブラリとして NVIDIA NGC を採用

ミネソタ大学スーパーコンピューティング研究所 (MSI) の研究者チームが、コンテナーを利用することで、ハイパフォーマンス コンピューティング (HPC) や AI によって生み出される小さくても重要な大量のソフトウェア要素を格納する方法を発見しました。

MSI は同州の学術機関における HPC 研究の中心的拠点の 1 つであり、がんのゲノム解析から気候変動の影響把握まで幅広い分野の 400 以上ものアプリケーションを、NVIDIA の GPU によって高速化させています。これらの多様なアプリケーションのユーザーは州全体で何千人にも上るため、そのニーズに応えることは容易ではありません。

どのアプリケーションもそれぞれ固有の複雑な構成要素から成り、あるアプリケーションが必要とするハードウェア構成やコンパイラ、ライブラリは、他のアプリケーションが必要とするものと衝突する場合もあります。

システム管理者がアプリケーションごとにアップグレードやインストール、監視を行わなければならず、途方に暮れることもあります。こうした経験は、管理者とユーザーのどちらにとっても最新かつ最高のコードの探求において疲弊する原因となり得るのです。

このような落とし穴を避けながらユーザーのニーズに応えるために MSI が採用したのが、コンテナーです。コンテナーとは、基本的にアプリケーションをその動作に必要なライブリやランタイム エンジンなどのその他のソフトウェア要素を 1 つまとめるものです。

コンテナーがアプリケーションの展開を加速

コンテナーによって、MSI のユーザーは、管理者のサポートがなくてもアプリケーションを数分で展開できるようになりました。

MSI のリサーチ コンピューティング担当アソシエート ディレクターであるベンジャミン リンチ (Benjamin Lynch) 氏は、次のように述べています。「コンテナーは、研究ワークフローにおける重要な要素の移植性と再現性を高めることができるツールです。NVIDIA の GPU 上で動作する AI や機械学習に見られるような、目まぐるしく変化するソフトウェア エコシステムでは、コンテナーが重要な役割を果たします。」

コンテナーはアプリケーションを動作させるのに必要なすべての要素を備えているため、Ubuntu で構築したアプリケーションをテストする必要がある研究者は、互換性を気にせず MSI の CentOS クラスターで実行することが可能です。

「コンテナーは、複雑な農業環境モデルを、再現可能な、容易に並列化できるワークフローにカプセル化して、他の研究者が複製できるようにする上で不可欠なツールです」と、ミネソタ大学のジオコンピューティング分野の科学者であるブライアン ランク (Bryan Runck) 氏は述べています。

NGC が GPU に最適化された HPC や AI のソフトウェアにとってのハブに

MSI の研究者は、GPU によって最適化された HPC や AI のコンテナーに適したソースとして、NVIDIA の NGC レジストリを選択しました。NGC のカタログには、ディープラーニングからビジュアライゼーションまであらゆる分野を網羅するコンテナーが含まれており、すべてのパフォーマンスを最大化できるようテストされ、調整されています。

ソフトウェアの最適化によって、同じハードウェア上でもより高いパフォーマンスが得られます。

最適なパフォーマンスが得られるようテストされたコンテナーは、x86 や ARM といった複数のアーキテクチャ間で互換性を実現するためにもテストされているため、システム管理者はさまざまなユーザーを容易にサポートできます。

AI に関して言うと、NGC には多数のトレーニング済みモデルと開発者キットのコレクションがまとめられています。研究者は、それらのモデルに転移学習を適用して独自のカスタム バージョンを作成し、開発時間を短縮させることができます。

ミネソタ大学で農業を専門とするデータ サイエンティストのクリスティーナ パウデル (Christina Poudyal) 氏は、次のように述べています。「コンテナー化されたアプリケーションを HPC プラットフォーム上で動作させることが可能になり、手軽に開発を始められるようになりました。しかも、GPU によって演算にかかる時間が 10 分の 1 以下にまで短縮されたのです。」

HPC と AI のワークロードを統合

HPCと AI のアプリケーションを融合できることも、MSI がコンテナーを採用するもう 1 つの要因です。どちらのワークロードも、MSI の GPU で高速化されたシステムの並列処理機能を利用します。

このような統合によって、分野を超えた研究が生まれています。

同大学でリサーチ コンピューティング担当ディレクターを務めるジム ウルゲンブッシュ (Jim Wilgenbusch) 氏は、「アプリケーション サイエンティストが、コンピューター サイエンティストと密に連携をとりながら、新しいデータ ソースを用いて既知の物理プロセスの一部を取り込むAI の手法を根本的に進化させています」と述べています。

これらの分野横断型チームは NVIDIA と連携して、独自のワークフローやアルゴリズムの最適化に取り組んでいます。そこで AI ソフトウェアの急速な変化に対応するために利用されているのが、NGC で更新やテストが行われ、保存されたコンテナーなのです。