IPA


IPAトップ





平成15年度未踏ソフトウェア創造事業(未踏ユース)  採択案件評価書


 




1.採択者氏名


代表者

谷村 勇輔(同志社大学大学院)

共同開発者

なし



2.担当プロジェクト管理組織


 (株)メディアフロント



3.委託支払金額


 3,000,000円



4.テーマ名


 簡単で汎用的に利用できるグリッド計算網を構築・運用するためのソフトウェアの開発



.関連Webサイトへのリンク


 なし



6.テーマ概要


 提案ソフトウェアはWeb Serviceなどを利用して作られる固定サービスと,P2Pに基づいた動的にコミュニティを形成して行なわれるサービスを融合して,それらをシームレスにかつ容易に利用できるようにしたグリッド計算を実現する.

 バーチャル組織をあらかじめ用意して,その中で固定サービスを行なうグリッドは個人ユーザにとって敷居が高い.一方で,P2P型のソフトウェアは簡単に接続して動的にコミュニティを作ることができる利点があるが,これを利用して大規模な計算が行なわれた例は少なく,また初期接続ノードを考えると難しい面がある.

 そこで,固定サーバを軸にしたグリッド環境にP2P型の動的サーバを組み込める仕組みを作成する.さらに,P2P型で接続してきたユーザが独自の計算プロジェクトを開始し,必要に応じてプロジェクト賛同者を募り,計算規模を拡大することができることを目指す.これはInternet Computingで行なわれていたものに近いといえるが,プログラムを開発できる誰でもがプロジェクトをもてる点は斬新であるといえる.谷村 図1は想定されるグリッド環境である.

 

想定されるグリッド環境図

 

 

谷村 図1 想定されるグリッド環境

 

 プログラムの開発および実行に関する部分は,ユーザがグリッドの知識を知らなくても良いようにできる限り簡単なものを用意する.Webインタフェースを通して,計算状況のモニタや指示を動的に行なえるユーティリティツールも同時に開発する.このような提案ソフトウェアを開発することにより,グリッド計算環境を使用する敷居を下げ,個人レベルのユーザが簡単に大規模計算プロジェクトを開始できる基盤環境を提供することを目指す.




7.採択理由


 一言で言えば,P2Pを用いて個人でもグリッドを始められるような使いやすい敷居の低いグリッド構築環境を開発しようというプロジェクトで,早い話,みんなでゲームをやろうよといったユーザも容易にグリッドをつくれるようになるらしい.開発者たちはグリッドについての大きな実績があり,その力を大衆向き(?)のグリッドに活かそうという発想はとても素晴らしい (本人たちにそういう動機がある --- そこがポイント).開発項目を列挙し始めると,これは大変なプロジェクトということがわかってくるが,ともかく,デモができるまでのプロトタイプはしっかり仕上げてほしい.


 

 
8.成果概要(中間報告時)
 

 
 クライアントと拠点サーバの通信を行なう基盤システムGMWS (Grid Master Worker System,やっと名前がついた ―― これは未踏ユースで開発するものの前提となる) のプロトタイプ開発と,その動作確認を行なった.拠点サーバと動的サーバの通信,プログラムの配布に用いるJava Web Startを利用するのがよいと判断し,それを用いたサンプルプログラムの作成,テストを行なった.動的サーバは完成に至らなかったが,設計方針は決定した.詳細設計はこれからただちに行なう.

 なお,Globus version 3については調査を進めたが,中間報告時(11月末時点)では採用しないほうが得策と判断した.また,動的サーバは,当初P2Pを意識してオーバレイネットワークで構築する予定であったが,しかしながら,MyGMWSは大きなファイルをやり取りすることは少ないことが予想され,1つの拠点サーバが100個の動的サーバを管理することは可能と思われるので,オーバレイネットワークの構築は後回しすることにした.

 Supercomputing国際会議に参加し,グリッド技術の最新情報調査を行ない,展示ブースにてGMWSについて発表し論議を行なった.

 

 
9.PMコメント(中間報告時)
 

 
 谷村君は,公募審査,採択決定時には在米のままであった.ブースト会議直前に帰国だったので,それから本格的に開発を始めたことになる.それなりのプレッシャがかかっていたはず.しかも,中間報告時(11月末時点)博士課程3年生なので,博士論文を11月末に提出しないといけないというプレッシャもあった.まさに火事場の馬鹿力を発揮しないといけなかったわけだ.

 総じて,未踏ユースの開発者はまだ若くて,言語によるコミュニケーションの能力がまだ完成していない人が多い.その中で谷村君は申請書類も,プレゼンも言語明瞭でさすがに未踏ユース年長組の貫禄を感じる.こういった能力は「ただのプログラマ」と「スーパープログラマ」の峻別にも関係しているとPMは常日頃思っている.

 さりながら,プロジェクトの進行は (予想通り) いまいちである.谷村君はさすが博士課程で論文を書くことも生業にしているだけあって,外濠をしっかり埋めてから開発にかかるタイプと見た.だが,それも拙速に勝る特性である.

 大衆グリッドが本物になるかどうかは,こういった開発の積み重ねにかかっている.中間報告時(11月末時点),外に向かって自慢できる成果は出ていないが,幸い,12月という公式ブランクがあるので,そこで馬力を出してほしい.P2Pから出発して,大手固定サーバを巻き込めるような仕組みができれば,グリッドの新たなフェーズが開けると思うからである.PMには,個人発信型のグリッド計算がこれから本当に伸びるのかどうかいまいち読めないでいる.ぜひこの迷いを払拭してほしい.

 ところで,プロジェクトとは関係ないが,新田辺市の同志社大学キャンパスを初めて訪れて,これこそこれからの大学じゃと感銘を受けたことを付け加えておきたい.


