2019 Fiscal Year Research-status Report
大規模グラフ並列処理プログラムのプログラム合成・変換手法に基づく開発手法の確立
Project/Area Number |
19K11901
|
Research Institution | The University of Electro-Communications |
Principal Investigator |
岩崎 英哉 電気通信大学, 大学院情報理工学研究科, 教授 (90203372)
|
Co-Investigator(Kenkyū-buntansha) |
江本 健斗 九州工業大学, 大学院情報工学研究院, 准教授 (00587470)
|
Project Period (FY) |
2019-04-01 – 2022-03-31
|
Keywords | 大規模グラフ並列処理 / 頂点主体計算 / 部分グラフ主体計算 / プログラム運算 |
Outline of Annual Research Achievements |
本研究は,大規模グラフ並列分散処理を行うプログラムを効率的に開発し,かつ,そのプログラムに適した実行モデルに基づく効率的なプログラム実行を可能とするプログラム開発手法を確立することを目的とする.そのため,(1) 同期的な頂点主体計算から発展したモデルの構築と効果の立証,(2) 頂点主体プログラムからの別モデルのプログラムのプログラム変換・合成を利用した導出,の達成を目指している.その際必要に応じて,並列分散実行基盤の拡張や新規開発,プログラム導出の定理証明支援系による検証も視野に入れる. 2019年度は,研究の初年度として,既存研究・技術の調査に力を入れ,以下の成果を得た. (1) 部分グラフ主体計算と頂点主体計算との両方に対応した既存の大規模グラフ並列処理基盤を調査し,その評価を進めた.具体的には,そのような基盤の一つである Blogel を用い,異なる特徴のグラフを入力とし,最短路問題をはじめとするいくつかの問題を解く種々のプログラムがどの様な性能を示すか調査した. (2) プログラム運算に基づく頂点主体計算から部分グラフ主体計算への変換について,いくつかの最適化手法を考案し,その実装の方針を検討した. (3) 大規模グラフ並列処理基盤の評価に使用するための,大規模ランダムグラフの並列生成に関する研究を進めた.具体的には,実世界のグラフの特徴をもつランダムグラフとして知られるWatts-Strogatz モデルに対し,Hadoop MapReduce を用いた並列生成手法の研究を行った. (4) 大規模グラフ並列処理基盤の拡張・新規開発のための予備実装として,同期的頂点主体に基づく基盤である Pregel+ に非同期実行に拡張を加え,実装にまつわる問題点を検討した.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
「研究実績の概要」にも記した通り,今年度は以下のような成果が得られている. (1) 問題と解くアルゴリズム,処理対象とするグラフの性質 (直径,次数分布等) により.良い性能を示す実行モデル (頂点主体,部分グラフ主体) が異なることを実験的に確認した.このことは,今後のプログラム変換・合成を利用したプログラムを導出に向けての指針を示している. (2) 頂点主体計算から部分グラフ主体計算への変換についてのおおなかな手法,および実装方針を考案した. これは,プログラム変換の理論的な基盤に結びつくものである. (3) 今後の実験に必要な大規模グラフを機械的に生成する手法の研究を行ったことにより,様々な特徴を持ち大きさも異なるグラフに対して実験を行う道が開けた (4) グラフ並列実行基盤の予備実装的な拡張により,実装にまつわる経験を蓄積した.また今後の方向として,既存の基盤である Blogel を拡張する方針が妥当であるとの感触を得ている. 以上を総合的に判断して,「おおむね順調に進展」と評価した.
|
Strategy for Future Research Activity |
2019年度の研究を受けて,グラフ処理モデルとしては頂点主体と部分グラフ主体,並列実行方式としては同期的実行と非同期的実行に焦点を絞った上で,2020年度は以下の課題を中心に取り組む. (1) 頂点主体,部分グラフ主体の各モデルの特性を整理した上で,グラフアルゴリズムの特徴,処理対象グラフの特徴から,適する (と思われる)モデルや実行形式についての指針を与える. (2) 頂点主体モデルのプログラムから部分グラフ主体プログラムへの変換系を実装する.出発点となる頂点主体プログラムは,我々が先行研究で提案した関数型領域特化言語 Fregel とする.Fregel は,グラフ処理のための高階関数群を用いてグラフ処理を宣言的に記述するため,Fregel プログラムはプログラム変換系との相性が良い.変換先の部分グラフ主体プログラムについては,宣言的な記述のものを (たとえば Fregel を拡張するなどして) 適宜設計する. (3) 各モデルと各実行形式の様々な組合せが考えられるが,現状ではそれらの組合せの実行時間等を比較するための共通の実行基盤がないため,公平な比較をすることができない.そこで,既存の大規模グラフ並列処理基盤である Blogel を拡張することにより,共通の基盤を実現する.Blogel は,MPI による同期的メッセージ通信を利用して実装されているが,ここに非同期メッセージ通信の利用も組み込み,非同期実行も可能とする.
|
Causes of Carryover |
「研究実績の概要」にも記した通り,今年度は既存研究と技術の調査に力を入れ,本研究の基礎部分を固めることに重点を置いた.さらに,新型コロナウィルスの影響により,2020年に入ってから参加予定であった会議が中止になり,旅費や会議参加費が当初の予定より大幅に少なくなった. このため,次年度向けの物品費,対外発表のための旅費・会議参加費に要する額を,次年度使用額として残すことした. 使用計画としては,ある程度の規模の実験のできる環境を構築するための物品費,対外発表のための旅費等に利用する予定である.
|
Research Products
(2 results)