annotate 2.tex @ 7:624a45b40bfe

done.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 28 Mar 2009 13:45:19 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 \section{ Scaleする分散プログラム}
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 Internet 上で動作している分散プログラムは、例えば、DNS、
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 SMTP、NNTP、あるいは、さまざまなP2PやDHTなどがある。
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 これらのサービスで重要なのは、Scalability つまり、
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 サービスの規模が大きくなっても、応答速度などの要求仕様を
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 満たすことである。このようなプログラムは、一つのコンピュータ
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 に閉じた逐次型のプログラムや、マルチスレッドのプログラムとは
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 様相が異なる。
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 Federated Linda\cite{kono05b,kono05f} は、計算モデルが明解なLinda\cite{linda} を
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 複数接続することで、分散プログラムの作り方を明確なモデル
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 上で学ぶことができるようにするように設計されている。
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 我々は、この上で投票システムやCompact Routing\cite{Abraham04compactname-independent,kono08c} 等を
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 実装して来たが、分散プログラムは、それ自体が複雑なだけで
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 なく、デバッグ自体の困難さが問題であることがわかってきた。
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
18
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 最初の目標は、琉大情報工学科にある200台規模のPCクラスタ
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 上で、Federated Linda を用いた分散プログラムを作成し
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 デバッグすることである。
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
22
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 分散プログラムは正しい答えを出すだけでなく、Scalability
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 があるかどうかを調べることが必要である。PCクラスタ上の
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 デバッグでは、デバッグ自体に通信が必要であり、その通信が
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 Scalability に影響しないようにする必要がある。
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
27
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28