発表・掲載日:2014/07/18

クラウド間の垣根を超える高性能計算を実現

-高性能計算機をさまざまなクラウド上に簡単に構築する技術を開発-

ポイント

  • 仮想化技術を用いて自分専用の高性能計算機を容易に構築できる技術を開発
  • 一度構築した高性能計算機を異なるクラウドでも構築できることを実証
  • 高性能計算を活用できるユーザー層および適用分野の拡大に期待

概要

 独立行政法人 産業技術総合研究所【理事長 中鉢 良治】(以下「産総研」という)情報技術研究部門【研究部門長 工藤 知宏】は、高性能計算を実行する環境を一度つくれば、異なるクラウド上でも簡単に仮想クラスタ型計算機を構築でき、すぐに使える技術を開発した。

 一般的に、高性能計算には複数の計算機を束ねて1つの計算機として利用・運用するクラスタ型計算機を用いるが、ハードウエア構成は一様ではない。一方、クラウドでは、ハードウエアの構成に依存しない仮想計算機を提供しているので、これを複数束ねた仮想クラスタ型計算機を構築することもできるが、クラウドが異なるとユーザーはソフトウエアのインストールや設定などをやり直す必要がある。そこで、アプリケーション実行環境を一度作れば、プライベートクラウドと商用クラウドなど、どんなクラウド上でも実行できる(「Build Once, Run Everywhere」)という設計思想による仮想クラスタ型計算機の構築技術を開発した。さらに、仮想計算機の数は自由に設定できるため、計算能力が不足すれば、より多くの仮想計算機を利用できるクラウド上により大きな仮想クラスタ型計算機を構築して、全く同じ使い勝手で使用できる。

 また、産総研内のプライベートクラウドであるAIST Super Green Cloud(ASGC)上に仮想クラスタ型計算機を構築し、これが商用クラウドAmazon EC2でも使用できることを実証した。この技術により、従来高性能計算を活用できなかったユーザーや応用分野でも、高性能計算を利用できるようになるため、産業競争力の強化への貢献も期待される。

異なるクラウド上で構築される仮想クラスタ型計算機の図
異なるクラウド上で構築される仮想クラスタ型計算機

開発の社会的背景

 自動車の開発や創薬など高性能計算を必要とする研究組織や企業は多い。従来、それらの組織は、組織内にクラスタ型計算機を用意して計算を行っていたが、その計算機の能力以上の問題を解くには、より高性能なシステムを導入しなければならなかった。また、必要が生じてもすぐに計算機を導入できるとは限らない。

 そこで、今日広く普及しているクラウドでは、仮想計算機を束ねてクラスタ型計算機を構築することで、計算機を追加して計算能力を向上できるようになってきている。しかし、ソフトウエアのインストールや設定などをやり直す必要があるため、一度構築した計算機の環境を、別のクラウド上に新たに構築することは時間・手間・費用がかかる。

 また、クラスタ型計算機の初期導入費用や運用費用が高いため、特に中小企業では高性能計算を行える環境が整備されていなかった。産業競争力強化に向けて、これらのユーザーを支援し、高性能計算を適用できる分野を拡大することが求められている。

研究の経緯

 産総研では、高性能計算を行うアプリケーション実行環境を一度作ればどんなクラスタ型計算機上でも動く利便性と、高い計算性能を備えた高性能計算基盤の実現を目指して研究開発を進めている。このなかで、クラウド技術を活用し、アプリケーション実行環境を仮想化して、実際の計算機から切り離すことで、必要に応じてさまざまなクラウド上でクラスタ型計算機を構築するという着想を得て研究開発を進めた。また、クラウドは仮想化技術によって成立しているが、高性能計算分野では、仮想化による計算性能の低下という問題があり普及が進んでいない。そこで、高性能計算アプリケーション実行時の仮想化の影響を詳細に評価し、仮想化による性能低下を削減する技術を開発してきた。

研究の内容

 今回開発した仮想クラスタ型計算機を構築する技術は主に二つの要素からなる。一つはクラウドに依存しない仮想計算機イメージファイルを作成・共有する仕組みで、もう一つはその仮想計算機イメージファイルから仮想クラスタ型計算機を構築する仕組みである。これらの技術を用いることで、計算の規模に応じた台数の計算機を持つ仮想クラスタ型計算機をさまざまなクラウド上で構築することができる。具体的には、この技術では、各仮想計算機共通のソフトウエアや設定データ一式が含まれた仮想計算機イメージファイルをユーザーが要求した台数分の仮想計算機に転送し、各計算機を識別するためのIPアドレスや計算機一覧表など構築時に決まる情報を設定することで、1つのクラスタ型計算機として組み上げる。仮想計算機イメージファイルには、高性能計算アプリケーションの開発、実行、監視に必要なソフトウエアがあらかじめ組み込まれており、ユーザーは直ちに使用を開始できる。また、仮想計算機イメージファイルをユーザーが自由にカスタマイズすることもできるため、これにより自分専用のアプリケーション実行環境をも構築できる(図1)。今回、ASGC上に仮想クラスタ型計算機を構築したが、同じ仮想計算機イメージファイルを使って、Amazon EC2上に、より大きな仮想クラスタ型計算機が構築でき、全く同じ使い勝手で使用できることを確認した。

