Mercurial > hg > Papers > 2008 > gongo-sigos
view introduction.tex @ 19:d43fc19aed85 default tip
update tags
author | convert-repo |
---|---|
date | Mon, 10 Nov 2008 04:59:37 +0000 |
parents | 6c558cd2ac8b |
children |
line wrap: on
line source
\section{研究の目的} %% % これは研究の目的としては「近すぎる」 %% % 最終目標は「レンダリングエンジンを作る」ではなく %% % 「OSを作る」だから。(でいいのかな %% %%PlayStation 3 (以下 PS3) では、搭載された Linux を用いて、 %%PS3 上で動くゲーム開発することができる。 %%しかし、現在 GPU (Graphics Processing Unit) の API は %%一般には公開されていないため、GPU を使った描画はできない。 %%Frame Buffer 上には直接描画することはできるため、 %%我々は Frame Buffer 上に描画するゲームフレームワークを提案してきた。 %% %%本研究では、PS3 上で高速な描画が可能な、独自のレンダリングエンジンとして、 %%Cerium Rendering Engine の開発を行う。 %%Cerium は、次の 3 つから構成される。 %% %%\begin{itemize} %% \item Scene Graph %% \item Rendering Engine %% \item Task Manager %%\end{itemize} %% %%Cerium は Cell 上だけでなく、Linux や Mac OS X 上でも %%動く、シーケンシャルなプログラムも実装することが出来る。 %%並列プログラムとシーケンシャルプログラムの相互の変換は容易である。 %%これにより、全体の動作のデバッグはシーケンシャルプログラムで行い、 %%仕様が正しいと確認できたら、 Cell 上などの特有の環境で %%動作、デバッグを行えばいい。 %% 近年、CPU の性能向上は、クロックサイクルを上げることよりも、 複数の CPU コア (Many Core Architecture) を導入することにより 得られるようになってきている。しかし、Many Core Architecture の プログラムは複雑であり、その信頼性を確保することは難しい。 本研究では、Many Core Architecture 向けの Fine Grain Task OS を設計する。 この OS では、Amdahl 則を考慮して、 定常的な並列性を細粒度タスクを使って実現する。 そのために、シーングラフレベルから並列実行を考慮したプログラムとする。 細粒度タスク自体や、タスク全体のデバッグを容易にするために、 同じタスクが Mac OS X や Linux、PS3 上など複数の環境で動くようにする。 また、Thread を多用せず、細粒度タスク内での同期は行わない。 これにより、並列プログラミングの経験の低いプログラマでも 容易に使用できる。 例題として、本研究室で作成した、Rendering を含む PS3 上のゲームプログラム用 OS である Cerium \cite{gongo} を用いる。 Cerium は、次の 3 つから構成される。 \begin{itemize} \item Scene Graph \item Rendering Engine \item Fine Grain Task Manager \end{itemize} Cerium では、Cell の性能を十分に引き出し、 今まで作成してきた PS、PS2 のゲームプログラムを PS3 へ 容易に移植できることを目的とする。