annotate prepaper/Introduction.tex @ 9:346b04bec592 default tip

commit
author Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
date Mon, 16 Feb 2015 14:47:18 +0900
parents 930d0024bc6f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 \section{研究目的}
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 PS3 および Linux、Mac OS X 上で動く並列プログラミングフレームワーク、Cerium Task Manager\cite{gongo:2008a}の開発・完了を行なっている。
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 Cell だけでなく、GPU のような異なるアーキテクチャを搭載した CPU、つまりヘテロジニアスな CPU が増えてきた。
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 GPU の普及と高性能化にともない、GPU の演算資源を画像処理以外の目的にも利用する GPGPU(GPU による汎目的計算)が注目されている\cite{FFTonGPU}。
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 特定の計算に特化した Task の生成やスケジューリングを行い、高い並列度を出すという研究は様々な分野で行われている。
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 特定の計算に限らず、GPU を用いて汎用計算できるフレームワークを Cerium Task Manager は目指している。
7
930d0024bc6f add presen
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
9
930d0024bc6f add presen
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
10 GPU のみで計算を行った場合、Task によっては並列度が出ない場合がある。
930d0024bc6f add presen
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
11 GPU はデータ並列による実行が推奨されている。
930d0024bc6f add presen
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
12 データ並列とは多次元のデータ構造に対して、それを分割して各要素に対して処理を行うことを指す
930d0024bc6f add presen
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
13 OpenCL および CUDA にはそのための API が存在する。
5
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 また GPU は CPU とメモリ空間が異なるため、データにアクセスするためにはメモリ空間ごとコピーする必要がある。
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 このデータ転送部分が大きなオーバーヘッドになる。
a1d0cc36cc7c add prepaper
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 この問題を解決するために OpenCL および CUDA を用いて、自動でデータ転送をオーバーラップし、パイプライン実行を行うよう Cerium を改良した。