annotate paper/abstract.tex @ 0:fd9154e03f46

thesis
author e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
date Sat, 13 Feb 2010 21:38:25 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
1 \begin{abstract}
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
2
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
3 我々は、家庭用ゲーム機で実行するオープンな開発フレームワークに関する
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
4 研究を行ってきた。家庭用ゲーム機の多くは特殊なアーキテクチャであり、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
5 その性能を生かすためにはアーキテクチャに直結したプログラミングが求められる。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
6 しかし、そのようなプログラミングスタイルは、学生実験においては困難なもので、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
7 経験的にアーキテクチャの理解に実験の時間の約 2/3 を費やしてしまう。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
8 また、近年では CPU の性能を複数の CPU コア (Many Core Architecture) を
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
9 導入することによって向上させるようになってきており、2006 年に発売された
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
10 家庭用ゲーム機 PlayStation 3 でも、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
11 1つの制御系プロセッサ Power Processor Element (PPE) と、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
12 8つのデータ処理演算プロセッサ Synergistic Processor Element (SPE) から
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
13 構成される Cell アーキテクチャを持つ。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
14 このような要素も、並列プログラミング経験の浅い学生にとって
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
15 開発を困難なものとしている要因となっている。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
16
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
17 そこで我々は、Many Core Architecture を用いた並列プログラムの開発をサポートする
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
18 フレームワークとして Fine Grain Task Manager を設計し、それを用いて
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
19 PlayStation 3 上でゲームプログラミングが行える Cerium を提案する。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
20
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
21 現在、PlayStation 3 の GPU にアクセスする API は公開されていない。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
22 代わりに、フレームバッファデバイスである ps3fb を使用することはできる。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
23 この点に着目し、先行研究 \cite{akira} では、始めに OSMesa \cite{osmesa} という
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
24 フレームバッファエンジン用のレンダリングエンジンを用いて開発を行っている。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
25 従来の OSMesa では PPE のみを使用する Single Core Program であるため、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
26 立方体を回転させるというシンプルなテストプログラムでも、約 18 FPS しか
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
27 得ることが出来なかった。そこで先行研究では、OSMesa の一部の機能を
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
28 複数の SPE に演算させ、高速化を図っている。結果として 約 43 FPS という結果が
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
29 得られたものの、OSMesa の元々の実装と合わせてソースコードの複雑化を招き、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
30 以降のメンテナンスや機能の追加、改良が困難なものとなった。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
31
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
32 我々が提案した Cerium は、独自に Rendering Engine を持つ
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
33 ゲーム開発用フレームワークである。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
34 Cerium は Rendering Engine の他に、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
35 ゲームの中の一つの場面(シーン)を構成するオブジェクトやその振る舞い、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
36 ゲームのルールから成る SceneGraph と、
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
37 それらの動きやレンダリングの処理を動的に SPE に割り振るカーネルである
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
38 Fine Grain Task Manager で構成されている。
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
39
e065725@kinjyo.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
40 \end{abstract}