annotate 2016/2016_03_29/slide.md @ 14:462d5be076fd

Add slides
author Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
date Tue, 12 Apr 2016 19:09:27 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 title: Gears OS の依存関係の解決
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 author: Tatsuki IHA
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 profile:
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 lang: Japanese
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 code-engine: coderay
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 # 研究目的
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 - 当研究室では 処理の単位を Code Segment、 データの単位を Data Segment を用いて 信頼性が高い並列処理を行う Gears OS を開発している
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 - Gears OS では Task を Code Segment と実行するときに必要な Input Data Segment と出力するための Output Data Segment の組で表現される。 Input Data Segment/Output Data Segment によって依存関係が決定し、それにそって並列実行を行う
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 - 現在のGears OS は 依存関係がある並列処理を行うことが出来ない。 この研究ではGears OS の依存関係の解決を目標とする
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 # やったこと
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 - Cerium の Htask::wait_for を読む
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 # wait_for
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 - master task を実行してから slave task を実行する場合
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 - master task の wait_me に slave の task を add する
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 - slave task の wait_i に master の task を add する
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 # check_task_finish
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
19
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 # spawn_task
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 - spawn_task 時にwait_i にtaskが入ってないかチェック
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 - empty の場合 activeTaskQueueにtaskを入れる
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 - empty ではない場合 waitTaskQueueにtaskを入れる
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
24
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 # Gears にどう実装するか
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 - Queue info はそのまま使ったほうが楽か(Linker struction)
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 - wait_i はまっているDS
462d5be076fd Add slides
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 - wait_me には出てくるDS を入れるか