コンテンツに移動

MIT の教授、パブリック クラウドで史上最大のクラスタを構築してコンピューティングの限界を突破

計算数論学者であり、マサチューセッツ工科大学(MIT)の主任研究科学者でもある Andrew V. Sutherland 氏は、LMFDB(L-関数およびモジュラー形式データベース)の管理に Google Compute Engine を使用したところ、自身の持つ HPC(ハイ パフォーマンス コンピューティング)の最高記録を塗り替え、58 万コアという新記録を打ち立てました。

数理哲学の授業では「対象」という言葉をよく耳にしますが、この対象とは、数や関数、あるいは曲線のような数学的な計算の結果など、基本的には計算できるあらゆるものを指します。LMFDB(L-Functions and Modular Forms Database: L-関数およびモジュラー形式データベース)はさまざまな数学的対象とそれらの関係を詳細に表したもので、世界各地の研究者の協力のもとに作成されており、MIT などの欧米諸国の大学を拠点とする国際チームによって運営されています。

「数か月ではなく数時間で質問の答えを得ることができるのであれば、研究の全体的な見通しが変わってきます。」

Andrew V. Sutherland, 計算数論学者および主任研究科学者, MIT

研究者間でデータを共有する取り組み

対象を作成する計算には、極めて複雑でその計算方法を知っている人が世界中にごくわずかしかいないものがあります。また、非常に大規模で時間と費用がかかりすぎるため、1 度しか行わないほうがよい計算もあります。LMFDB は、そのような数学的対象に関する研究データを世界中の物理学者、コンピュータ サイエンティスト、数学者のコミュニティと簡単に共有できるようにすることで、科学の発展に寄与しています。

LMFDB の運営チームは、高まり続けるストレージのニーズに対応できるクラウド サービスを必要としていました。目安としては、これまで LMFDB 内の対象を作成するのにほぼ 1,000 年分の計算時間がかかっています。ストレージの重大な問題以外にも、拡張性の問題もありました。LMFDB は lmfdb.org から誰でもアクセスできるため、日々の数え切れないほどの検索数に対応する拡張性が求められていたのです。さらに、LMFDB は共同プロジェクトであるため、運営チームでは異なる国にいる人たちが簡単に管理できるシステムも必要でした。

インフラではなく研究に専念するために

LMFDB チームは複数のクラウド ソリューションを検討した結果、性能の高さ、自動スケーリング機能、使いやすさ、そして信頼性の高さから Google Cloud(Google Cloud)を選択しました。

LMFDB とソリューションの選定プロセスに関わった主任研究員の 1 人に、計算数論学者であり、MIT の数学教授および主任研究科学者である Andrew V. Sutherland 氏がいました。

Sutherland 氏は「私たちは研究に専念したい数学者なので、ハードウェアの故障やウェブサイトのスケーリング問題に頭を悩ませたくありません」と述べています。

LMFDB チームは、ウェブサーバーのホストに Google Compute Engine(GCE)と Google Persistent Disk を使用し、半テラバイトのオンライン データおよびアクセス頻度が低めの 3 テラバイトのデータの保存に MongoDB のミラー化されたデータベースを使用することにしました。この構成により、必要に応じて LMFDB のスケーリングが可能になり、研究者が必要なときに簡単に計算結果や数学的対象を取得できるようになりました。LMFDB では、世界各地の研究者によるデータベースの共同管理を容易にするために、その他のさまざまな Google Cloud ツール(Google Stackdriver、Google Cloud Console、Google Cloud Load Balancing など)も使用しています。

Sutherland 氏は極めて複雑な集計を行って LMFDB に保存する必要がありましたが、その規模の大きさはパブリック クラウドで以前行われていたことの限界を超える計算能力を要しました。そこで、Sutherland 氏は GCE のプリエンプティブ VM を使って 58 万コアの処理を実行しました。これは、パブリック クラウド上で稼働する HPC(ハイ パフォーマンス コンピューティング)クラスタとしては史上最大規模です。

この計算の結果、それぞれが LMFDB で独自のエントリを持つ 70,000 個の異なる曲線が得られました。これらの曲線のうちの 1 つを見つけるだけでも、多数の計算サイクルを要する非常に複雑な作業で、Sutherland 氏によれば「15 次元の藁の山の中から針を見つけるようなもの」だそうです。

GCE を採用する前、Sutherland 氏は自身の 64 コアマシンを使って計算処理を実行していましたが、それには時間がかかりすぎました。他に残された唯一の手段は MIT のクラスタの演算時間を獲得することでしたが、それは現実的ではなく、使用できるソフトウェアの構成も限られていました。しかし GCE であれば、いくつでも必要な数のコアを使用し、必要なオペレーティング システムやライブラリ、アプリケーションをインストールしていつでも環境を更新することができます。

Google Cloud の拡張性により、LMFDB では学生やベテランの研究者など、誰もがウェブ インターフェースからコンテンツを簡単に検索して見つけることができます。たとえば、Sutherland 氏が教える楕円曲線のクラスの学生も、宿題に LMFDB を利用しているそうです。

膨大な計算にかかる費用を削減する

多くの研究者や教育機関の予算は限られていますが、Google Cloud なら手頃な費用で膨大な計算処理を行うことが可能です。Sutherland 氏が使用する GCE のプリエンプティブ VM では、極めて複雑な計算を行っても費用を大幅に削減できます。これらのインスタンスにはさまざまな機能が備わっていますが、GCE による中断があるため、同様のソリューションに比べると最大で 80% も費用を抑えられます。計算の中断があっても、性能には大きく影響しません。Sutherland 氏の場合、毎時間計算が中断されるインスタンスは平均 2~3% のみで、全ジョブが完了するまでスクリプトによってインスタンスが自動的に再稼働されるため、無駄になる時間はほとんどないそうです。GCE のプリエンプティブ VM では、こうしたわずかな中断により、安価に、しかもほぼ遅延なしで膨大な計算処理が可能になるのです。

「私たちは 21 世紀型の数学を形づくっているのです。」

Andrew V. Sutherland, 計算数論学者および主任研究科学者, MIT

こちらから、最新情報、分析情報、各種リソースなどの配信にご登録ください。