• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2015 Fiscal Year Annual Research Report

大規模グラフ並列処理のための代数的構造に基づく理論基盤とプログラム開発基盤の構築

Research Project

Project/Area Number 26280020
Research InstitutionThe University of Electro-Communications

Principal Investigator

岩崎 英哉  電気通信大学, 情報理工学(系)研究科, 教授 (90203372)

Co-Investigator(Kenkyū-buntansha) 胡 振江  国立情報学研究所, アーキテクチャ科学研究系, 教授 (50292769)
松崎 公紀  高知工科大学, 工学部, 准教授 (30401243)
江本 健斗  九州工業大学, 大学院情報工学研究院, 准教授 (00587470)
Project Period (FY) 2014-04-01 – 2018-03-31
Keywordsプログラミング方法論 / 大規模並列処理 / 領域特化言語 / 代数データ型 / 関数型言語
Outline of Annual Research Achievements

本研究は,大規模なグラフデータを処理対象とする効率的な並列アプリケーションの開発を支援するシステムを構築することを目的とする.そのため,(1)グラフデータ中の代数的な構造を捉えたモデル化と理論的基盤の構築,(2)グラフ処理の柔軟な記述と最適化が可能な領域特化言語の設計と実装,(3)領域特化言語で記述されたプログラムに対する大規模並列フレームワークの適用による並列処理システムの設計と実装を行う.
前年度の研究調査により,分散並列処理フレームワークとしてPregelが有望であるという結論に達している.平成27年度はこれに基づき研究を行い,以下の実績を得た.
第一に,グラフを相互再帰的なデータ構造として定義した上で,Pregelによる頂点主体のバルク同期並列計算を,グラフの構造に基づく構造的再帰関数としてモデル化した.この関数の実行は,メモ化に基づくグラフ上の動的計画法として捉えることができる.
第二に,このモデル化の上でグラフ処理を簡潔に記述するための関数型領域特化言語Fregelを設計した.Fregelでは,関数型言語Haskellに類似した文法を用いて,各頂点における計算を行う関数を定義する.この関数では1ステップ前の計算値へのアクセスをテーブルを利用することにより抽象化し,さらに,内包表記により集約と通信を統一的に記述する.Fregelを利用すれば,Pregelを直に用いるよりも少ない手間で,プログラムを記述できる.
第三に,Fregelプログラムを,Pregelモデルのオープンソース実装であるGiraph上で動作するプログラムへ翻訳するコンパイラのプロトタイプを作成した.現状では,翻訳されたGiraphのプログラムは,プログラマが直に記述した同等の処理を行うプログラムと比較して,実行時間として10倍程度のオーバーヘッドがある.しかし,実験を通して我々のアプローチが有望であるという感触を得ている.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

本研究の申請段階では,平成27年度は,グラフのモデル化,問い合わせ最適化機構,領域特化言語の設計と処理系の実装,グラフ処理アルゴリズムのライブラリ化などを行う予定となっている.実際の進展としては,「研究業績の概要」に記述した通り,以下のような成果が得られている.
(1) グラフデータを相互再帰的なデータ構造により定義し,Pregelによる計算をグラフの構造に基づく構造的再帰関数としてモデル化した.
(2) 関数型領域特化言語Fregelを設計した.さらにいくつかのグラフ処理の問題に対して実際にプログラムを記述し,Fregelによるプログラムの「書きやすさ」を確認した.
(3) FregelのプログラムをGiraphのプログラムに翻訳するコンパイラのプロトタイプを実装し,評価を行った.
実際,これらの成果に基づく国内会議論文 (査読あり) を執筆して口頭発表を行った.またこの論文は,査読において高い評価を得て,ジャーナル論文に招待されている.さらに,この国内会議論文を発展させた形で英語論文を執筆し,プログラミング言語分野の一流の国際会議に投稿した (現在査読中).さらに,最適化機構,ライブラリ化に関しても,順次検討を加えているところである.以上を総合的に判断して,「おおむね順調に進展」と評価した.

Strategy for Future Research Activity

平成27年度の研究を受けて,平成28年度は以下の課題を中心に取り組む.これらの作業を通して,Fregelの実用性を高め,それを立証していく.それぞれを担当する人員配置に関しても柔軟に対応して,効率的な開発が進むようにする.得られた成果は,一流の国際会議論文,ジャーナル論文として執筆し公表することを目指す.
(1) 領域特化言語Fregelの改善: 現状のFregelでは,他頂点における計算結果を授受の記述法に関して,若干書きにくい面が残っており,改善の余地がある.この問題に取り組み,より「プログラムを自然に記述しやすい」言語を目指す.
(2) 領域特化言語FregelからGiraphへのコンパイラの最適化: 現状のコンパイラは,無駄なコードを除去しきれておらず,Giraphで直書きしたプログラムと比較するとオーバーヘッドが大きい.このオーバーヘッドを軽減するための最適化機構を実装する.
(3) Giraph以外の並列処理フレームワークの利用: Giraph以外の代表的なフレームワークへのコンパイラも実装することにより,Fregelの汎用性を立証するとともに,利用するフレームワーク独立のインタフェースを切り出す.
(4) 様々なアプリケーションの記述と大きなクラスタでの実験: 様々なアプリケーションをFregepで記述した上で,Amazon EC2 などの規模の大きなクラスタ環境での実験を行う.

