annotate paper/conclusion.tex @ 45:fcf49a1241af

fix
author Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
date Tue, 04 Feb 2014 10:01:03 +0900
parents aa6de0f67a0a
children e32c9a53310c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34
345eacdf29e4 add apendix
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
1 \chapter{まとめと今後の課題} \label{ch:conclusion}
2
d8b94e828d79 add tex files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
d8b94e828d79 add tex files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 \section{まとめ}
34
345eacdf29e4 add apendix
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
4 % 並列環境で動くことを示せた
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
5 本研究では、関数型言語 Haskell を用いて並列データベースの実装をおこなった。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
6
45
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 43
diff changeset
7 Haskell は、型推論と型安全により信頼性の高いプログラムを書くことができる。
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
8 実装において、Haskellの表現力とコンパイル時に多くのエラーを捕まえるという特徴は、開発期間およびコード行数の短縮に繋がった。
34
345eacdf29e4 add apendix
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
9 また、型安全により実行時に型エラーによってプログラムが終了するといったことがない。
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
10
43
aa6de0f67a0a add files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 34
diff changeset
11 読み込みに関して 12 コアで実行した場合、1 コアで実行した場合と比較して、10.77 倍 という性能向上率が確認でき、マルチコアプロセッサの性能を引き出すことができた。
aa6de0f67a0a add files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 34
diff changeset
12 また、Web 掲示板サービスを開発し、 既存の Java の非破壊的木構造データベースを用いた掲示板実装との比較をおこない、読み込みで 1.87 倍、書き込みで 2.3 倍の性能が確認できた。
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
13
2
d8b94e828d79 add tex files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 \section{今後の課題}
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
15 非破壊的木構造データベース Jungle の今後の課題について述べる。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
16
45
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 43
diff changeset
17 \subsubsection{書き込み処理の性能向上率の上昇}
43
aa6de0f67a0a add files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 34
diff changeset
18 データベースへの書き込み処理において、12 スレッド時で 3.86 倍の性能向上しか達成できていない。
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
19 はじめに、プログラムの変更をせずに、GHC の IO マネージャーの改善によりどの程度並列度が向上するのかを調査する必要がある。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
20 GHC の IO マネージャーの影響度を計測した後、変更処理の改善方法に調査する。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
21 現在ソフトウェア・トランザクショナル・メモリを用いているが、他のスレッドセーフな参照型を用いて性能改善が行えないか確認する。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
22 Haskell では、様々なスレッドセーフな参照型が用意されている。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
23 ロックが制限的だが、高速なIORef、ロックの使えるMVarなどである。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
24
34
345eacdf29e4 add apendix
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
25 \subsubsection{分散データベースとしての実装}
43
aa6de0f67a0a add files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 34
diff changeset
26 現在、並列環境で実行できるが、今後は分散データベースとして実行できるようにしたい。
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
27 トポロジーの形成機能や、サーバ間でのデータアクセスの仕組みを実装する必要がある。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
28 サーバ間で木構造の変更を共有するには、木構造を何らかの情報に基づいて、マージする仕組みを導入する必要がある。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
29
34
345eacdf29e4 add apendix
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
30 \subsubsection{永続性の実装}
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
31 非破壊的木構造データベース Jungle は、オンメモリ上で動作するデータベースである。
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
32 並列性を損なわない形で、ディスクへの書き出しを実現したい。
43
aa6de0f67a0a add files
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 34
diff changeset
33 実装としては、書き出しを担当するスレッドを作成するといったことが考えられる。
22
Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
34