annotate paper/chapter5.tex @ 75:eaa8a657efe2

fix
author Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
date Wed, 26 Feb 2014 04:15:25 +0900
parents 1ff5dde6decf
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11
5e67750b1c4f write chapter label
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
1 \chapter{ベンチマーク}
0
9bf2694ed231 add some files
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 \label{chap:poordirection}
9bf2694ed231 add some files
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
9bf2694ed231 add some files
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4
11
5e67750b1c4f write chapter label
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
5 \section{実験環境}
0
9bf2694ed231 add some files
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
7 \begin{itemize}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
8 \item Mac OS X 10.9.1
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
9 \item 2*2.66 GHz 6-Core Intel Xeon
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
10 \item Memory 16GB 1333MHz DDR3
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
11 \item HHD 1TB
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
12 \item file size 10 GB
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
13 \item CPU num 12
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
14 \item Boyer-Moore String Search で pattern がいくつ含まれているか検索
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
15 \item ファイルを読み込みから結果が返ってくるまでを測定
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
16 \end{itemize}
0
9bf2694ed231 add some files
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17
11
5e67750b1c4f write chapter label
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
18 \section{結果}
38
23ecea3327f8 write OUTLINE
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
19
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
20 以下の表に実行結果を示す。
38
23ecea3327f8 write OUTLINE
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
21
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
22 \begin{tiny}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
23 \begin{table}[ht]
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
24 \begin{center}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
25 \label{table:result}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
26 \small
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
27 \begin{tabular}[t]{c|r}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
28 \hline
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
29 読み込み方法 & 平均実行速度(s)\\
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
30 \hline
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
31 mmap & 154.6 \\
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
32 \hline
75
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
33 一括 Read & 114.9 \\
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
34 \hline
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
35 Blocked Read \& SPE\_ANY & 106.0 \\
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
36 \hline
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
37 Blocked Read \& IO\_0 & 99.2 \\
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
38 \hline
75
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
39 mmap (CPU num:2) & 106.2 \\
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
40 \hline
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
41 \end{tabular}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
42 \caption{実行結果}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
43 \end{center}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
44 \end{table}
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
45 \end{tiny}
38
23ecea3327f8 write OUTLINE
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
46
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
47 実験結果より、mmap より Blocked Read \& IO\_0 の実行速度が 36 \% 改善された。
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
48 また、Blocked Read の CPU Type も SPE\_ANY から IO\_0 に変更することによって更に 4 \% の改善が見られた。
47
6cb2ab3726bf chapter3 ok
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 38
diff changeset
49
6cb2ab3726bf chapter3 ok
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 38
diff changeset
50 \section{考察}
65
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
51 mmap より Blocked Read で実装したほうが速くなったが、これは mmap の読み込み方法が問題であると考える。
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
52
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
53 I/O を含む例題の場合、シングルコアでの逐次実行であれば、mmap や pread で実装しても、Task は 読み込みを行って文字列検索を行うというシンプルな動作になる。
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
54 しかし、マルチコアの並列実行であれば、mmap で実装してしまうと、Task それぞれで読み込みを行ってしまうので競合が発生してしまう。
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
55
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents: 47
diff changeset
56 読み込みの競合が起こらないように Blocked Read にて読み込み部分と文字列検索部分を分けた結果、こちらのほうが速度が向上した。