Mercurial > hg > Papers > 2010 > sigos-koba
comparison paper/OS-116-6.tex @ 10:d80f032a82ff
fix.
author | koba <koba@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 17 Dec 2010 16:00:12 +0900 |
parents | bacf550749a7 |
children | b33f12b11bc8 |
comparison
equal
deleted
inserted
replaced
9:bacf550749a7 | 10:d80f032a82ff |
---|---|
59 本研究ではこのストールを検出することを考える。 | 59 本研究ではこのストールを検出することを考える。 |
60 \end{abstract} | 60 \end{abstract} |
61 % 英文概要 | 61 % 英文概要 |
62 \begin{eabstract} | 62 \begin{eabstract} |
63 We developed Cerium Engine which support Game Programming on PlayStation3. | 63 We developed Cerium Engine which support Game Programming on PlayStation3. |
64 | 64 Cerium managed drawing objects and movement by Task. |
65 \end{eabstract} | 65 \end{eabstract} |
66 | 66 |
67 % 表題 | 67 % 表題 |
68 \maketitle | 68 \maketitle |
69 | 69 |
232 \hbox{func1: data = 3} | 232 \hbox{func1: data = 3} |
233 }\fbox{\box0} | 233 }\fbox{\box0} |
234 \caption{set\_post による関数の設定} | 234 \caption{set\_post による関数の設定} |
235 \label{fig:set_post} | 235 \label{fig:set_post} |
236 \end{figure} | 236 \end{figure} |
237 | |
238 \section{Super Dandy} | |
239 {\bf SuperDandy}は当研究室が PlayStation でのゲーム開発を行っていた時期に | |
240 開発されたシューティングゲームである。{\bf SuperDandy}は開発する環境が変わる度に | |
241 移植されており、過去には PlayStation2、MacOSX 用も作られた。今回、新たに | |
242 MacOSX バージョンをベースとして Cerium で動作するバージョンを作成した。 | |
243 SuperDandyが伝統的に移植されてきた背景には、ある程度のボリュームのあるゲームであること、 | |
244 動作結果を過去の環境と比較することで新たな環境のチューニングが行えることが挙げられる。 | |
245 | |
246 \subsection{Super Dandy の Cerium への移植} | |
247 Cerium ではオブジェクトの管理は SceneGraph を用いて行っているが、 | |
248 Super Dandy は独自にオブジェクトの管理を行なっている。また PutSprite という | |
249 描画用の関数が存在する。この関数は | |
250 OpenGL\footnote[2]{ | |
251 2D, 3D オブジェクトの描画の為のプログラムインターフェース | |
252 } | |
253 を使用しており、XY座標、テクスチャの指定を行うことによってオブジェクトの描画を | |
254 行うことができる。また、PutSprite の他にオブジェクトの拡大縮小が可能な PutSpriteEx | |
255 が存在する。Super Dandy を Cerium へ移植する場合には、この PutSprite, PutSpriteEx | |
256 と同名の関数を用意し、その中で SceneGraph tree への登録を行うことで Cerium 上への | |
257 移植に成功した。また、この方法で移植することによってSuper Dandy 内で設定された | |
258 細かなパラメータを再利用でき、旧バージョンとの比較によって Cerium の機能の洗い出しを | |
259 することができる。具体的にはテクスチャの表示のズレ、光源処理のチューニングなどである。 | |
260 また、元の PutSprite,PutSpriteEX を使うことにより旧バージョンを動かすことができる。 | |
261 これにより異なる環境での動作の確認が容易に行える。 | |
262 | |
263 \subsection{Super Dandy on PlayStation3} | |
264 Super Dandy を Task 化して PlayStation3 上で動かす場合、Cell Broadband Architecture | |
265 の特徴を | |
237 | 266 |
238 \section{Pipeline のストール} | 267 \section{Pipeline のストール} |
239 \ref{ssec:dependency}節にあるように、 Cerium の Task には 依存関係を設定することができるが、 | 268 \ref{ssec:dependency}節にあるように、 Cerium の Task には 依存関係を設定することができるが、 |
240 例えばある Task の処理を複数の Task が待つような dependency が設定されていたとき、 | 269 例えばある Task の処理を複数の Task が待つような dependency が設定されていたとき、 |
241 まだ処理していない Task があるにもかかわらず、動作していない SPE が発生してしまう。(図\ref{fig:stall}) | 270 まだ処理していない Task があるにもかかわらず、動作していない SPE が発生してしまう。(図\ref{fig:stall}) |
320 Task がどのように展開されているのか、どの程度並列度が落ちているのかまではわからない。 | 349 Task がどのように展開されているのか、どの程度並列度が落ちているのかまではわからない。 |
321 登録された Task には set\_post や wait\_for で設定された依存関係が保存されており、 | 350 登録された Task には set\_post や wait\_for で設定された依存関係が保存されており、 |
322 この情報のログを取り、依存関係の樹形図を可視化することができれば | 351 この情報のログを取り、依存関係の樹形図を可視化することができれば |
323 Cerim における並列プログラミングを強力にバックアップすることができる。 | 352 Cerim における並列プログラミングを強力にバックアップすることができる。 |
324 | 353 |
325 \section{Super Dandy on PlayStatin3} | |
326 {\bf SuperDandy}は当研究室が PlayStation でのゲーム開発を行っていた時期に | |
327 開発されたシューティングゲームである。{\bf SuperDandy}は開発する環境が変わる度に | |
328 移植されており、過去には PlayStation2、MacOSX 用も作られた。今回、Cerium のテストを | |
329 行うにあたり、新たに Task で動作する PlayStation3 バージョンを作成した。 | |
330 {\bf SuperDandy}が伝統的に移植されてきた背景には、ある程度のボリュームのある | |
331 ゲームであること、動作結果を過去の環境と比較することで新たな環境のチューニングが | |
332 容易に行えることなどが挙げられる。 | |
333 | |
334 \begin{thebibliography}{3} | 354 \begin{thebibliography}{3} |
335 | 355 |
336 \bibitem{article1} | 356 \bibitem{article1} |
337 宮國 渡: Cell 用の Fine-Grain Task Manager の実装. | 357 宮國 渡: Cell 用の Fine-Grain Task Manager の実装. |
338 琉球大学大学院 理工学研究科 情報工学専攻 平成20年度 学位論文 2008. | 358 琉球大学大学院 理工学研究科 情報工学専攻 平成20年度 学位論文 2008. |