# HG changeset patch # User fuchita # Date 1203487689 -32400 # Node ID 757099e56f0a266833de593624cdbefffaf3055f # Parent 0805e6e510d475c727ce8fd67f9c0b8501a663ec *** empty log message *** diff -r 0805e6e510d4 -r 757099e56f0a resume/fig/table.bb --- a/resume/fig/table.bb Wed Feb 20 14:20:01 2008 +0900 +++ b/resume/fig/table.bb Wed Feb 20 15:08:09 2008 +0900 @@ -1,5 +1,5 @@ %%Title: ./table.pdf %%Creator: ebb Version 0.5.2 %%BoundingBox: 0 0 566 188 -%%CreationDate: Wed Feb 20 14:50:11 2008 +%%CreationDate: Wed Feb 20 15:23:07 2008 diff -r 0805e6e510d4 -r 757099e56f0a resume/fig/table.pdf Binary file resume/fig/table.pdf has changed diff -r 0805e6e510d4 -r 757099e56f0a resume/handout.tex --- a/resume/handout.tex Wed Feb 20 14:20:01 2008 +0900 +++ b/resume/handout.tex Wed Feb 20 15:08:09 2008 +0900 @@ -19,8 +19,8 @@ \section{はじめに} 並列・分散環境におけるプログラミングは、今後ますますその重要性が高まっていくと考えられる。 しかし、分散プログラム開発において、スケーラビリティを確保することは難しい。 -スケーラビリティとは、参加ノードの数が小規模から大規模に変化しても性能が劣化しない -という性能基準のことを示す。 +スケーラビリティがあるとは、参加ノードの数が小規模から大規模に変化しても性能が劣化しない +ということである。 %スケーラビリティ等を確保したまま、分散プログラムを正しく記述することやデバッグ %を行う為に、これまで多くの分散プログラミングモデルが開発されてきたが、それらは %遂次プログラミングモデルの延長であったり、アプリケーション開発者が複雑で理解しにくい @@ -33,15 +33,16 @@ 本研究では、本研究室で開発した分散プログラミングモデル Federated Linda を用いた 分散アルゴリズムの記述事例として、Compact Routing の実装を行い、 その開発によって得られた知見から本モデルに必要な機能の拡張を提案する。 -本モデルへの機能拡張としてまず最初の段階で、Federated Linda の実装をC言語から +本モデルへの機能拡張としてまず最初の段階で、設計の見直しを行う事で機能拡張を容易にする事 +を狙いに、Federated Linda の実装をC言語から Java言語へと移行した。その上で、分散デバッグ機能について検討を行い、 -実際に分散デバッグ機能を実装する。 +実際に分散デバッグ機能を実装した。 実装した分散デバッグ機能の評価として、Federated Linda での 分散アルゴリズムにおけるバグの特定を行い、その有用性を示す。 \section{Federated Linda} Federated Lindaは本研究室で開発された非同期型Lindaで構築される。 非同期型Lindaは、タプルというデータ単位をネットワーク上の「タプル空間」に -出し入れする事で通信を行うLindaという通信モデルを用い、その通信を、明確な +出し入れする事で通信を行う通信モデルを用い、その通信を、明確な 待ちを行わない非同期的な通信によって行う。しかし、集中型の通信を行う 非同期型Lindaはスケーラビリティをもたない。そこで、複数のタプル空間を接続し、 ノード間にてタプルを中継させる分散モデルとしてFederated Lindaを提案する。 @@ -50,6 +51,7 @@ 切り替えが可能となり、ポータビリティが向上する。 3つに分離されるFederated Lindaの構成要素には以下の3つがある。 +%\vspace{-5mm} {\small \begin{verbatim} Local Access Protocol @@ -63,8 +65,8 @@ に沿ったコネクション確立処理を行う \end{verbatim} } -Federated Lindaでは、玩具的に分散アルゴリズムを実装し、実験する事が可能であり、 -その教育的な利用も考えられる。 +%Federated Lindaでは、玩具的に分散アルゴリズムを実装し、実験する事が可能であり、 +%その教育的な利用も考えられる。 \section{Compact Routingの実装と評価} Federated Lindaにおける分散アルゴリズム、つまりProtocol Engineの実装として @@ -75,7 +77,7 @@ のスケーラビリティに対して優位な分散アルゴリズムである'Compact Routing'[3]の実装を 行った。 -評価としてDistance Vector RoutingとCompact Routingそれぞれにおけるルーティングテーブル構築 +評価として両実装におけるルーティングテーブル構築 時間の比較を行い、表\ref{routingtime}に示す結果となった。 \vspace{-7mm} \begin{table}[htbp] @@ -133,9 +135,9 @@ \subsection{問題点} 今回の評価実験において、Distance Vector RoutingとCompact Routingの両実装を 格子状のメッシュ型トポロジにおいて用いた所、何らかのバグが原因と考えられる -問題点が明らかとなった。しかし、当時のFederated Lindaにおける開発環境が、多数の -ターミナルによって全プロセスを起動するテスト駆動開発であり、それらに対して逐次的 -デバッグを行うことではバグ要因を特定する事は困難であった。 +問題点が明らかとなった。しかし、当時のFederated Lindaが、多数の +ターミナルで起動されるプロセスに対して逐次的 +デバッグを行う開発環境であったことから、バグ要因を特定する事は困難であった。 よって、Federated Lindaの機能を拡張し、分散プログラム開発に適した'分散デバッグ機能'を 実装することを提案し、その機能の検討と実装を行った。 @@ -196,10 +198,10 @@ \vspace{-3mm} {\small \begin{verbatim} -・6ノードの格子状メッシュ型トポロジにおけるDistance Vector - Routingのルーティングテーブル構築 -・6ノードの格子状メッシュ型トポロジにおけるCompact Routing - のルーティングテーブル構築 +・実験トポロジにおけるDistance Vector Routingのルーティン + グテーブル構築 +・実験トポロジにおけるCompact Routing のルーティングテーブ + ル構築 \end{verbatim} } \vspace{-3mm}