10.成果概要(終了時)


 MyGMWSシステムを一応完成した.MyGMWSはグリッド環境を構築するために利用される最も標準的なミドルウェアGlobus Tookit 2.0をもとに構築されている.Globus Tookitは,リソース管理,データ管理,情報サービスの基本コンポーネントをセキュリティを考慮した形で提供しており,これを利用することで,実用的なグリッド・ソフトウェアを容易に開発することができる.MyGMWSでは,拠点サーバで動くAgent同士の通信の暗号化,Agentやワーカ・アプリケーションの遠隔起動に,Globus Toolkitを利用している.Globus Toolkitが利用できない環境では,MyGMWSはSecure Shellを代替として利用することができる.

 

 動的サーバの開発には,Java Web Startを利用し,Globus ToolkitのPKIの仕組みと連携が取れる形で,安全に実行ファイルを配布する仕組みを構築している.MyGMWSは,実行システムとプロジェクト企画者のための開発用ライブラリからなる.開発用ライブラリを利用して,ジョブを分配するプログラムと実際にジョブを処理するプログラムを記述することで,分散コンピューティング・プロジェクトを短期間で開始することが可能となった.

 Agent同士の通信を暗号化するために,Globus ToolkitまたはSecure Shellを利用できるシステムを開発した.

 プロジェクト企画者が指定するパラメータによって制御されるスケジューリング機能をシステムに組み込んだ.パラメータとしては,クライアントと拠点サーバが定期的な通信を行う時間間隔,拠点サーバの最低保持タスク数,動的サーバに割り当てるタスク数の3つである.

 マスター側で動かすジョブ管理プログラムは,Agent同士の通信間隔,拠点タスク数,個人リソースに割り当てるタスク数を設定するほか,用意したタスクの入力データを設定する記述が必要である.これを作成するためのライブラリとテンプレートを開発した.ワーカ側で動かす計算プログラムは,拠点サーバから受け取ったタスクを処理し,結果を拠点サーバに返す動作を繰り返す.これを作成するためのライブラリとテンプレートを開発した.

 このようにして出来上がったMyGMWSによるグリッド計算の実行手順を谷村 図2〜5に示す.

 デモ用の計算プロジェクトとして「TSP全探索プロジェクト」を作成した.マスター側で動かすジョブ管理プログラムと,ワーカ側で動かす計算プログラムを開発した.

 

実行手順図1: 開発

 

谷村 図2 実行手順1: 開発

 

実行手順図2: 署名とサインオン

 

谷村 図3 実行手順2: 署名とサインオン

 

実行手順図3: 拠点サーバでの開始

 

谷村 図4 実行手順3: 拠点サーバでの開始

 

実行手順図4: 動的サーバも利用

 

谷村 図5 実行手順4: 動的サーバも利用

 




11.PM評価とコメント(終了時)


 当初期待していたGlobus Toolkit 3.0が使えないことがわかったとか,今日流行りのP2Pの使用は性能を出すのに必要がないことがわかったとかいった事情から,計画変更を行なったが,博士論文執筆にも追われる時間の限られた中,ともかく一つのシステムをほぼ完成させた力量を高く買いたい.方針変更に対して柔軟なのは未踏ユースの特徴だ.さすがに時間切れで,外部へリリースできるα版,β版と必要なドキュメントの作成には至らなかったが,あともう少しでそれは可能だろう.幸い,谷村君は学位も取れ,産総研のグリッド研究センターに行くことが内定したということなので,これを仕上げるのに十分な環境が保証されている.ぜひ未踏ユースの成果として,早めに成果の公開をお願いしたい.

 MyGMWSの大きな特徴は企画者がネットワーク・プログラミングをするが必要ないことである.MyGMWSでは,Agentと呼ばれるシステムデーモン同士が自動的に通信を行い,ワーカで行う計算タスクの情報を交換するからである.これでグリッド計算への敷居が低くなったことは特筆すべきである.

 MyGMWSは個人ベースでプロジェクトが企画でき,グリッド環境の計算機 (拠点サーバ) だけでなく,一般の個人ユーザの計算機 (動的サーバ) も集めることができるところがミソだが,個人ユーザの協力を募る仕掛けを整備しないといけない.拠点サーバだけで計算がすまないとき,計算プロジェクトに参加してもらうリソースを公募するためのWebページを作成するためのキットの開発は一見周辺的な作業であるが,実は非常に重要な課題である.ここには力を注いでほしい.周辺が本丸を制す(?).

 個人リソース提供者に対して,Java Web Startを利用し,Globus ToolkitのPKIを取り入れたシステムを構築することで,リソース提供者のインストールの手間を省き,かつ安全にプログラムを配布することができるようにしたのも敷居を低くするのに役立っている.セキュリティに十分な配慮がなされているのもよい.

 PMは個人的にグリッド計算の企画をすることはないと思うが,ともかく簡単に仲間を募ってグリッド計算を開始できることに対して,世の中的には需要が多いのだろう.もっとも,PMは防災研究に関する国家プロジェクトの中で震災シミュレーションでクラスタPCを使おうとしている.大震災が起こったとき,被災地以外でグリッド計算を行ない,被災地ではできない被害予測が可能になるとすれば素晴らしいことだ.




  ページトップへ   






  Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2004