Mercurial > hg > Papers > 2016 > nozomi-sigos
changeset 15:696a908208c8
add compress part
author | Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 24 May 2015 18:40:04 +0900 |
parents | 99e5104997b7 |
children | 1ac38e2b7572 |
files | presen/sigOS/sample.html presen/sigOS/sample.markdown |
diffstat | 2 files changed, 55 insertions(+), 26 deletions(-) [+] |
line wrap: on
line diff
--- a/presen/sigOS/sample.html Sun May 24 17:56:24 2015 +0900 +++ b/presen/sigOS/sample.html Sun May 24 18:40:04 2015 +0900 @@ -35,7 +35,7 @@ <!-- === begin markdown block === generated by markdown/1.2.0 on Ruby 2.1.0 (2013-12-25) [x86_64-darwin13.0] - on 2015-05-24 17:55:49 +0900 with Markdown engine kramdown (1.5.0) + on 2015-05-24 18:39:51 +0900 with Markdown engine kramdown (1.5.0) using options {} --> @@ -94,7 +94,7 @@ <ul> <li>複数の関係のない要素を1つのデータオブジェクトで表現した場合、全ての操作でlockが必要になり、スケラビリティーを低下させる。</li> - <li>Alice はデータを細かく分割して記述する。その分割されたデータを <em>Data Segment(DS)</em> と呼ぶ。</li> + <li>Alice はデータを細かく分割して記述する。その分割されたデータを <strong>Data Segment(DS)</strong> と呼ぶ。</li> </ul> @@ -204,7 +204,7 @@ <!-- _S9SLIDE_ --> <ul> - <li>Alice上で実行されるタスクの単位を Code Segment(CS) と呼ぶ。</li> + <li>Alice上で実行されるタスクの単位を <strong>Code Segment(CS)</strong> と呼ぶ。</li> <li>複数のDSが入力され、その結果をDSとして出力するfunctionと捉えられる。</li> <li>CS をユーザーが記述する際には CS を継承して記述することにより CS で使用する API を利用する事ができる。</li> </ul> @@ -304,9 +304,7 @@ <!-- _S9SLIDE_ --> <ul> - <li>研究室では授業向け画面共有システム TreeVNC の開発を行っている。</li> - <li>授業で VNC を使う場合、1つ のコンピュータに多人数が同時につながるため、性能が大幅に落ちる</li> - <li>TreeVNCではノード同士を接続させ、木構造を構成することで負荷分散を行う + <li>研究室では授業向け画面共有システムTreeVNCではノード同士を接続させ、木構造を構成することで負荷分散を行う <img src="./images/treeVNC.svg" alt="opt" /></li> </ul> @@ -323,10 +321,10 @@ <!-- _S9SLIDE_ --> <ul> - <li>Alice が実用的なアプリケーションを記述する能力をもつことを確認するために、TreeVNC を Alice を用いて実装した AliceVNC の作成を行った。</li> + <li>Alice が実用的なアプリケーションを記述する能力をもつことを確認するため、TreeVNC を Alice を用いて実装した AliceVNC の作成を行った。</li> <li>AliceVNCの実装で必要となった以下の機能をMeta Computation として実装した。<br /> <ul> - <li>flip機能 … Input DS を Output DS として転送する</li> + <li>転送機能 … Input DS を Output DS として転送する</li> <li>圧縮機能 … DS Manager の指定によってDSの表現を切り替える</li> </ul> </li> @@ -340,10 +338,15 @@ <div class="slide" id="17"><div> <section> <header> - <h1 id="flip">flip機能</h1> + <h1 id="section-3">転送機能</h1> </header> <!-- _S9SLIDE_ --> +<ul> + <li>通常、Input DSに変更を加えOutput DSとして出力する場合DSのコピーが行われる。</li> + <li>AliceVNCのようにInput DS をそのまま子ノードに Output DS として出力する場合、コピーを行なうのは無駄。</li> + <li>Input DSをコピーせずそのままOutput DSに渡すMeta Computationとして転送機能を実装した。</li> +</ul> @@ -353,7 +356,7 @@ <div class="slide" id="18"><div> <section> <header> - <h1 id="section-3">圧縮機能</h1> + <h1 id="section-4">圧縮機能</h1> </header> <!-- _S9SLIDE_ --> @@ -475,12 +478,14 @@ <div class="slide" id="24"><div> <section> <header> - <h1 id="section-4">圧縮機能 - 通信プロトコルの変更</h1> + <h1 id="section-5">圧縮機能 - 通信プロトコルの変更</h1> </header> <!-- _S9SLIDE_ --> -<p>Remote から put されたデータは必ずシリアライズ化されており byteArray で表現される。 -データの 表現に圧縮した byteArray を追加したため、Remote から put された byteArray が圧縮されているのかそ うでないのかを判断する必要がある。</p> +<ul> + <li>Remote から put されたデータは必ずシリアライズ化されており byteArray で表現される。</li> + <li>圧縮した byteArray の追加により、Remote から put された byteArray が圧縮されているのか判断する必要がある。</li> +</ul> @@ -490,11 +495,14 @@ <div class="slide" id="25"><div> <section> <header> - <h1 id="section-5">圧縮機能の評価</h1> + <h1 id="section-6">圧縮機能 - 通信プロトコルの変更</h1> </header> <!-- _S9SLIDE_ --> -<p>RingRelayTest</p> +<ul> + <li>Alice の通信におけるヘッダにあたる CommandMessage.classに <strong>シリアライズ状態表すフラグ</strong>と、<strong>圧縮状態を表すフラク</strong> を追加</li> + <li>これにより put された DSM はフラグに応じた適切な形式で格納できる。</li> +</ul> @@ -504,7 +512,22 @@ <div class="slide" id="26"><div> <section> <header> - <h1 id="section-6">まとめ</h1> + <h1 id="section-7">圧縮機能の評価</h1> + </header> + <!-- _S9SLIDE_ --> + +<p>RingRelayTest +<img src="./images/topologyring.svg" alt="opt" /></p> + + + + </section> +</div></div> + +<div class="slide" id="27"><div> + <section> + <header> + <h1 id="section-8">まとめ</h1> </header> <!-- _S9SLIDE_ -->
--- a/presen/sigOS/sample.markdown Sun May 24 17:56:24 2015 +0900 +++ b/presen/sigOS/sample.markdown Sun May 24 18:40:04 2015 +0900 @@ -16,7 +16,7 @@ # Aliceの概要(1) - Data Segment * 複数の関係のない要素を1つのデータオブジェクトで表現した場合、全ての操作でlockが必要になり、スケラビリティーを低下させる。 -* Alice はデータを細かく分割して記述する。その分割されたデータを *Data Segment(DS)* と呼ぶ。 +* Alice はデータを細かく分割して記述する。その分割されたデータを **Data Segment(DS)** と呼ぶ。 # Aliceの概要(2) - Data Segment Manager * DS は queue に保存される。queue には対 になる key し、 key を指定して DS の保存、取得を行う。 @@ -57,7 +57,7 @@ * RemoteDSM に put された場合は通信時に byteArray に変換されたバイナリオブジェクトが enQueue される。 # Aliceの概要(5) - Code Segment -* Alice上で実行されるタスクの単位を Code Segment(CS) と呼ぶ。 +* Alice上で実行されるタスクの単位を **Code Segment(CS)** と呼ぶ。 * 複数のDSが入力され、その結果をDSとして出力するfunctionと捉えられる。 * CS をユーザーが記述する際には CS を継承して記述することにより CS で使用する API を利用する事ができる。 @@ -88,18 +88,19 @@ * Meta Computation も CS と DS により表現されており、それぞれMeta CSとMeta DSと呼ぶ。 # AliceVNC -* 研究室では授業向け画面共有システム TreeVNC の開発を行っている。 -* 授業で VNC を使う場合、1つ のコンピュータに多人数が同時につながるため、性能が大幅に落ちる -* TreeVNCではノード同士を接続させ、木構造を構成することで負荷分散を行う +* 研究室では授業向け画面共有システムTreeVNCではノード同士を接続させ、木構造を構成することで負荷分散を行う ![opt](./images/treeVNC.svg) # Alice の新機能 -* Alice が実用的なアプリケーションを記述する能力をもつことを確認するために、TreeVNC を Alice を用いて実装した AliceVNC の作成を行った。 +* Alice が実用的なアプリケーションを記述する能力をもつことを確認するため、TreeVNC を Alice を用いて実装した AliceVNC の作成を行った。 * AliceVNCの実装で必要となった以下の機能をMeta Computation として実装した。 - * flip機能 … Input DS を Output DS として転送する + * 転送機能 … Input DS を Output DS として転送する * 圧縮機能 … DS Manager の指定によってDSの表現を切り替える -# flip機能 +# 転送機能 +* 通常、Input DSに変更を加えOutput DSとして出力する場合DSのコピーが行われる。 +* AliceVNCのようにInput DS をそのまま子ノードに Output DS として出力する場合、コピーを行なうのは無駄。 +* Input DSをコピーせずそのままOutput DSに渡すMeta Computationとして転送機能を実装した。 # 圧縮機能 * AliceVNCは、ノードは受け取った画面データを描画すると同時に、子ノードの Remote DSM に送信する。 @@ -151,11 +152,16 @@ * take(String **"compressed"** + managerKey, String key) # 圧縮機能 - 通信プロトコルの変更 -Remote から put されたデータは必ずシリアライズ化されており byteArray で表現される。 -データの 表現に圧縮した byteArray を追加したため、Remote から put された byteArray が圧縮されているのかそ うでないのかを判断する必要がある。 +* Remote から put されたデータは必ずシリアライズ化されており byteArray で表現される。 +* 圧縮した byteArray の追加により、Remote から put された byteArray が圧縮されているのか判断する必要がある。 + +# 圧縮機能 - 通信プロトコルの変更 +* Alice の通信におけるヘッダにあたる CommandMessage.classに **シリアライズ状態表すフラグ**と、**圧縮状態を表すフラク** を追加 +* これにより put された DSM はフラグに応じた適切な形式で格納できる。 # 圧縮機能の評価 RingRelayTest +![opt](./images/topologyring.svg) # まとめ * Alice が実用的なアプリケーションを記述するための Meta Computation として、データに多態性を持たせ、指定するDSMによってデータ表 現を変える機能を実装した。