# HG changeset patch # User tkaito@nw0534.st.ie.u-ryukyu.ac.jp # Date 1235571558 -32400 # Node ID 25c22b752f7a7db56722cf76e6d4d2e620562068 # Parent a8ce763091004ee156cb03f2f6d506d347fecac6 commit diff -r a8ce76309100 -r 25c22b752f7a presen/pre1.html --- a/presen/pre1.html Wed Feb 25 20:58:09 2009 +0900 +++ b/presen/pre1.html Wed Feb 25 23:19:18 2009 +0900 @@ -21,6 +21,20 @@ + @@ -37,12 +51,10 @@
-


-

並列プログラミングを用いた
ゲームフレームワークの設計と実装

-
+

並列プログラミングを用いた
ゲームフレームワークの設計と実装

琉球大学 工学部情報 工学科 055734A

多賀野海人

指導教官:河野真治 @@ -51,104 +63,73 @@

+

研究背景と目的

+
+

完成度の高いゲームを作成したい!

+
+
    +
  • Cell を用いたゲームプログラミングは学部生には困難である。
  • +
    + +
      +
    • 問題点1:Cell 特有の技術
    • +
    • 問題点2:ゲーム開発用の Framework
    • +
    • 問題点3:学生実験の期間が短い
    • +
    +
    +
    + + 本研究では、学生実験の期間内で Cell を活かした完成度の高いゲームを作成できる環境構築を目的としている + +
+ + +

目次

    -
  • 研究背景と目的
  • -
  • Cell, SPE を用いたプログラミング
  • + +
  • SPE を用いたプログラミング
  • Rendering 部分の高速化
  • -
  • Ceriumを用いたゲーム開発
  • 今後の課題
  • +
    +
+
+ +
+

SPE を用いたプログラミング

+
    +
  • DMA (Direct Memory Access)

  • +
      +
    • SPE にはメモリが 256KB しか搭載されていない。

    • +
    • 直接メインメモリにアクセスすることはできない。

    • +
    • メインメモリにアクセスするには DMA を用いる。

    • +
    + +
      +
    1. SPU プログラム → MFC : DMA 転送命令
    2. +
    3. MFC → DMA 転送開始
      (この間、SPE プログラムは停止しない)
    4. +
    5. DMA 転送の終了を待つ場合、SPE プログラム内で転送の完了を待つ。
    6. +
    +
[any material that should appear in print but not on the slide]
-

研究背景と目的

+

SPE を用いたプログラミング

    -
    -
  • 高性能なコンピュータを用いて完成度の高いゲームを作成したい!
  • -
  • 並列処理を用いたゲームプログラミングは、学部生にとって困難である。
  • -
  • データ転送やタスクの生成等のこれまで学んだことのない技術が多く存在する。
  • -
  • 学生実験では、ゲームの完成度を上げることが難しい。
  • -
    - - 本研究では、PlayStation3上でゲームプログラミングを行う際に、
    -Cellの性能を活かしながら、学生実験での完成度の高いゲーム開発
    -を目的としている。 -
    - -
-
-[any material that should appear in print but not on the slide] -
-
- -
-

Cell, SPE を用いたプログラミング

+
  • DMA 転送の待ち時間の問題
    • -
    • CELL BROADBAND ENGINE
    • - - Cell は 1 基の PowerPC Processor Element (PPE) と8 基の Synergistic Processor Element (SPE) -からなる非対称なマルチコアプロセッサであり、高速リングバスで構成されている。
      - SPE は、LS (Local Store) という256KBのメモリを持ち、 -本研究で用いた PS3Linux では、6個の SPE を制御することができる。 -

      -Cell-main -  SPE +
    • 問題点1:SPE が直接メインメモリにアクセスでき
      +     ない。

    • +
    • 問題点2:問題点1に伴う DMA 転送の待ち時間。

    -
    -[any material that should appear in print but not on the slide] -
    - -
    -

    Cell, SPE を用いたプログラミング

    -
      -
    • DMA (Direct Memory Access)
    • - - SPE にはメモリが 256KB しか搭載されていないという問題点がある。
      - メインメモリからデータを持ってくることも可能だが、SPE が直接メインメモリにアクセスすることはできず、 -メインメモリにアクセスするには DMA を用いる。 -Cell の場合はメインメモリと LS 間でデータの転送を行う。手順としては以下の様になる。 -

      -
      - -
        -
      1. SPU プログラムが MFC (Memory Flow Controller) に対してDMA 転送命令を発行する。
      2. -
      3. MFC が DMA Controller を介して DMA 転送を開始。この間、SPE プログラムは停止しない。
      4. -
      5. DMA 転送の終了を待つ場合、SPE プログラム内で転送の完了を待つ。
      6. -
      -

      - * MFC とはメインメモリや他の SPE などとデータをやり取りするためのユニット。 -
    -
    -[any material that should appear in print but not on the slide] -
    - -
    -

    Cell, SPE を用いたプログラミング

    -
      -
    • SPE の問題点
    • - - SPE が直接メインメモリにアクセスできないことと、DMA 転送の待ち時間が -SPE でプログラミングを行う際の大きな問題となる。
      - 問題の解決策として、DMA の待ち時間の間にも DMA 転送を必要としないような処理を行い、パイプラインを組む -また、SPE を複数用いた並列処理で DMA の待ち時間を隠す方法がある。 -

      +問題の解決策:パイプラインと並列処理を行う。
      pipeline
      -
    [any material that should appear in print but not on the slide] diff -r a8ce76309100 -r 25c22b752f7a presen/pre1.html~ --- a/presen/pre1.html~ Wed Feb 25 20:58:09 2009 +0900 +++ b/presen/pre1.html~ Wed Feb 25 23:19:18 2009 +0900 @@ -29,7 +29,7 @@
    @@ -43,10 +43,10 @@

    並列プログラミングを用いた
    ゲームフレームワークの設計と実装


    -

    指導教官:河野真治 -

    4年次:多賀野海人 -

    琉球大学 工学部情報 工学科 055734A

    -

    Jan. 27, 2009

    +

    琉球大学 工学部情報 工学科 055734A

    +

    多賀野海人 +

    指導教官:河野真治 +

    Feb, 26, 2009

    @@ -54,11 +54,10 @@

    目次

    • 研究背景と目的
    • -
    • Cellとは
    • -
    • Ceriumとは
    • -
    • ゲーム開発
    • +
    • Cell, SPE を用いたプログラミング
    • +
    • Rendering 部分の高速化
    • Ceriumを用いたゲーム開発
    • -
    • Rendering
    • +
    • 今後の課題
    [any material that should appear in print but not on the slide] @@ -72,10 +71,11 @@
  • 並列処理を用いたゲームプログラミングは、学部生にとって困難である。
  • データ転送やタスクの生成等のこれまで学んだことのない技術が多く存在する。
  • 学生実験では、ゲームの完成度を上げることが難しい。
  • -

    - - 本研究では、PlayStation3上でゲームプログラミングを行う際に、Cellの性能を活かしながら、 -学生実験での完成度の高いゲーム開発を目的としている。 +
    + + 本研究では、PlayStation3上でゲームプログラミングを行う際に、
    +Cellの性能を活かしながら、学生実験での完成度の高いゲーム開発
    +を目的としている。