Causes of Carryover

「研究実績の概要」にあるような実績が得られ,論文発表を行う下地が整ってきたので,次年度の対外発表のための旅費等として残すこととした.

Expenditure Plan for Carryover Budget

次年度に予定している成果発表にかかわる旅費あるいは会議参加費の費用として使用する.

  • Research Products

    (10 results)

All 2017 2016 2015

All Journal Article (3 results) (of which Int'l Joint Research: 2 results,  Peer Reviewed: 3 results,  Open Access: 2 results) Presentation (7 results) (of which Int'l Joint Research: 5 results)

  • [Journal Article] Towards Systematic Parallelization of Graph Transformations over Pregel2017

    • Author(s)
      Le Dec Tung, Zhenjiang Hu
    • Journal Title

      International Journal of Parallel Programming

      Volume: 45 Pages: 320-339

    • DOI

      10.1007/s10766-016-0418-5

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] A Partial-tree-based Approach for XPath Query on Large XML Trees2016

    • Author(s)
      Wei Hao, Kiminori Matsuzaki
    • Journal Title

      Journal of Information Processing

      Volume: 24 Pages: 425-438

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Parallel Tree Accumulations on MapReduce2016

    • Author(s)
      Kiminori Matsuzaki, Reina Miyazaki
    • Journal Title

      International Journal of Parallel Programming

      Volume: 44 Pages: 466-485

    • DOI

      10.1007/s10766-015-0355-8

    • Peer Reviewed / Open Access
  • [Presentation] 大規模グラフ並列処理のための関数型領域特化言語2016

    • Author(s)
      江本 健斗,松崎 公紀,胡 振江,森畑 明昌,岩崎 英哉
    • Organizer
      第18回プログラミングおよびプログラミング言語ワークショップ (PPL 2016)
    • Place of Presentation
      岡山県玉野市
    • Year and Date
      2016-03-07 – 2016-03-09
  • [Presentation] A Functional DSL for Large Scale Graph Processing (Poster)2016

    • Author(s)
      Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Akimasa Morihata, Hideya Iwasaki
    • Organizer
      13th International Symposium on Functional and Logic Programming (FLOPS 2016)
    • Place of Presentation
      Kochi, Japan
    • Year and Date
      2016-03-04 – 2016-03-06
    • Int'l Joint Research
  • [Presentation] A functional approach to PregelA functional approach to Pregel (Poster)2015

    • Author(s)
      Onofre Coll Ruiz, Kiminori Matsuzaki
    • Organizer
      13th Asian Symposium on Programming Languages and Systems (APLAS 2015)
    • Place of Presentation
      Pohong, Korea
    • Year and Date
      2015-11-30 – 2015-12-02
    • Int'l Joint Research
  • [Presentation] Processing UnQL Graph QueriProcessing UnQL Graph Queries with Pregel2015

    • Author(s)
      Chong Li, Le-Duc Tung, Xiaodong Meng, Zhenjiang Hu
    • Organizer
      日本ソフトウェア科学会第32会大会
    • Place of Presentation
      東京
    • Year and Date
      2015-09-08 – 2015-09-11
  • [Presentation] Towards Systematic Parallelization of Graph Transformations over Pregel2015

    • Author(s)
      Le Dec Tung, Zhenjiang Hu
    • Organizer
      8th International Symposium on High-level Parallel Programming and Applications (HLPP 2015)
    • Place of Presentation
      Pisa, Italy
    • Year and Date
      2015-07-02 – 2015-07-03
    • Int'l Joint Research
  • [Presentation] Functional Models of Hadoop MapReduce with Application to Scan2015

    • Author(s)
      Kiminori Matsuzaki
    • Organizer
      8th International Symposium on High-level Parallel Programming and Applications (HLPP 2015)
    • Place of Presentation
      Pisa, Italy
    • Year and Date
      2015-07-02 – 2015-07-03
    • Int'l Joint Research
  • [Presentation] Pregel meets UnCAL: a Systematic Framework for Transforming Big Graphs2015

    • Author(s)
      Le Dec Tung
    • Organizer
      31st International Conference on Data Engineering Workshop (ICDEW 2015)
    • Place of Presentation
      Seoul, Korea
    • Year and Date
      2015-04-13 – 2015-04-17
    • Int'l Joint Research

URL: 

Published: 2017-01-06  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi