view paper/introduction.tex @ 5:5269ce12fdde

intro finish
author admin@mb22-no-macbook.local
date Tue, 17 Mar 2009 23:50:24 +0900
parents 7af0000e5967
children 730e563bd337
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 を多用せず、細粒度タスク内での同期は行わない。
%これにより、並列プログラミングの経験の低いプログラマでも
%容易に使用できる。

PS3 上の Cell に搭載されている SPE は Local Store (256KB) にしかアクセスできず、
メインメモリには直接アクセスすることができない。
メインメモリにアクセスするには Memory Flow Controller を用いて Direct Memory Access 命令を
送らなければならない。またこの DMA には待ち時間が発生する。待ち時間の間 SPE が動作しなければ
マルチコアプロセッサのパフォーマンスが極端に下がる。

本研究では、SPE 内のデータ管理を行うことによって Cell プログラミングの並列度を確保する手法を提案する。

Cerium という独自の Rendering Engine を用いたゲームプログラミングを例題とする。
描画するオブジェクトに用いられる Texture データは、SPE の Local Store に収まりきらない場合があるので、
データを分割して転送、処理する必要がある。処理に必要なデータの管理を SPE 内で行うことによって、
メインメモリとの通信頻度を減らし、Cell プログラミングの並列度の確保を実現する。

%Cerium は、次の 3 つから構成される。

%\begin{itemize}
%  \item Scene Graph
%  \item Rendering Engine
%  \item Fine Grain Task Manager
%\end{itemize}

%Cerium では、Cell の性能を十分に引き出し、
%今まで作成してきた PS、PS2 のゲームプログラムを PS3 へ
%容易に移植できることを目的とする。