view 2016/2016_03_29/slide.md @ 31:b7908b2f86c0 default tip

Update slide 2018_01_30
author Tatsuki IHA <innparusu@cr.ie.u-ryukyu.ac.jp>
date Tue, 30 Jan 2018 18:43:00 +0900
parents 462d5be076fd
children
line wrap: on
line source

title: Gears OS の依存関係の解決
author: Tatsuki IHA
profile:
lang: Japanese
code-engine: coderay
# 研究目的
- 当研究室では  処理の単位を Code Segment、 データの単位を Data Segment を用いて 信頼性が高い並列処理を行う Gears OS を開発している
- Gears OS では Task を Code Segment と実行するときに必要な Input Data Segment と出力するための Output Data Segment の組で表現される。 Input Data Segment/Output Data Segment によって依存関係が決定し、それにそって並列実行を行う
- 現在のGears OS は 依存関係がある並列処理を行うことが出来ない。 この研究ではGears OS の依存関係の解決を目標とする

# やったこと
- Cerium の Htask::wait_for を読む

# wait_for
- master task を実行してから slave task を実行する場合
- master task の wait_me に slave の task を add する
- slave task の wait_i に  master の task を add する
# check_task_finish

# spawn_task
- spawn_task 時にwait_i にtaskが入ってないかチェック
    - empty の場合 activeTaskQueueにtaskを入れる
    - empty ではない場合 waitTaskQueueにtaskを入れる

# Gears にどう実装するか
- Queue info はそのまま使ったほうが楽か(Linker struction)
- wait_i はまっているDS
- wait_me には出てくるDS を入れるか