2018 Fiscal Year Research-status Report
Development of a Parallel Language for Graph Search Applications in Massively Parallel Environments
Project/Area Number |
17K00099
|
Research Institution | Kyoto University |
Principal Investigator |
平石 拓 京都大学, 学術情報メディアセンター, 助教 (60528222)
|
Project Period (FY) |
2017-04-01 – 2021-03-31
|
Keywords | プログラミング言語 / 並列・分散処理 / 高性能計算アプリケーション / 知識発見とデータマイニング / 探索・論理・推論アルゴリズム |
Outline of Annual Research Achievements |
提案しているタスク並列言語Tascellおよびその基盤技術に関する開発を進めた。 基盤技術としては、Tascell処理系の実装基盤である「計算状態操作機構」(C言語の入れ子関数)の別実装として、スタックの底に眠っている局所変数・パラメータにアクセスするため、スタックフレームのうち必要な部分を構造体として格納しそれへのポインタと通常の関数ポインタのペアを入れ子関数のポインタとする手法を新たに採用した。この手法をC言語へのトラスレータとして実装し、従来手法より良好な性能を得られることを確認した。 また、分散環境対応の実装の改良として、マルチスレッド対応のMPIライブラリ実装を用いたTascellの通信機構の実装および京大スパコン環境での評価を行った。また、実行中のタスクの大きさに応じてスティール要求を「確率的に」拒否する確率的ガード方式を雑誌論文としてまとめた。 応用に関する研究として、密行列の圧縮表現であるH行列の生成過程における行列の区分け処理をTascellを用いて実装した。この区分け処理は、不規則な構造を持つ木の生成・走査処理を必要とし、Tascell等のタスク並列言語での実装が有効である。ただし、木の各ノードでの処理の負荷が重いため、木のノード間のみではなくノード内の処理もワークスティールによる並列化の対象にするというハイブリッド的な並列実装を行った。その結果、36CPUコアを用いた性能評価により、良好な性能を得られることを確認した。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
Tascellの実装基盤の開発やH行列への適用は、当初の研究計画とはやや方向性が異なっており、その結果、当初計画のアプリケーションの性質を利用したワークスティール戦略の改善などの研究項目が未実施であるが、今年度行った研究は研究課題全体の成果を得るために最終的には必要となる項目であり、全体的な進捗としては順調に進展している。
|
Strategy for Future Research Activity |
Tascellの通信機構の実装の改善として、これまで行ったマルチスレッド環境対応MPIを使った実装のさらなる評価を進めるとともに、片方向通信を使った実装や、ACPライブラリを用いた実装の検討・開発を進める。また、アプリケーションの性質を利用したワークスティール戦略の改善についても開発を進める。 対象とするアプリケーションとしては、これまで対象としてきたグラフ探索アプリケーションのほか、30年度までに開発したH行列の生成処理も用いることを検討する。
|
Causes of Carryover |
研究成果の一部について、研究をより発展させて次年度掲載の論文誌に投稿することにしたため。当該論文は投稿済であり、次年度使用額はその掲載料等に充てる。
|
Research Products
(6 results)