annotate presen/presen1.html @ 22:fe88829c8fe3 draft

add file
author Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
date Sun, 12 Feb 2012 17:51:19 +0900
parents e5e563dc8270
children 02067287fac3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 <html xmlns="http://www.w3.org/1999/xhtml">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 <head>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 <title>S5: An Introduction</title>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 <!-- metadata -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 <meta name="generator" content="S5" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 <meta name="version" content="S5 1.3" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 <meta name="author" content="Eric A. Meyer" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 <meta name="company" content="Complex Spiral Consulting" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 <!-- meta extensions -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 <meta name="subject" content="S5 1.3beta7" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 <meta name="creator" content="Christian Effenberger" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 <meta name="contributor" content="youcan[64]netzgesta[46]de" /> <meta name="publisher" content="s5.netzgesta.de" /> <meta name="description" content="S5 1.3 is a very flexible and lightweight slide show system available for anyone to use (including transitions and scalable fonts and images)" /> <meta name="keywords" content="S5, slide show, projection-mode, powerpoint-like, scala-like, keynote-like, incremental display, scalable fonts, scalable images, transitions, notes, osf, xoxo, css, javascript, xhtml, public domain" /> <meta name="robots" content="index, follow" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 <meta name="revisit-after" content="7 days" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 <!-- meta temporary -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 <meta http-equiv="content-type" content="text/html; charset=utf-8" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 <meta http-equiv="Content-Script-Type" content="text/javascript" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 <meta http-equiv="Content-Style-Type" content="text/css" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 <!-- configuration parameters -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 <meta name="defaultView" content="slideshow" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 <meta name="controlVis" content="hidden" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 <!-- configuration extensions -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 <meta name="tranSitions" content="true" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 <meta name="fadeDuration" content="500" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 <meta name="incrDuration" content="250" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 <!-- configuration autoplay extension -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 <meta name="autoMatic" content="false" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31 <meta name="playLoop" content="true" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 <meta name="playDelay" content="10000" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 <!-- configuration audio extension -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 <meta name="audioSupport" content="false" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 <meta name="audioVolume" content="100" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 <meta name="audioError" content="false" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 <!-- configuration audio debug -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 <meta name="audioDebug" content="false" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 <!-- style sheet links -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 <link rel="stylesheet" href="ui/default_utf/slides.css" type="text/css" media="projection" id="slideProj" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 <link rel="stylesheet" href="ui/default_utf/outline.css" type="text/css" media="screen" id="outlineStyle" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 <link rel="stylesheet" href="ui/default_utf/print.css" type="text/css" media="print" id="slidePrint" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 <link rel="stylesheet" href="ui/default_utf/opera.css" type="text/css" media="projection" id="operaFix" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 <!-- embedded styles -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 <style type="text/css" media="all">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 .imgcon {width: 100%; margin: 0 auto; padding: 0; text-align: center;}
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 #anim {width: 33%; height: 320px; position: relative;}
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 #anim img {position: absolute; top: 0px; left: 0px;}
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 </style>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 <!-- S5 JS -->
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 <script src="ui/default_utf/slides.js" type="text/javascript"></script>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
53
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 </head>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 <body>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 <div class="layout">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 <div id="controls"><!-- DO NOT EDIT --></div>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 <div id="currentSlide"><!-- DO NOT EDIT --></div>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 <div id="header"></div>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
61 <div id="footer">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
62
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
63 <h1></h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 <h2></h2>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
65 </div>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
66 </div>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
67
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
68 <ol class="xoxo presentation">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
69
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
70 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
71 <h1>並列プログラミングフレームワーク Cerium の改良</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
72 <h3>金城 裕</h3>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
73 <h4>琉球大学理工学研究科情報工学専攻</h4>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
74 <div class="handout"></div>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
75 </li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
76
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 <h1>研究背景と目的(1/2)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
79 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
80 当研究室では、マルチコアCPU上での開発を支援するたの、並列プログラミングフレームワーク Cerium を開発し、学生実験で使用している。本研究では
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 Cerium の信頼性の向上を目的とし、改良を行った (信頼性 = 仕様通りに動作する)<br>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
82
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
83 マルチコア上の並列プログラミングでは
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
84 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
85 <li>並列処理部分の特定や同期処理を適切に行わなければ、台数効果は得られない。</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
86 <li>再現性ないバグなどが発生する可能性がある</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
87 <li>アーキテクチャを理解し最適なプログラムを書く必要がある</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
88 </ul><br>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
89
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
90 など信頼性のあるプログラムを開発するには逐次プログラミングよりも技術と手間がかかる問題がある<br>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
91 Cell上でのゲーム作成を行う学生実験でも、講義期間中に作品が一定のレベルに達しない問題が生じた。そこで学生実験での使用を考慮した フレームワーク Cerium を開発した<br>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
92
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
93 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
94
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
95 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
96 <h1>研究背景と目的(2/2)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
97 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
98 Cerium を用いて 期間中のゲームの作成が可能になった。しかし学生実験での使用や、例題の実装を行い Cerium の信頼性が十分でない点が明らかになった。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
99 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
100 <li>仕様通りの稼働率がでない</li>
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
101 <li>アーキテクチャ依存の記述が含まれている</li>
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
102 </ul><br>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
103 以上の問題点を解決するため
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
104 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
105 <li>ソフトウェアMailQueueの実装</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
106 <li>TaskをグルーピングするTaskArrayの実装</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
107 <li>明示的なDMAロードを隠蔽するMemorySegmentのAPIの実装</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
108 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
109 などの改良を行い、信頼性のある並列プログラミングフレームワークを目指す。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
110 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
111
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
112 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
113 <h1>Cell Broadband Engine</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
114 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
115
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
116 研究、実験の題材となった Cell Broadband Engine とは、
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
117 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
118 <li>ソニー、SCE、 IBM、 東芝によって開発されたプロセッサ</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
119 <li>マルチコアで、9つのコアを持つ</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
120 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
121 <li>制御用コア PorwerPC Processor Element 1基</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
122 <li>演算用コア Synergistic Processor Element 8基 (実験で使用できるのは6基)</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
123 <li>各コアは Element Interconnect Bus を経由してデータアクセスを行う</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
124 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
125 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
126
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
127 <p style="text-align: center;">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
128 <img class="scale" src="pix/cell.png" alt="" title="At a Glance" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
129 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
130
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
131 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
132
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
133 <li class="slide">
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
134 <h1>DMA転送</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
135 SPE は直接 MainMemory にアクセスできない。 明示的な DMA 転送命令を用いてデータにアクセスする。データは
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
136
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
137 <ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
138 <li>16アラインメントに揃える</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
139 <li>16byte の倍数のサイズ</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
140 <li>一度の転送は16KB の大きさまで</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
141 </ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
142
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
143
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
144 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
145 <h1>Mailbox</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
146
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
147 PPE と SPE の通信には Mailbox を用いる
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
148
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
149 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
150 <li>PPE と SPE 間で32ビットメッセージの交換ができる</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
151 <li>Mail の Queue は3種類</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
152 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
153 <li>SPU inbound Mailbox: PPE -> SPE</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
154 <li>SPU Outbound Mailbox: SPE -> PPE</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
155 <li>SPU Outbound interrupt Mailbox: SPE -> PPE (割り込み)</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
156 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
157 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
158
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
159 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
160 <h1>Cerium</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
161 Cerium とは
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
162 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
163 <li>並列プログラミング用のフレームワーク</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
164 <li>学生実験での使用を考慮して PS3/Cell, Linux, MacOSX で動作する</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
165 <li>構成</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
166 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
167 <li>TaskManager</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
168 <li>RenderingEngine</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
169 <li>SceneGraph</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
170 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
171 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
172
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
173
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
174 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
175 <h1>TaskManager</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
176 TaskManager とは Task のスケジューラ
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
177
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
178 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
179 <li>Task とよばれるデータ構造を提供</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
180 <li>処理(単位は関数に近い)を Task で記述していく</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
181 <li>定義された、Task の情報に沿って各コアに処理を割り振る</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
182 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
183
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
184 Task で記述された部分の、自動的な並列処理スケジューリングを行う。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
185
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
186 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
187 <h1>RenderingEngine(1/2)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
188 PS3 では Graphics Engien の仕様が公開されていないので、独自の RenderingEngine を開発した。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
189 Task で記述され、主に3つの Task から構成される
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
190 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
191 <li>CreatePolygonTask</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
192 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
193 <li>モデリングデータを、三角形のポリゴンに変換する</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
194 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
195 <li>CreateSpanTask</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
196 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
197 <li>ポリゴンを水平な線(Span)に分割する</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
198 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
199 <li>DrawSpanTask</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
200 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
201 <li>Span を Texture とマッピングし画面に出力する</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
202 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
203 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
204
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
205 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
206 <h1>RenderingEngine(2/2)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
207
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
208 例: Cube のモデリングデータの場合には、以下のように Task が働く。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
209
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
210 <p style="text-align: center;">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
211 <img class="scale" src="pix/rendering3.png" width="50%" alt="" title="At a Glance" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
212 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
213
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
214 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
215 <h1>SceneGraph</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
216 ゲームのシーンを構成する木構造のグラフ。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
217
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
218 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
219 <h1>Cerium の改良</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
220 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
221 RenderingEngine を用いた例題で、ball bound, panel がある。(FPS = Frame per second)
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
222
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
223 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
224 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
225 <th></th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
226 <th>FPS</th>
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
227 <th>DMA転送待ち割合</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
228 <th>mail待ち割合</th>
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
229 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
230 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
231 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
232 <th>ball bound</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
233 <th>30.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
234 <th>1.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
235 <th>74.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
236 <th>23.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
237 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
238 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
239 <th>panel</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
240 <th>4.0</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
241 <th>21.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
242 <th>11.1%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
243 <th>67.6%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
244 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
245 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
246
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
247 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
248 <li>panel</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
249 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
250 <li>解像度1980x1080の一枚の画像の描画行う。</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
251 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
252 <li>ball bound</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
253 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
254 <li>球が跳ねる例題。</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
255 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
256 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
257
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
258 ball bound では Mail 待ちが約70%と、稼働率が出ていない。<br>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
259 panel は ball bound より処理の描画の処理が重く、その分稼働率が高くなっている。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
260 アムダールの法則より稼働率がでないとマルチコアの性能は発揮されない。フレームワークとしての信頼性が十分でない
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
261 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
262
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
263 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
264 <h1>Mail 通知のスケジューリング</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
265 Cerium では SPE が Mail で 待ち時間が発生するタイミングは2つ
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
266
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
267 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
268 <li>TaskList を待つ場合</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
269 <li>Mail の書き込みを待つ場合</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
270 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
271
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
272 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
273 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
274
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
275 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
276 <h1>TaskListのMail待ち</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
277 TaskList は処理する Task の List である。PPE で生成され SPE へ Mail で通知される
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
278
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
279 <p style="text-align: center;">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
280 <img class="scale" src="pix/tasklistmail1.png" width="80%" alt="" title="At a Glance" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
281 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
282
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
283 TaskList が生成され SPE に通知されるまで、SPE に待ち時間が発生する。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
284
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
285 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
286 <h1>Mail の書き込み待ち</h1>
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
287 Task が終了した際と TaskList が終了した際に SPE が Mailbox へ書き込みを行う(依存関係解決のため)。Outbound Mailbox はサイズが1なので、他のMailが書き込まれている場合、それが PPE側から読み込まれるまで、待つ。
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
288
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
289 <p style="text-align: center;">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
290 <img class="scale" src="pix/mailschedule2.png" width="80%" alt="" title="At a Glance" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
291 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
292
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
293 TaskList が生成され SPE に通知されるまで、SPE に待ち時間が発生する。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
294
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
295
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
296 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
297 <h1>TaskArray(1/3)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
298 TaskList は Cerium 側で固定長であり、ユーザは変更することができない。ユーザが設定できる TaskList のようなものが、TaskArrayである。TaskArray は複数の Task をグルーピングできる。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
299
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
300 <p style="text-align: center;">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
301 <img class="scale" src="pix/taskarray1.png" width="80%" alt="" title="At a Glance" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
302 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
303
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
304 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
305 <h1>TaskArray(2/3)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
306 例えば TaskListのサイズが4, TaskArray のサイズが4の場合、Task が8個の場合
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
307
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
308 <p style="text-align: center;">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
309 <img class="scale" src="pix/taskarray2.png" width="80%" alt="" title="At a Glance" />
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
310 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
311
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
312 グルーピングされるため Task 毎の Mail 回数が減る。TaskList の要求回数が減る。そのため Mail の待ち時間が入る箇所が削減され、Mail の待ち時間自体の削減につながる。
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
313
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
314 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
315 <h1>TaskArray(3/3)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
316 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
317 TaskArray の効果を示す
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
318
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
319 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
320 <caption>ballbound</caption>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
321 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
322 <th>TaskArray</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
323 <th>FPS</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
324 <th>DMA転送待ち時間</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
325 <th>mail待ちの割合</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
326 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
327 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
328 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
329 <th> なし </th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
330 <th>30.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
331 <th>1.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
332 <th>74.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
333 <th>23.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
334 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
335 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
336
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
337 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
338 <th> あり </th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
339 <th>32.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
340 <th>2.5%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
341 <th>66.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
342 <th>30.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
343 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
344
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
345 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
346
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
347 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
348 <caption>panel</caption>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
349 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
350 <th>TaskArray</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
351 <th>FPS</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
352 <th>DMA転送待ち時間</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
353 <th>mail待ちの割合</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
354 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
355 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
356
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
357 <th>なし</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
358 <th>4.0</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
359 <th>21.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
360 <th>11.1%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
361 <th>67.6%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
362 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
363
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
364
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
365 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
366 <th>あり</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
367 <th>4.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
368 <th>22.5%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
369 <th>5.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
370 <th>71.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
371 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
372 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
373
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
374 TaskArray を ball bound, panel の DrawSpanTask に適応。FPS、稼働率の向上。Mail 待ちの時間が削減された
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
375
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
376 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
377
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
378 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
379 <h1>MailQueue(1/3)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
380 ソフトウェア MailQueue の実装
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
381
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
382 <ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
383 <li>SPE から Mailbox に書き出せない場合に MailQueue へと書きだす</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
384 <li>MailQueue に Mail がある場合は、MailQueue から Mailbox へ書き出す</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
385 <li>MailQueue に残っている Mail は TaskList のTask を消化した時点で、すべて書き出す処理を挟む</li>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
386 </ul>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
387
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
388 Task 毎の Mail 書き込み時の待ち時間を削減するのが目的
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
389
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
390 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
391 <h1>MailQueue(2/3)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
392
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
393 Mailbox に書き込めない場合は、MailQueue に書き込む例
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
394
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
395 <p style="text-align: center;">
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
396 <img class="scale" src="pix/mailqueue1.png" width="70%" alt="" title="At a Glance" />
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
397 </p>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
398
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
399 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
400 <h1>MailQueue(3/3)</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
401 MailQeueuの効果
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
402
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
403 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
404 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
405 <caption>ball bound</caption>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
406 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
407 <th>MailQueue</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
408 <th>FPS</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
409 <th>DMA転送待ち時間</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
410 <th>mail待ちの割合</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
411 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
412 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
413 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
414 <th> なし </th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
415 <th>32.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
416 <th>2.5%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
417 <th>66.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
418 <th>30.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
419 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
420 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
421
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
422 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
423 <th> あり </th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
424 <th>41.7</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
425 <th>3.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
426 <th>56.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
427 <th>40.0%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
428 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
429
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
430 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
431
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
432 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
433 <caption>panel</caption>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
434 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
435 <th>MailQueue</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
436 <th>FPS</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
437 <th>DMA転送待ち時間</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
438 <th>mail待ちの割合</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
439 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
440 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
441
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
442 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
443 <th>なし</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
444 <th>4.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
445 <th>22.5%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
446 <th>5.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
447 <th>71.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
448 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
449
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
450 <th>あり</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
451 <th>4.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
452 <th>23.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
453 <th>4.1%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
454 <th>72.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
455 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
456
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
457 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
458 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
459
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
460 <li class="slide">
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
461 <h1>MemorySegment(1/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
462 CreateSpanTask では明示的にDMA転送命令を記述している。
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
463
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
464 <ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
465 <li>処理するデータ構造上の理由、Task内でのデータロードが必要</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
466 <li>DMA転送命令は Cell アーキテクチャ依存の記述</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
467 <li>他のアーキテクチャなどでは不要</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
468 </ul><br>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
469
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
470 アーキテクチャ依存の記述を隠蔽できるAPIが必要になった。
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
471
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
472 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
473 <h1>MemorySegment(2/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
474 明示的なDMA転送命令を隠蔽するため MemorySegment を実装した
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
475
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
476 <ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
477 <li>一定のメモリを確保し、ハッシュで管理(LRU方式)</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
478 <li>API 内部で自動的なキャッシュを行う (サイズは任意に設定できる)</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
479 <li>dma 命令を MemorySegment というデータ構造を操作する命令に置き換える</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
480 <ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
481 <li>dma_load -> get_segment</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
482 <li>dma_store -> put_segment</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
483 <li>dma_wait -> wait_segment</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
484 </ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
485 </ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
486
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
487 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
488 <h1>MemorySegment(3/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
489
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
490 <p style="text-align: center;">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
491 <img class="scale" src="pix/getsegment1.png" width="50%" alt="" title="At a Glance" />
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
492 </p>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
493
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
494
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
495 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
496 <h1>MemorySegment(4/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
497
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
498 <p style="text-align: center;">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
499 <img class="scale" src="pix/putsegment1.png" width="50%" alt="" title="At a Glance" />
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
500 </p>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
501
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
502
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
503 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
504 <h1>MemorySegment(5/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
505 明示的に記述したDMA転送命令の例
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
506 <pre>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
507 loop() {
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
508
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
509 tmp_data = get_data;
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
510 get_data = send_data;
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
511 send_data = tmp_data;
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
512
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
513 dma_wait(WAIT_STORE);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
514
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
515 dma_store(send_data, send_addr, data_size, WAIT_STORE);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
516 dma_load(get_data, get_addr, data_size, WAIT_LOAD);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
517
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
518 dma_wait(WAIT_LOAD);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
519
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
520 calc(get_data);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
521
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
522 }
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
523 </pre>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
524
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
525 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
526 <h1>MemorySegment(6/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
527 MemorySegment を適応させた例
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
528 <pre>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
529 loop() {
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
530
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
531 wait_segment(put_ms);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
532
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
533 put_ms = get_ms;
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
534
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
535 put_segment(put_ms);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
536 get_ms = get_segment(get_addr, ml);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
537
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
538 wait_segment(get_ms);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
539 get_data = get_ms->data;
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
540
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
541 calc(get_data);
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
542 }
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
543 </pre>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
544
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
545 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
546 <h1>MemorySegment(7/7)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
547 MemorySemgment を導入
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
548
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
549 <ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
550 <li>アーキテクチャ依存の記述を隠蔽することに成功した</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
551 <li>汎用的な Task 内でのデータ転送APIとして使用でき</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
552 <li>Core i7, Xeon などの汎用のメニーコアにも対応可能</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
553 <li>CreateSpanTask 内のデータロードと、DrawspanTask の Texture のロードに使用している</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
554 </ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
555
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
556 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
557 <h1>まとめ(1)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
558 並列プログラミングフレームワーク Cerium の改良を行った。
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
559
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
560 <ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
561 <li>Mail の待ち時間を削減、稼働率とFPSの向上に成功</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
562 <li>汎用的なデータ転送APIを実装した</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
563 <li>Cell アーキテクチャ依存の記述の隠蔽に成功</li>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
564 </ul>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
565
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
566
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
567 <li class="slide">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
568 <h1>まとめ(2)</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
569
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
570 改良の効果を示す
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
571
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
572 <font size="5">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
573 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
574 <caption>ball bound</caption>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
575 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
576 <th></th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
577 <th>FPS</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
578 <th>DMA転送待ち時間</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
579 <th>mail待ちの割合</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
580 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
581 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
582 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
583 <th>改良前</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
584 <th>30.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
585 <th>1.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
586 <th>74.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
587 <th>23.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
588 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
589 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
590
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
591 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
592 <th>改良後</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
593 <th>41.7</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
594 <th>3.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
595 <th>56.8%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
596 <th>40.0%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
597 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
598 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
599
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
600 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
601 <caption>panel</caption>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
602 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
603 <th></th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
604 <th>FPS</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
605 <th>DMA転送待ち時間</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
606 <th>mail待ちの割合</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
607 <th>SPE稼働率</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
608 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
609
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
610 <tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
611 <th>改良前</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
612 <th>4.0</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
613 <th>21.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
614 <th>11.1%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
615 <th>67.6%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
616 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
617
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
618 <th>改良後</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
619 <th>4.2</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
620 <th>23.7%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
621 <th>4.1%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
622 <th>72.3%</th>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
623 </tr>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
624
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
625 </table>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
626 </font>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
627
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
628 <li class="slide">
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
629 <h1>OpenGL との比較</h1>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
630 学生実験で作成された シューティングゲーム「SuperDandy」 を例題に OpenGL と比較。OpenGL は PPE 1基のみを使用。Cerium は
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
631 SPE6基+PPE1基を使用した。
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
632
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
633 <table border="1" cellspacing="0" cellspacing="2" cellpadding="5" align="center">
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
634 <caption>シューティングゲーム</caption>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
635 <tr>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
636 <th></th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
637 <th>OpenGL</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
638 <th>Cerium</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
639 <th>性能差</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
640 </tr>
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
641
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
642 <tr>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
643 <th>SuperDandy</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
644 <th>17.5 FPS</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
645 <th>49.5 FPS</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
646 <th>2.9 倍</th>
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
647 </tr>
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
648
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
649 </table>
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
650
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
651
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
652 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
653 <h1>今後の課題</h1>
22
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
654 アムダールの法則より、
fe88829c8fe3 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
655
20
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
656
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
657 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
658 <h1>自動的な依存関係の解決</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
659
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
660 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
661 <h1>Task 化による並列化率の向上</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
662
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
663 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
664 <h1>SPE の LS の利用方法</h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
665
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
666
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
667 <li class="slide">
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
668 <h1></h1>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
669
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
670 /*end*/
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
671
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
672 </ol>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
673
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
674 </body>
e5e563dc8270 add file
Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
675 </html>