Mercurial > hg > Members > kokubo > 2013-mid-thesis
comparison paper/fft_benchmark.tex @ 2:b7c8a956c10b
write benchmark and conclusion
author | Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 06 Nov 2013 01:16:42 +0900 |
parents | 9e88a388ec83 |
children | 208ca954df56 |
comparison
equal
deleted
inserted
replaced
1:f4b3de446113 | 2:b7c8a956c10b |
---|---|
1 \section{Benchmark}\label{fft_benchmark} | 1 \section{Benchmark}\label{fft_benchmark} |
2 続いて、フーリエ変換と周波数フィルタによる画像処理を行う例題を用いてベンチマークを行った。 | 2 続いて,フーリエ変換と周波数フィルタによる画像処理を行う例題を用いて benchmark を行った。 |
3 512*512の画像を High Pass Filter で変換する例題である。 | 3 512*512 の画像を High Pass Filter で変換する例題である。 |
4 | 4 |
5 実験環境 | 5 実験環境 |
6 \begin{itemize} | 6 \begin{itemize} |
7 \item OS : MacOS 10.9 | 7 \item OS : MacOS 10.9 |
8 \item CPU : 2*2.66GHz 6-CoreIntel Xeon | 8 \item CPU : 2*2.66GHz 6-CoreIntel Xeon |
9 \item Memory : 16GB | 9 \item Memory : 16GB |
10 \item Compiler : Apple clang version 4.1 (based on LLVM 3.1svn) | 10 \item Compiler : Apple clang version 4.1 (based on LLVM 3.1svn) |
11 \item GPU : AMD ATI Radeon HD 5870 1024MB | 11 \item GPU : AMD ATI Radeon HD 5870 1024MB |
12 \end{itemize} | 12 \end{itemize} |
13 | 13 |
14 \subsection{Run Time} | |
15 \begin{tiny} | 14 \begin{tiny} |
16 \begin{table}[h] | 15 \begin{table}[h] |
17 \begin{center} | 16 \begin{center} |
18 \caption{Run Time} | 17 \caption{Run Time} |
19 \label{table:fft_runtime} | 18 \label{table:fft_runtime} |
28 \hline | 27 \hline |
29 4 CPU&178 ms \\ | 28 4 CPU&178 ms \\ |
30 \hline | 29 \hline |
31 8 CPU&117 ms \\ | 30 8 CPU&117 ms \\ |
32 \hline | 31 \hline |
33 GPU&94 ms \\ | |
34 \hline | |
35 \end{tabular} | 32 \end{tabular} |
36 \end{center} | 33 \end{center} |
37 \end{table} | 34 \end{table} |
38 \end{tiny} | 35 \end{tiny} |
39 | 36 |
40 表\ref{table:fft_runtime}は CPU,GPU 上,及び CPU + GPU 上で同時実行して比較を行った。 | 37 表\ref{table:fft_runtime}は使用する CPU のコア数を変更し比較を行った。 |
41 1 CPU を利用した場合と比較して,2 CPU では約 1.7 倍,GPU では約 4.8 倍の速度向上が見られる。しかしながら,8 CPU を利用した場合,4 CPU を利用した場合と比較して速度はあがっているが速度上昇率は約 1.5 倍に落ちている。これはアムダールの法則から,並列化率が低いために速度向上が頭打ちになっていると考えられる。 | 38 1 CPU を利用した場合と比較して,2 CPU では約 1.7 倍,GPU では約 4.8 倍の速度向上が見られる。 |
42 | 39 しかしながら,8 CPU を利用した場合,4 CPU を利用した場合と比較して速度はあがっているが速度上昇率は約 1.5 倍に落ちている。 |
43 \subsection{Busy Time} | 40 これはアムダールの法則から,並列化率が低いために速度向上が頭打ちになっていると考えられる。 |
44 次に,RDTSC 命令を用い Busy Time の測定を行った。 | 41 並列化率が低いのは,iterate で登録された Task が終了されるまで次の Task を実行することが出来ず,表\ref{table:data_parallel_index}のような index 割り当てだと Task の終了時間にばらつきが出て CPU の Utilization が低くなってることが考えられる。 |
45 | |
46 \begin{tiny} | |
47 \begin{table}[h] | |
48 \begin{center} | |
49 \caption{Busy Time} | |
50 \label{table:fft_busytime} | |
51 \small | |
52 \begin{tabular}[t]{c||r|r} | |
53 \hline | |
54 &Time Stamp&Busy Time \\ | |
55 \hline | |
56 1 CPU&1202282702&451 ms \\ | |
57 \hline | |
58 2 CPU&687813186&258 ms \\ | |
59 \hline | |
60 4 CPU&421398464&158 ms \\ | |
61 \hline | |
62 8 CPU&265192153&99 ms \\ | |
63 \hline | |
64 GPU&3532807&1.3 ms \\ | |
65 \hline | |
66 \end{tabular} | |
67 \end{center} | |
68 \end{table} | |
69 \end{tiny} | |
70 | |
71 CPU を利用した場合,表\ref{table:fft_runtime}とほぼ同様の結果が得られた。 | |
72 しかしながら,GPU を利用した場合,Busy Time が 1.3 ms なのに対し,表\ref{table:fft_runtime}の Run Time は 94 ms となっている。この結果から,GPU 上で実行する場合,データの転送がネックになっていることがわかる。 |