仮想クラスタ型計算機の利用イメージ図
図1 仮想クラスタ型計算機の利用イメージ
 

 また、ASGCに、今回開発した仮想化による性能低下の削減技術を組み込み、その効果を確認した。高性能計算の代表的指標であるHigh Performance LINPACKを用いた計算による評価を行ったところ、16台の計算機を用いた場合、仮想化されていないクラスタ型計算機の性能は6.77 TFLOPSに対し、仮想クラスタ型計算機の性能は6.40 TFLOPSと、約5 %の性能低下にとどまった。性能低下はアプリケーションの性質に依存するが、概ね許容できる程度であり実用上問題がないことが確認できた。

 既存のクラウドは、単一の仮想計算機を提供するもので、仮想クラスタ型計算機を提供するものはない。また、商用クラウドであるAmazon EC2上に仮想クラスタ型計算機を構築するソフトウエアはあるが、異なるクラウド上で同一の仮想クラスタ型計算機を構築することは考慮されていない。我々の知る限り、異なるクラウド上で仮想クラスタ型計算機を構築できる高性能計算クラウドサービスは今回の技術以外にはない。今回開発した技術は、複数のクラウドを要求に応じて簡単に使い分ける、新たな高性能計算基盤への道筋をひらくものである。

今後の予定

 今後は、国内の大学や公的機関が構築しているアカデミッククラウドや、国外の研究コミュニティと連携し、仮想クラスタ型計算機に関する実証実験を実施し、ASGC上での実運用サービスとして展開する。さらにクラウドサービス提供企業などへの技術移転を図り、高性能計算を活用できるユーザーや適用できる分野の拡大を目指す。


用語の説明

◆高性能計算
超高速・大容量計算を行なうためのソフトウエアやハードウエア技術の総称。[参照元へ戻る]
◆クラウド
計算やデータの格納をネットワーク経由で利用する技術。従来、ユーザー自身が計算機を所有、管理していたのに対して、クラウドでは、計算機を必要なときにすぐに調達でき、また必要な分だけ利用できる。[参照元へ戻る]
◆仮想クラスタ型計算機
複数台の仮想計算機から構成されるクラスタ型計算機。ユーザーが単一のシステムとして利用できるように、アカウント管理システム、ジョブ管理システム、共有ファイルシステムなどが設定されている。[参照元へ戻る]
◆仮想計算機
実際の計算機(物理計算機)上にソフトウエアによって模擬された計算機。1台の物理計算機上に複数台の仮想計算機をつくることができ、各々の仮想計算機は、物理計算機と同様にオペレーティングシステムやアプリケーションをインストールして利用することができる。[参照元へ戻る]
◆アプリケーション
計算科学、設計・製造におけるシミュレーションなどの応用プログラム。高性能計算機で実行されるアプリケーションは、複数台の計算機を利用して並列的に実行されるプログラムとして実装されている。[参照元へ戻る]
◆プライベートクラウド
クラウド技術を用いることで、企業や大学、公的機関など、組織内の計算機を集約・共有化して、統合管理する技術のこと。Amazon EC2のような商用クラウドと異なり、特定の組織に対してサービスを提供する。[参照元へ戻る]
AIST Super Green Cloud
産総研が平成26年度に導入したクラスタ型高性能計算機であり、所内向けのクラウドサービスを提供する。そのハードウエアは155台のCray社製の計算機から構成され、各計算機は、CPUとして10コアのIntel Xeon E5-2680v2を2基、メモリー128 GB、SSDストレージ600 GBを搭載し、計算機間はInfiniBand FDRおよび10ギガビットイーサネットで接続されている。[参照元へ戻る]
Amazon EC2
米国Amazon社が提供するクラウドサービスの一つで、ユーザーが必要なときに必要な台数の仮想計算機をクラウド上で構築できる。さまざまな性能を持つ仮想計算機が提供されるが、仮想クラスタ型計算機は提供されていない。[参照元へ戻る]
◆IPアドレス
インターネットやイントラネットなどのIPネットワーク上の機器を識別するための番号であり、通信相手の宛先を指定するために用いられる。仮想計算機も実際の計算機と同様に、一意のIPアドレスが割り当てられる。[参照元へ戻る]
High Performance LINPACK
連立一次方程式の解を求めるプログラムであり、主に浮動小数点演算性能の計測に用いられる。高性能計算機の性能比較のために広く使われている。[参照元へ戻る]
◆TFLOPS
Tera Floating-Point Operations Per Secondの略であり、1秒間に1兆回の浮動小数点演算を実行できることを意味する。FLOPS値は高性能計算機の代表的な性能指標として用いられる。[参照元へ戻る]


お問い合わせ

お問い合わせフォーム