2019 Fiscal Year Research-status Report
指示文とメタプログラミングによる性能可搬性に優れた高性能並列プログラミングモデル
Project/Area Number |
18K11331
|
Research Institution | Institute of Physical and Chemical Research |
Principal Investigator |
中尾 昌広 国立研究開発法人理化学研究所, 計算科学研究センター, 研究員 (50582871)
|
Co-Investigator(Kenkyū-buntansha) |
村井 均 国立研究開発法人理化学研究所, 計算科学研究センター, 研究員 (70590074)
|
Project Period (FY) |
2018-04-01 – 2021-03-31
|
Keywords | 高性能計算 / コンパイラ / プログラミング |
Outline of Annual Research Achievements |
本研究の目的は,1種類のソースコードを様々な計算環境において高い性能で利用可能にすること,すなわち性能可搬性を考慮したプログラミング言語とそれを処理できるコンパイラを開発することである. 昨年度(2018年)は、次の2つのコンポーネントの開発および評価を行った.(1) 既存の指示文ベースの並列言語であるOpenMPを拡張し,複数のアクセラレータを利用できる構文を開発した.この構文を用いることで,ユーザはアクセラレータの構成(種類や数など)が異なる計算環境においても,同じソースコードを用いることができる.(2) HPC向けの高度な最適化(ループ・アンローリングやデータレイアウト変換など)を簡易に記述可能にするため、FortranおよびC言語をターゲットとしたメタプログラミングについて検討を行い,その言語の設計およびコンパイラの実装を行った. 昨年度に行った研究は1つの計算ノードを対象としている。そこで、今年度(2019年)に行った研究は複数の計算ノードを対象とした。HPCアプリケーションによく現れる計算パターンであるステンシル計算に着目し、そのステンシル計算を簡易に並列化できる構文を開発した。さらに、性能可搬性を高めるため、並列ステンシル計算に必要なパラメータ(通信と計算のオーバラップの有無、袖幅、配列の各次元に対する分割数など)を自動決定できる構文を開発した。現在、その構文を用いた並列ステンシルアプリケーションの開発と、コンパイラの開発を並行して進めている。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
2019年度に行う予定であった並列環境に対する構文の検討が終了した.以上より,2019年度はおおむね順調に進展していると考える
|
Strategy for Future Research Activity |
2019年度に開発する構文を処理できるコンパイラ、そしてその構文を利用したアプリケーション(並列ステンシルアプリケーション)の開発し、評価を行っていく予定である.
|
Causes of Carryover |
当初の計画では計算サーバを購入予定であったが、安価な外部サーバをレンタル利用することにしたため。
|
Research Products
(2 results)