annotate presen/index.html @ 13:db3b8eaba7b0 default tip

add presen
author sugi
date Fri, 22 Feb 2013 16:18:39 +0900
parents b1f834cb90af
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12
b1f834cb90af add presen
sugi
parents:
diff changeset
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
b1f834cb90af add presen
sugi
parents:
diff changeset
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
b1f834cb90af add presen
sugi
parents:
diff changeset
3
b1f834cb90af add presen
sugi
parents:
diff changeset
4 <html xmlns="http://www.w3.org/1999/xhtml">
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
5 <head>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
6 <style type="text/css">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
7 tr.srctr {
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
8 font-size:28px;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
9 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
10 td.srctd {
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
11 height:17em;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
12 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
13 pre.srcbox {
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
14 height: 100%;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
15 overflow: scroll;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
16 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
17 .src{
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
18 overflow: scroll;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
19 width: 90%;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
20 height: 60%;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
21 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
22 .center {
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
23 margin-left: auto;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
24 margin-right: auto;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
25 text-align: center;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
26 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
27 .textcenter {
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
28 text-align: center;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
29 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
30 .taninaritop {
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
31 margin: auto;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
32 width: 95%;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
33 font-weight: bold;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
34 }
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
35 </style>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
36 <title>2013/ 2/ 21</title>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
37 <!-- metadata -->
12
b1f834cb90af add presen
sugi
parents:
diff changeset
38 <meta name="generator" content="S5" />
b1f834cb90af add presen
sugi
parents:
diff changeset
39 <meta name="version" content="S5 1.1" />
b1f834cb90af add presen
sugi
parents:
diff changeset
40 <meta name="presdate" content="20130221" />
b1f834cb90af add presen
sugi
parents:
diff changeset
41 <meta name="author" content="Yu SUGIMOTO" />
b1f834cb90af add presen
sugi
parents:
diff changeset
42 <meta name="company" content="University of the Ryukyu" />
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
43 <!-- meta temporary -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
44 <meta http-equiv="content-type" content="text/html; charset=utf-8" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
45 <meta http-equiv="Content-Script-Type" content="text/javascript" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
46 <meta http-equiv="Content-Style-Type" content="text/css" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
47 <!-- configuration parameters -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
48 <meta name="defaultView" content="slideshow" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
49 <meta name="controlVis" content="hidden" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
50 <!-- configuration extensions -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
51 <meta name="tranSitions" content="true" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
52 <meta name="fadeDuration" content="500" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
53 <meta name="incrDuration" content="250" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
54 <!-- configuration autoplay extension -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
55 <meta name="autoMatic" content="false" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
56 <Meta name="playLoop" content="true" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
57 <meta name="playDelay" content="10" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
58 <!-- configuration audio extension -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
59 <meta name="audioSupport" content="false" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
60 <meta name="audioVolume" content="100" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
61 <meta name="audioError" content="false" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
62 <!-- configuration audio debug -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
63 <meta name="audioDebug" content="false" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
64 <!-- style sheet links -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
65 <link rel="stylesheet" href="ui/default_utf/slides.css" type="text/css" media="projection" id="slideProj" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
66 <link rel="stylesheet" href="ui/default_utf/outline.css" type="text/css" media="screen" id="outlineStyle" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
67 <link rel="stylesheet" href="ui/default_utf/print.css" type="text/css" media="print" id="slidePrint" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
68 <link rel="stylesheet" href="ui/default_utf/opera.css" type="text/css" media="projection" id="operaFix" />
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
69 <!-- embedded styles -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
70 <style type="text/css" media="all">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
71 .imgcon {width: 100%; margin: 0 auto; padding: 0; text-align: center;}
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
72 #anim {width: 33%; height: 320px; position: relative;}
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
73 #anim img {position: absolute; top: 0px; left: 0px;}
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
74 </style>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
75 <!-- S5 JS -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
76 <script src="ui/default_utf/slides.js" type="text/javascript"></script>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
77 </head>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
78
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
79 <body>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
80 <div class="layout">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
81 <div id="controls"><!-- DO NOT EDIT --></div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
82 <div id="currentSlide"><!-- DO NOT EDIT --></div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
83 <div id="header"></div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
84 <div id="footer">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
85 <h1>琉球大学 卒業発表</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
86 <h2>並列信頼研</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
87 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
88 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
89
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
90 <div class="presentation">
12
b1f834cb90af add presen
sugi
parents:
diff changeset
91 <div class="slide">
b1f834cb90af add presen
sugi
parents:
diff changeset
92 <h1>分散ネットフレームワークAliceによる例題の作成</li>
b1f834cb90af add presen
sugi
parents:
diff changeset
93 <h3></h3>
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
94 <li>杉本 優 </li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
95 <li>指導教官 河野 真治</li>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
96 <h4><a href="http://ie.u-ryukyu.ac.jp/" rel="external">琉球大学 並列信頼研究室</a></h4>
b1f834cb90af add presen
sugi
parents:
diff changeset
97 <div class="handout"></div>
b1f834cb90af add presen
sugi
parents:
diff changeset
98 </div>
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
99 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
100
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
101 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
102 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
103 <h1>研究目的</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
104 <li>インターネット上のサービスは信頼性とスケーラビリティ両方が要求される</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
105 <li>信頼性とは定められた動作環境下で安定して機能を果たす</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
106 <li>スケーラビリティとはリソースの追加のみでサービスを維持する</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
107 <li>本研究室ではスケーラビリティと信頼性の両方を併せ持った分散ネットフレームワークAliceの開発を行っている</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
108 <li>必要なAPIが備わっているか、スケーラビリティがあるか調べる必要がある</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
109 <li><font color="#ff0000">本研究では、Aliceを使って分散アプリケーションを作成、スケーラビリティの実験を行った</font></li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
110 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
111
12
b1f834cb90af add presen
sugi
parents:
diff changeset
112
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
113 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
114 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
115 <h1>Alice</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
116 <h2>データをData Segmentで表現し、処理をCode Segmentで表現</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
117 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
118 <li>Code Segmentはタスクを細かく分割したもの</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
119 <br>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
120 <p class="center">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
121 <object type="image/svg+xml" data="obj/svg/dsandcs2.svg" viewbox="0 0 700 700" id="vgID"></object>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
122 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
123 <h2>Code Segmentに依存するData Segmentを記述する</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
124 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
125 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
126 </div>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
127
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
128
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
129 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
130 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
131 <h1>Data Segment API (1) put ,update</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
132 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
133 <li>Data Segmentをデータベース的に利用</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
134 <li>4つのAPIを使って操作を行う</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
135 <table border="1" cellpadding="5" cellspacing="0">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
136 <tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
137 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
138 <img src="obj/svg/put.png" width=600 height=400>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
139 <!-- <object type="image/svg+xml" data="obj/svg/put.svg" viewbox="50 50 300 300" id="put"> </object> -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
140 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
141 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
142 <img src="obj/svg/update.png" width=650 height=400>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
143 <!--<object type="image/svg+xml" data="obj/svg/update.svg" viewbox="50 50 300 300" id="update"> </object>-->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
144 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
145 </tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
146 </table>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
147 <li>putとupdateはデータを追加、または更新を行う</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
148 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
149 </div>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
150
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
151 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
152 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
153 <h1>Data Segment API (2) peek ,take</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
154 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
155 <li>peekとtakeはデータの取得、取得と削除を行う</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
156 <table border="1" cellpadding="5" cellspacing="0">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
157 <tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
158 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
159 <img src="pix/peek.png" width=500 height=400>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
160 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
161 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
162 <img src="pix/take.png" width=500 height=400>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
163
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
164 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
165 </tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
166 </table>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
167 <li>これら4つのAPIで分散アプリケーションが書けるのかどうかを調べる</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
168 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
169 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
170
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
171
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
172
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
173 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
174 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
175 <h1>水族館ゲーム</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
176 <h2>目的</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
177 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
178 <li>AliceにAPIが揃っているか、スケーラビリティを有しているか調べる</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
179 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
180 <h2>内容</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
181 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
182 <li>魚の情報をゲームに参加するClient全体で共有し、複数のディスプレイに異なる視点で表示される</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
183 <p class="center">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
184 <img src="pix/for_Fx.png" width=600 height=300>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
185 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
186 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
187 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
188
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
189 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
190 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
191 <h1>データ伝搬のしくみ</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
192 <p class="center">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
193 <img src="pix/Alice.png" width=500 height=600>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
194 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
195 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
196 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
197 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
198 <h1>実験</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
199 <h2>実験概要</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
200 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
201 <li>仮想クラスタサーバーをツリー状に構成する</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
202 <li>トップノードからData Segmentを送信して、トップノードに戻ってくるまでの時間を測定</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
203 <p class="center">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
204 <object type="image/svg+xml" data="obj/svg/experience.svg" viewbox="50 50 900 900" id="vgID"> </object>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
205 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
206 構成するツリーを様々な形に変えて測定を行った。
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
207 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
208 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
209 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
210 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
211 <h1>実験</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
212 <h2>実験環境</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
213 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
214 <h2>VMwareとKVMの2つの環境を用意</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
215 <li>共にTORQUE Resource Managerを用いてジョブスケジュール</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
216 <p>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
217 VMware
b1f834cb90af add presen
sugi
parents:
diff changeset
218 <li>ブレードサーバー8台(CPU Intel(R) Xeon(R) X5650 @2.64 仮想24コア)</li>
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
219 <li>仮想クラスタサーバー44台(仮想4コア)</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
220 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
221 <p>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
222 KVM
b1f834cb90af add presen
sugi
parents:
diff changeset
223 <li>ブレードサーバー3台(CPU Intel(R) Xeon(R) X5650 @2.64 仮想24コア)</li>
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
224 <li>仮想クラスタサーバー16台(仮想4コア)</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
225 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
226
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
227 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
228 </div>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
229
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
230 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
231 <h1>4分木の図の一部</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
232 <img src="pix/child4.png" width=1500 height=500>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
233 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
234
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
235 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
236 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
237 <h1>実行結果(1) - 44 台で構成 (VMware)</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
238 <table border="1" cellpadding="5" cellspacing="0">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
239 <tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
240 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
241 <img src="pix/cs-result.png" width=800 height=600>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
242 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
243 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
244 <object type="image/svg+xml" data="obj/svg/bar.svg" viewbox="50 50 300 300" id="vgID"> </object>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
245 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
246 </tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
247 </table>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
248
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
249 </div>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
250
b1f834cb90af add presen
sugi
parents:
diff changeset
251
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
252
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
253 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
254 <h1>実行結果(2) - 16 台で構成 (VMawre,KVM)</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
255 16台でトポロジーを構成する際にはすべてをトップノードに接続をかけたほうが効果的である
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
256 <p class="center">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
257 <img src="pix/compare.png" width=800 height=500>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
258 </p>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
259
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
260 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
261
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
262 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
263 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
264 <h1>考察</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
265 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
266 <li>現状では階層を1段増やす(間に1台追加)ごとに2ms程度遅くなる</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
267 <li>1台に接続させる数が多くても、階層を増やし過ぎても逆効果</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
268 <li>44台では階層を3段、1つあたりに接続させる最大のノードは4が効果的</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
269 <table border="1" cellpadding="5" cellspacing="0">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
270 <tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
271 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
272 <img src="pix/child3-2.png" width=600 height=400>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
273 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
274 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
275 <img src="pix/child4-2.png" width=600 height=400>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
276 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
277 </tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
278 </table>>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
279 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
280 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
281
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
282 <!--PAGE-->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
283 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
284 <h1>APIの評価</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
285 <h2>setKeyのシンタックス的な問題</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
286 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
287 <li>setKey()を呼ぶとData Segmentの取得を行う。必要なData Segmentが揃った時点でCode Segmentが実行</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
288 <li>コンストラクタ内でsetKeyを行なっているが、コンストラクタとsetKeyをする場所を分ける必要がある</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
289 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
290 <pre class="srcbox">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
291 public class CheckLocalIndex extends CodeSegment {
12
b1f834cb90af add presen
sugi
parents:
diff changeset
292
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
293 private Receiver data = ids.create(CommandType.PEEK);
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
294 private Object obj;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
295
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
296 public CheckLocalIndex(String key, Object obj){
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
297 this.data.setKey("local", key);
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
298 this.obj = obj;
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
299 }
12
b1f834cb90af add presen
sugi
parents:
diff changeset
300
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
301 </pre>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
302 </div>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
303
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
304 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
305 <h1>まとめ</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
306 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
307 <li>現状のAliceで分散アプリケーションを作成するためのAPIが揃っていることを確認する事ができた</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
308 <li>44台の場合、Aliceによってツリー状のネットワークを構築することでスケーラビリティを確認する事ができた</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
309 <li>しかし、インターネット上のサービスの場合、参加するユーザの数は膨大であるので、ツリートポロジーに参加する台数を増やしたり、共有する魚のData Segmentの数を増やして検証する必要がある。</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
310 <li>また、16台ではツリー状に構成するよりも1台に集中させたほうがよかった。</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
311 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
312 </div>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
313
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
314 <!-- PAGE -->
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
315 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
316 <h1>KVMが遅い理由</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
317 <table border="1" cellpadding="5" cellspacing="0">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
318 <tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
319 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
320 <img src="pix/question.png" width=500 height=500>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
321 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
322 <td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
323 <ol>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
324 <font size="5">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
325 <li>ゲストがI/O命令を発行する</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
326 <li>ホストカーネルが命令をトラップし、仮想マシンのユーザー空間に遷移する</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
327 <li>仮想マシンのユーザー空間でゲストに代わってI/Oを初期化する</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
328 <li>仮想マシンのユーザー空間からカーネルに制御が戻る</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
329 <li>カーネルがゲストコードを再開する</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
330 </font>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
331 </ol>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
332 </td>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
333 </tr>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
334 </table>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
335
13
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
336 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
337
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
338
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
339 <div class="slide">
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
340 <h1>原因</h1>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
341 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
342 <li>標準のI/Oの性能が良くない</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
343 <li>KVMのゲスト環境では、CPUのキャッシュメモリーにヒットしなかった場合、qemu-kvm(ホスト環境上で動くユーザープロセス)のメモリー空間に割り当てられたメインメモリーにアクセスすることになるが、アクセス処理が複雑になるため、オーバーヘッドが大きい</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
344 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
345 <h2>改善方法</h2>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
346 <ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
347 <li>I/Oを司るデバイスドライバを準仮想化で動作させることで性能を向上させることができる</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
348 <li>Virtio-KVMを使用することで1.5倍程度性能を向上させることができるもよう</li>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
349
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
350 </ul>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
351 </div>
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
352
db3b8eaba7b0 add presen
sugi
parents: 12
diff changeset
353 </body>
12
b1f834cb90af add presen
sugi
parents:
diff changeset
354 </html>