理化学研究所 計算科学研究センター

メニュー
メニュー
OVERVIEW 計算科学研究機構とは

プログラミング環境研究チーム

エクサスケール計算のための高性能高生産性プログラミング環境の研究開発

当研究チームでは、「京」のような大規模な並列システムの能力を引き出し、かつ、難しいといわれる並列プログラミングの生産性を向上させるためのプログラミング言語およびプログラミングモデルの研究開発を行ってきた。その一つが、PGAS(Partitioned Global Address Space)モデルをベースとした新しいプログラミング言語「XcalableMP」の開発である。我々は、Omni XMPコンパイラというレファレンス実装を行い、「京」に向けた最適化やPGASモデルの性能評価、さらに「京」以外の演算加速機構をもつ並列システムへの適用を行ってきた。また、「京」の大規模並列プログラム向けの性能チューニング・解析ツール「Scalasca」を研究用に移植し、ユーザに提供した。

現在、エクサスケール計算のための高性能高生産性プログラミング環境に向けて、XcalableMPの次のバージョンであるXcalableMP 2.0の研究開発を進めている。大規模なメニーコアプロセッサ並列システムを活用するためのプログラミングが重要な課題となるため、マルチタスク機能とPGASの片方向通信を統合したモデルを提案している。これにより、時間のかかる大域的な同期を排除し、RDMAによる軽量の通信機構と計算のオーバーラップを可能にして、効率化が図れると期待している。また、ポスト「京」に向けては、wide SIMDに関するコンパイラの最適化の研究も進めている。

おもな研究成果

XcalableMPがHPCCのClass2部門賞を2年連続受賞
XcalableMPを「京」で用いた際の性能が、スーパーコンピュータに関する国際会議SCのHPCチャレンジベンチマークコンテストにおいて、2013、14年と続けてClass2部門賞を受賞した。この部門では、提案する並列プログラミング言語でRandomAccess、FFT、HPL、STREAMなどのベンチマークを実装したときの性能と生産性を評価する。我々は典型的なステンシル計算であるHimenoベンチマークも加え、これらを「京」で性能評価した結果を提出した(最大の場合「京」の全ノードを用いた)。2014年には、「京」に向けてコンパイラをチューニングした他、アルゴリズムの工夫を行った結果、XcalableMPを用いたプログラムは、MPIによるレファレンス実装とほぼ同じ性能を達成できた(図)。また、生産性の一つの指標として、XcalableMPによるコードの行数がMPIを用いた場合のコードに比べて、少ないことがわかった。これらにより、XcalableMPが並列プログラミング言語として、良好な生産性と性能をもつことが示せた。


XcalableMPによる HPCC ベンチマーク(SC14)の結果

関連サイト

チームリーダー佐藤三久

チームリーダー
佐藤 三久(さとう みつひさ)

略歴: 詳細を見る
アニュアルレポートRIKEN AICS Annual Report
FY2015
(PDF 690KB)
FY2014
(PDF 1.05MB)
FY2013
(PDF 986KB)
FY2012
(PDF 766KB)
FY2011
(PDF 448KB)