2010年8月19日木曜日

汎用並列分散処理基盤としての SPADE / System S

System S の処理系及び SPADE のプログラミングモデルは、元々、低レイテンシを第一の目的にするデータストリーム処理の基盤及び言語として設計されてはいるものの、実際にはスループットを最大化する汎用的な分散並列処理基盤として活用することができます。実際に、鈴村が関わっている商用システムの構築プロジェクトにおいては、そのような使われ方がされつつあります。

 このような使われ方はむしろ迎合すべきもので、後者の計算モデルをバッチ型計算モデルと呼ぶとすると、データストリーム処理モデルと同様のプログラミングモデルとしてシステムを記述することができる利点があります。また、研究としては、このような考えを元に SPADE というデータフロー型のプログラミング言語を捉えると、以下の2つのアイデアが浮かんできます。

1.「SPADE プログラムから CPU/GPU (or Multi-GPU) 上で効率的に稼動するコードを生成する技術」
関連研究は以下の論文でMapReduce プログラムを GPU 上で稼動させる研究です。
Mars: A MapReduce Framework on Graphics Processors by Bingsheng He , Naga K. Govindaraju

2.「MapReduce プログラミングモデルを SPADE プログラムにコード変換する技術」
MapReduce プログラミングモデルで記述されたコードは Hadoop だけでなく、汎用の分散並列処理基盤としての System S 上で実行することができようになります。

0 件のコメント:

コメントを投稿