view paper/introduciton.tex @ 9:5ed3b4005142

*** empty log message ***
author akira
date Sun, 17 Feb 2008 00:14:30 +0900
parents d5c4d4a47f10
children 2d92b9d0576e
line wrap: on
line source

\chapter{序論}
\pagenumbering{arabic}
家庭用ゲーム機の多くは特殊なアーキテクチャを基盤としており、特にPS3でのCellシステムを用いたゲーム開発時にはSPUを駆使した並列設計が求められる。しかし、学生実験に置いてCellアーキテクチャを理解した上でゲームを実装することは困難である。また
他のゲーム機に移植する際には、アーキテクチャ間の差を埋めるためプログラムを大幅に書き換える必要がある。つまり、従来のCellアーキテクチャ上でのプログラム手法では、開発基盤を理解してプログラムを書くことには時間が必要であるということと、他アーキテクチャーとの汎用性が失われるという問題があった。\\
Linux上のレンダリングエンジンとしてOSMesaがある。これはOS やハードウェアに依存しないオフスクリーンレンダリングライブラリである。しかしながらPlayStation3のPowerPCシングルプロセッサ上ではCellの性能はいかせない。そこでOSMesaに手を加えて、一部の機能をSPUに演算させることにより、高速化させた。
しかし、OSMesaは機能を増やした結果、余計な演算が増
え、ソースコードは複雑で手を加えることが難しかった。\\
そこで我々はOSMesaを捨て、独自のゲームフレームワークCeriumを持つことにした。
我々が提案するゲームフレームワークCeriumはOpen Scene GraphやJava3Dにも実装されているオブジェクトを木構造で持ち、より動きをスムーズにみせるシーングラフとOSMesaに代表されるレンダリングエンジン、taskと呼ばれる実行単位を動的にすべてのコアが動作するように設計されたSPURSに代表されるCell上のタスクマネージャから構成される。
\\本論文ではCellというPowerPC ArchitectureのプロセッサコアPower Processor Elementと6個のデータ処理プロセッサコアSynergistic Processor Element(SPE)からなる非対称なマルチコアプロセッサを用いて、OSMesaの高速化とレンダリングエンジンの開発を行った。それにより、組み込みシステムにおける信頼性の高いプログラミングスタイルの提案する。
第2章でマルチコアプログラミングの要素と難しさをのべ、第3章ではCellの詳細な仕様と用意された基本的な機能の説明を述べ、第4章では実装したOSMesaの高速化、第5章でソフトウェアレンダリングの詳細を述べ、我々の開発手法が信頼性の高いプログラミングを行うのに有用であることを示す。

%それと同時に我々は家庭用ゲーム機で動作するゲームプログラムのオープンな開発フレームワークに関する研究を行ってきた。