研究テーマ

世界最高速のスーパーコンピュータの性能は、国内最高速の「京」の性能10PFlopsの5倍近くに達しつつあり、日本を含め世界各国ではEFlops (1000PFlops)に向けた研究開発が既に進行しています。一方学術情報メディアセンターでは、本研究室の教員らが中心となって、現時点で性能総計が1.5PFlopsを超える規模のスーパーコンピュータを運用しており、さらに2016年度に7PFlops超のシステムを導入するための仕様策定などを行っています。我々の研究課題はこれらのシステムや「京」の先を見据えたものであり、次世代のスパコン構築技術について、それを支えるソフトウェア技術とともにさまざまな側面から研究を進めています。

並列計算技法

高性能システムの大規模並列化により、従来の数十〜数百程度の並列度を念頭に設計された並列アルゴリズム・並列化技法では、効率的な計算が困難になってきています。そこで大規模な並列計算のための新たなアルゴリズム・技法の研究を行うとともに、応用プログラムの局所的な視点での記述を元に高度なアルゴリズム・技法を適用したコードを生成する研究を進めています。特に最近注目されているメニーコアプロセッサを対象として、多数のコアとハイパースレッディングの組み合わせによる102スケールのマルチスレッディングや、512bitのSIMD演算機構を活用した高効率の並列コードを、プラズマ粒子の加速・移動・電流計算などの不規則性が強い計算を対象として生成するための研究開発を行っています。

高効率電磁流体シミュレーション

電磁流体(MHD)シミュレーションでは一般の流体力学の計算に加えて磁場を解く必要があり、更に、磁気圏は巨大な構造とマルチスケール現象を持つため、膨大な計算資源が必要となります。そのため、スパコンを用いた大規模計算の研究を行っています。現在までに並列ベクトル機、超並列スカラ機において、ベクトル化、キャッシュヒットなどCPUアーキテクチャを考慮した計算実行効率の向上、ノード間通信を含むハードウェア構成を考慮した並列化の高効率化を行い、その計算機の性能を最大限に出すことができる技術開発に力を入れてきました。最近では、学際大規模情報基盤共同利用・共同研究拠点(JHPCN)などの共同研究により、北大、東北大、東大、名大、京大、阪大、九大の様々なアーキテクチャから成るスパコンを利用しており、それぞれのスパコンにおいて良い実効性能を達成しています。

エクサスケールに向けた通信ライブラリ

エクサスケールの計算においても利用可能な省メモリ技術と動的最適化技術によるスケーラブル通信ライブラリの開発を共同研究しています。特にステンシル計算における通信に適用できる部分を担当しており、ステンシル計算時の特徴的な通信パターンを抽出して、そのコストを測定し、効率化を達成しています。現在は通信スレッドを利用した計算と通信のオーバラップ手法を開発しています。

低消費電力アプリケーション

エクサスケールの計算機を実現する上で消費電力の削減が問題となっているため、使用可能電力に制約が存在する中で、アプリケーションの性能を最大化させるコード最適化技術や電力制御機構を適応的に制御するシステムソフトウェア開発の共同研究を行っています。最新の研究では、CPUやDRAMに消費電力の制限をかけた時のアプリケーションの振る舞いを詳細に調べ、CPUやDRAMに配分する電力量を変えることで、消費電力は同じでも、計算性能が変化することを示しました。

タスク並列言語Tascell

グラフマイニング問題等を解くためのバックトラック探索アルゴリズムや異機種混合環境における並列計算では、計算前に各ワーカに等しい量の仕事を割り振ることは困難なので、実行中に仕事を分けあう動的負荷分散を行う必要があります。実現手法としては、仕事を多数の並列計算可能な単位にあらかじめ分割しておき、それを遊休ワーカに割り当てていくものが一般的です。これに対し、通常時は逐次計算を行い、仕事を持たない他のワーカからの要求を受けた時に初めて分割を行う手法を提案しています。このような処理を簡潔に書ける並列言語の開発や、グラフマイニングのような実用アプリケーションへの応用に関する研究を行っています。

(参考:Tascell: Backtracking-based Load Balancing Framework

ジョブ並列スクリプト言語Xcrypt

スパコンを使った大規模シミュレーションでは、OpenMPやMPIなどによるプログラム内並列化だけでなく、同一のプログラムをパラメータを変えつつ同時に実行するようなプログラム間の並列化も多く行われます。このようなジョブ並列処理に適したスクリプト言語の開発とその応用に関する研究を行っています。最近の研究では、電気機器の設計のための電磁界シミュレーションの大量実行と結果解析を効率良く行うためのシステムの開発や、その開発事例からのフィードバックに基づくプログラミングインターフェースの改良等を行っています。

(参考:Xcrypt: Job Level Parallel Script Language

高速行列演算を用いた境界要素解析支援フレームワーク

 境界要素法は偏微分方程式に対する数値解法として広く用いられていますが、密行列が現れるため計算量が膨大となる欠点を持ちます。この欠点を克服する手段として、並列計算機の利用、行列近似を用いた高速化手法の利用、それらの併用が考えられています。境界要素法を用いる研究者が、これらの手段を容易に利用できるよう支援するソフトウェアフレームワークの開発を行っています。行列近似手法としては、階層型行列法に取り組んでいます。

(参考:ppOpen-HPC project