Mercurial > hg > Papers > 2014 > kkb-sigos
diff introduction.tex @ 2:bff486ef0e8c
commit
author | Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 21 Apr 2014 03:30:37 +0900 |
parents | a0fad656a7ea |
children | 2921110c23aa |
line wrap: on
line diff
--- a/introduction.tex Fri Apr 18 20:55:25 2014 +0900 +++ b/introduction.tex Mon Apr 21 03:30:37 2014 +0900 @@ -1,12 +1,16 @@ \section{はじめに} GPU の普及と高性能化にともない、GPU の演算資源を画像処理以外の目的にも利用する GPGPU(GPU による汎目的計算)が注目されている。 -しかし、GPU の利用には様々な制約があり、十分な性能を引き出すには GPU のアーキテクチャに適したプログラミングを行う必要がある。 -また、マルチコアプロセッサ上で実行する場合と同様に効率の良い並列プログラムを書くことは難しい。 -そこで、当研究室で開発・改良が行われている並列プログラミングフレームワーク Cerium を GPGPU に対応させた。 +GPU 以外にも Cell, SpursEngine, Xeon Phi など様々なプロセッサが存在する。 +GPU や Cell はメモリ空間が異なるたデータ転送がを効率化しなければ性能向上に繋がらない。 +また、それぞれのプロセッサを利用するにはそれぞれ異なる API を利用する必要があり、それらの対応に多くの時間を取られてしまいプログラムの性能改善に集中することができない。 +様々なプロセッサを統合して扱えるフレームワークとして StarPU などがある。 +StarPU はタスクベースの非同期フレームワークである。 +StarPU にはパイプラインでの実行機構は入ってなく、パイプライン処理を行いたい場合は自分で実装するしかない。 +しかし、パイプライン処理を書くことは非常に煩雑で難しい。 + +そこで、当研究室で開発・改良が行われている並列プログラミングフレームワーク Cerium を OpenCL, CUDA を用い GPGPU に対応させた。 Cerium は PS3 および Linux, MacOS X 上で動作する。 -MacOS X 上で GPGPU を行う場合、OpenCL または CUDA を用いる方法が考えられる。 -今回、Cerium 上に OpenCL, CUDA を用いた GPU 実行機構を実装した。 本論文では、まず OpenCL, CUDA について説明する。 その後、既存の Cerium の実装および新たに実装した GPU 実行の機構について説明する。