annotate paper/chapter5.tex @ 13:6277bb3a73e9

remove subsection
author Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
date Wed, 04 Feb 2015 16:34:28 +0900
parents 1519674c30ab
children 712576635154
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13
6277bb3a73e9 remove subsection
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 10
diff changeset
1 \chapter{GPGPU への対応}
10
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
2 Cerium の新たな演算資源として GPU の使用を可能にした。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
3 現在、GPU のような異なる種類のアーキテクチャを搭載した CPU 、つまりヘテロジニアスな CPU が増えている。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
4 特定の計算に特化した Task の生成やスケジューリングを行い、 GPGPU により高い並列度を出す研究は様々な分野で行われている。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
5 本研究では Cerium を特定の計算に限らず、 GPU を用いて汎用計算を行えるフレームワークに改良する。
13
6277bb3a73e9 remove subsection
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 10
diff changeset
6 \section{OpenCL による実装}
6277bb3a73e9 remove subsection
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 10
diff changeset
7 \subsection{ベンチマーク}
10
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
8 OpenCL を用いた GPU 対応を行った。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
9 Scheduler と CpuThreads に対応させる形で GpuScheduler と GpuThreads を実装した。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
10 GpuScheduler 内で OpenCL の API を用いて GPU の制御を行っている。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
11
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
12 受け取った TaskList からメモリバッファを作成し、
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
13 clEnqueueuWriteBuffer、clEnqueueTask、clEnqueueReadBuffer の順に CommandQueue に Enqueueしていく。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
14 Task の投入は CommandQueue を2つ用意しパイプライン的に実行を行う。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
15
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
16 Task の終了は、clWaitForEvent によって検出し、TaskManager 間の通信を担当する同期キューである mail を使って通知する。
1519674c30ab dragon and firefly spec
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
17
13
6277bb3a73e9 remove subsection
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents: 10
diff changeset
18 \section{CUDA による}
7
786db8c94c6e Bitonic sort example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 \subsection{ベンチマーク}
786db8c94c6e Bitonic sort example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20
786db8c94c6e Bitonic sort example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21
786db8c94c6e Bitonic sort example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 \section{データ並列}
786db8c94c6e Bitonic sort example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 \subsection{ベンチマーク}