annotate compare.tex @ 19:d43fc19aed85 default tip

update tags
author convert-repo
date Mon, 10 Nov 2008 04:59:37 +0000
parents 6c558cd2ac8b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
1 \section{Cerium の評価と考察}
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
2
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
3 Cerium Rendering Engine を用いて、
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
4 OSMesa と同様に立方体を回転させる処理を評価する。
4
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
5 今回、\figref{fig-cerium} で示した Task に対する CPU の割り振りは
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
6 \tabref{tab:hyoka1} とする。
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
7
6
a46c6f313a0b *** empty log message ***
gongo
parents: 5
diff changeset
8 \begin{table}[htbp]
4
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
9 \caption{Task の実行 CPU} \label{tab:hyoka1}
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
10 \hbox to\hsize{\hfil
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
11 \begin{tabular}{c|l} \hline \hline
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
12 Task & CPU \\ \hline
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
13 SceneGraph to PolygonPack & PPE \\
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
14 Polygonpack to SpanPack & PPE \\
4
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
15 Rendering & SPE \\ \hline
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
16 \end{tabular}\hfil}
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
17 \end{table}
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
18
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
19 PPE/SPE に対するコンパイルの最適化レベル及びその時の実行 FPS を
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
20 \tabref{tab:hyoka2} に示す。描画領域は 640x80 である。
4
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
21
6
a46c6f313a0b *** empty log message ***
gongo
parents: 5
diff changeset
22 \begin{table}[htbp]
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
23 \caption{Cerium 実行速度 (640x80)} \label{tab:hyoka2}
4
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
24 \hbox to\hsize{\hfil
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
25 \begin{tabular}{cc|l} \hline \hline
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
26 PPE & SPE & FPS \\ \hline
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
27 最適化なし & 最適化なし & 263 FPS \\
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
28 -O2 & 最適化なし & 317 FPS \\
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
29 最適化なし & -O2 & 812 FPS \\
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
30 -O2 & -O2 & 1355 FPS \\ \hline
4
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
31 \end{tabular}\hfil}
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
32 \end{table}
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
33
869c475cc108 *** empty log message ***
gongo
parents:
diff changeset
34 \tabref{tab:hyoka2} より、SPE に対する最適化が非常に有効であるといえる。
7
bd8574dedd1b *** empty log message ***
gongo
parents: 6
diff changeset
35
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
36 また、描画領域の大きさと実行速度は反比例すると考えると、
9
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
37 1920x1080の時、先行研究の結果と合わせると \tabref{tab:hyoka3} のようになる。
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
38
6
a46c6f313a0b *** empty log message ***
gongo
parents: 5
diff changeset
39 \begin{table}[htbp]
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
40 \caption{実行速度 (1920x1080)} \label{tab:hyoka3}
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
41 \hbox to\hsize{\hfil
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
42 \begin{tabular}{r|l|l} \hline \hline
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
43 & 実行環境 & 実行速度\\ \hline
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
44 1 & SDL(1.2)+OSMesa(6.5.2) & 18 FPS \\
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
45 2 & SDL(1.2)+OSMesa(6.5.2) with SPE & 24 FPS \\
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
46 3 & SDL(1.2.13)+OSMesa(7.0.2) with SPE & 43 FPS \\
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
47 4 & Cerium & 33 FPS \\ \hline
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
48 \end{tabular}\hfil}
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
49 \end{table}
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
50
9
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
51 Cerium は 環境 1, 2 は上回っているものの、環境 3 の速度を下回っている。
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
52 この理由としては、SPE 上で動かしていないタスクがあるのが挙げられる。
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
53
7
bd8574dedd1b *** empty log message ***
gongo
parents: 6
diff changeset
54 現在、Cerium には DMA で SPE 上にプログラムをロードする機能を
9
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
55 実装していないため、必要な時に必要なプログラムだけを SPE 上に置くという
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
56 ことができない。SPE の LS の容量では、全てのタスクを SPE 上に乗せることは
fea1ac32de27 *** empty log message ***
gongo
parents: 7
diff changeset
57 できないため、現在は Renderer のタスクだけを SPE 上にマッピングしてある。
7
bd8574dedd1b *** empty log message ***
gongo
parents: 6
diff changeset
58
15
6c558cd2ac8b *** empty log message ***
gongo
parents: 9
diff changeset
59 また、プログラム開始直後にテクスチャデータを全て SPE 上にロードしている。
6c558cd2ac8b *** empty log message ***
gongo
parents: 9
diff changeset
60 そのため、必要無いデータまで SPE 上に置いている状態なので、
6c558cd2ac8b *** empty log message ***
gongo
parents: 9
diff changeset
61 メモリ領域を無駄に消費している。
7
bd8574dedd1b *** empty log message ***
gongo
parents: 6
diff changeset
62
6
a46c6f313a0b *** empty log message ***
gongo
parents: 5
diff changeset
63 Cerium の描画領域の横幅が 640 に抑えてあるのも、上記の問題が原因で
a46c6f313a0b *** empty log message ***
gongo
parents: 5
diff changeset
64 1920 pixel 分の Z Buffer を SPE 上に置くスペースが無いからである。
5
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
65 オーバーレイ機能を導入するという手法もあるが、
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
66 ロード中は SPE が止まってしまうため好ましくない。
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
67
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
68 また、パイプラインが正常に動いているかなど、
30bf38a518e8 *** empty log message ***
gongo
parents: 4
diff changeset
69 アルゴリズムの検証を行う必要もある。