Mercurial > hg > Papers > 2018 > parusu-master
changeset 49:8da33c7967ee
Fix
author | Tatsuki IHA <innparusu@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 06 Feb 2018 06:52:42 +0900 |
parents | 87c3ca104689 |
children | d916e1313305 |
files | paper/evaluation.tex paper/master_paper.pdf |
diffstat | 2 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/paper/evaluation.tex Tue Feb 06 06:29:31 2018 +0900 +++ b/paper/evaluation.tex Tue Feb 06 06:52:42 2018 +0900 @@ -39,17 +39,16 @@ \section{Twice} Twice は与えられた整数配列のすべての要素を2倍にする例題である。 -Twice のTask生成の方針として、CPU の場合は配列ある程度の範囲に分割してTaskを生成する。 +Twice の Task は Gears OS のデータ並列で実行される。 +CPU の場合は配列ある程度の範囲に分割してTaskを生成する。 これは要素毎に Task を生成するとその分の Context を生成するために時間を取ってしまうからである。 -GPU での実行は データ並列を使用して行う。 -1次元 - Twice は並列実行の依存関係もなく、データ並列での実行に適した課題である。 そのため、 通信時間を考慮しなければ CPU よりコア数が多い GPU が有利となる。 要素数$2^{27}$ のデータに対する Twice の実行結果を \tabref{twice}、\figref{twice}に示す。 CPU 実行の際は $2^{27}$ のデータを 64個のTask に分割して並列実行を行っている。 +GPU では1次元の block 数を $2^{15}$、 block 内の thread 数を $2^{10}$ で kernel の実行を行った。 ここでの ``GPU`` は CPU、GPU 間のデータの通信時間も含めた時間、 ``GPU(kernel only)`` は kernel のみの実行時間である。 \begin{table}[htbp] @@ -83,7 +82,7 @@ GPU での実行は kernel のみの実行時間は 32CPU に比べて 約 7.2 倍の実行向上が見られた。 しかし、通信時間を含めると 16CPU より遅い結果となってしまった。 -CPU、GPU の通信時間かボトルネックになっている事がわかる。 +CPU、GPU の通信時間かオーバーヘッドになっている事がわかる。 \section{BitonicSort} BitonicSort は並列処理向けのソートアルゴリズムである。 @@ -105,6 +104,7 @@ 要素数$2^{24}$ のデータに対する BitonicSort の実行結果を \tabref{bitonicSort}、\figref{bitonicSort}に示す。 こちらも Twice と同じくCPU 実行の際は $2^{24}$ のデータを 64個のTask に分割して並列実行を行っている。 つまり生成される Task は 64 * ステージ数 となる。 +GPU では1次元の block 数を $2^{14}$、 block 内の thread 数を $2^{10}$ で kernel の実行を行った。 \begin{table}[htbp] \begin{center}