comparison presen/presen.rst @ 6:61923a48c02d

add presen
author axmo
date Thu, 26 Feb 2009 01:21:47 +0900
parents
children 4cd62fbbc89c
comparison
equal deleted inserted replaced
5:d383beb40a99 6:61923a48c02d
1 .. include:: s5defs.txt
2 .. include:: <mmlalias.txt>
3
4 ================================================
5 分散プログラムにおけるデバッグツールの設計と実装
6 ================================================
7
8 *発表者*
9 **小野雅俊**
10
11 *指導教官*
12 **河野真治**
13
14 *所属*
15 **琉球大学 工学部 情報工学科**
16
17
18
19 研究の背景と目的
20 ===================
21
22 背景
23
24 - 分散プログラム作成時にクラスタのネットワーク上の問題を考慮する必要がある。
25
26 - 分散プログラム用のデバッグ環境の必要性が増している。
27
28 - その上でスケーラビリティを確保しなくてはならない。
29
30
31 目的
32
33 - Federated Linda上で通常のタプル通信とは別にメタな通信を行うプロトロルエンジンの設計と実装
34
35
36
37 発表の流れ
38 ======================
39
40 - Federated Linda
41 - Linda API (JAVA)
42 - Protocol Engine
43 - Meta Protocol Engine
44 - Meta Protocol Engineの性能評価
45 - 測定
46 - まとめと今後の課題
47
48 Federated Linda
49 ===========================
50
51 - Linda
52
53 - idで番号されたデータ(タプル)をタプル空間を通してやり取りする。
54
55 .. image:: img/7.jpg
56 :align: center
57
58
59 Federated Linda
60 ===========================
61
62 - Federated Linda
63
64 - 複数のタプル空間を相互に接続する
65
66 .. image:: img/fedlinda.jpg
67 :align: center
68
69
70 Linda API (JAVA)
71 ========================
72
73 - public PSXLinda open(String host,int port)
74
75 - Linda Serverに対して接続を行う。
76
77 - public PSXReply in(int id)
78
79 - 指定したIDのタプルの受け取りを要求する。
80
81 - public PSXReply out(int id, ByteBuffer data)
82
83 - 指定したIDにByteBufferのデータを送信する。
84
85 - public int sync(long mtimeout)
86
87 - 接続しているServerとのタプルの送受信を行う。
88
89 Protocol Engine
90 =======================
91
92 - タプル空間とタプル空間のデータをやり取りする
93
94 - 前述のAPIを用いた例題
95
96 .. raw:: html
97
98 <table>
99 <tr>
100 <td>
101
102 .. class::small
103
104 ::
105
106 fdl = FederatedLinda.init();
107
108 getpsx = fdl.open(localhost,10000);
109 sendpsx = fdl.open(localhost,10001);
110
111 in = getpsx.in(10);
112
113 data = in.getData();
114 sendpsx.out(10,data);
115
116 fdl.sync();
117
118 .. raw:: html
119
120 </td>
121 <td align="center">
122
123 .. image:: img/uml.jpg
124 :width: 360px
125
126 .. raw:: html
127
128 </td>
129 </tr>
130 </table>
131
132
133 Meta Protocol Engine
134 ================================
135
136 .. raw:: html
137
138 <table>
139 <tr>
140 <td>
141
142 - 前述のProtocol Engineではデバッグを行う際に逐次Protocol Engineを用意する必要がある。
143
144 - スケーラビリティを確保する為に、Linda Server内に直接Protocol Engineを追加する。
145
146 - Meta Protocol Engine
147
148 - Protocol Engineと同じ様にServerに接続する事が出来る。
149
150 - 追加されているサーバー自身にアクセスする事が出来る。
151
152 - 通常の通信とは違うMetaな通信を行う事が出来る。
153
154 .. raw:: html
155
156 </td>
157 <td align="center">
158
159 .. image:: img/3.jpg
160 :align: center
161 :width: 360px
162
163 .. raw:: html
164
165 </td>
166 </tr>
167 </table>
168
169
170 Meta Protocol Engineの性能評価
171 ==============================
172 提案、実装したMeta Protocl Engineの性能を評価するため、Ringを用いて評価を行う。
173
174 .. raw:: html
175
176 <table>
177 <tr>
178 <td>
179
180 - Ring
181
182 - 通信パケットは一つ。
183 - 通信を行う経路が決まっている。
184 - 分散通信に余り影響を与えない。
185
186 - 環境
187
188 - クラスター、100台
189 - データサイズを1Kb〜1Mb
190 - Torqueを用いた
191
192 .. raw:: html
193
194 </td>
195 <td align="center">
196
197 .. image:: img/5.jpg
198 :align: center
199
200 .. raw:: html
201
202 </td>
203 </tr>
204 </table>
205
206
207 測定結果
208 ========================
209
210 .. raw:: html
211
212 <center>
213 <table>
214 <tr>
215 <td align="center">
216
217 .. image:: img/metaring1.jpg
218 :align: center
219
220 .. raw:: html
221
222 <p><font size="5">一台あたり 約40ms<br /><br />
223 open/closeの時間が影響</font></p>
224
225 </td>
226 <td align="center">
227
228 .. image:: img/metaring1000.jpg
229 :align: center
230
231 .. raw:: html
232
233 <p><font size="5">一台あたり 約0.6ms<br />
234 open/closeの影響を受けない<br />
235 デバッグ通信に耐えうる事が出来る</font></p>
236 </td>
237 </tr>
238 </table>
239 </center>
240
241
242 まとめ
243 =========================
244
245 - 通常通信に影響を及ぼさない為、スケーラビリティを保持する為
246 Metaな通信を行うMeta Protocol Engineを提案した。
247
248 - デバッグを行う都度にProtocol Engineを用意する事なく
249 Serverが増減しても対応出来る。
250
251 - Metaな通信速度からデバッグに使用するのに耐え得る性能を保持している。
252
253
254 今後の課題
255 =======================
256
257 - 同じクラスタ上で別のMeta Protocol Engineが動作している場合、相互に影響を及ぼさないか。
258
259 - 実際にMetaなタプルを通信した場合、通常の通信との影響はあるのか。
260
261
262 ==============
263