changeset 17:8e98a8e122e6

Update
author Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
date Sat, 11 Jun 2016 15:59:17 +0900
parents 216de41a6219
children a9a91f4a6688
files 2016/2016_05_10/slide.md 2016/2016_05_17/slide.md 2016/2016_05_24/slide.md 2016/2016_06_06/slide.md
diffstat 4 files changed, 140 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/2016/2016_05_10/slide.md	Sat Jun 11 15:59:17 2016 +0900
@@ -0,0 +1,14 @@
+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 の依存関係の解決を目標とする
+
+# 今週
+- OS研究会を出しました
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/2016/2016_05_17/slide.md	Sat Jun 11 15:59:17 2016 +0900
@@ -0,0 +1,58 @@
+title: Gears OS の依存関係の解決
+author: Tatsuki IHA
+profile:
+lang: Japanese
+code-engine: coderay
+
+# 研究目的
+- 当研究室では  処理の単位を Code Gear、 データの単位を Data Gear を用いて 信頼性が高い並列処理を行う Gears OS を開発している
+- Gears OS では Task を Code Gear と実行するときに必要な Input Data Gear と出力するための Output Data Gear の組で表現される。 Input Data Gear/Output Data Gear によって依存関係が決定し、それにそって並列実行を行う
+- 現在のGears OS は 依存関係がある並列処理を行うことが出来ない。 この研究ではGears OS の依存関係の解決を目標とする
+
+# やったこと
+- OS研究会を出しました
+- まえけんと木曜日に torque しました
+- OSC の申し込みしました
+- Gears の meta data segment
+
+# OSC の申し込み
+-  展示
+    - 並列信頼研究室の研究内容について(Alice, Gears, TreeVNC, Jungle)
+- セミナープログラム
+    - 「ソースコードリーディングの理想と現実」
+
+# Gears の Meta Data Gear
+- 現在 Gears では明確に Data Gear と Meta Data Gear 区分けをしていない
+- 依存関係の解決のため、 DS にくっつく List が必要となった
+    - この List は Meta Data Gear
+- そのため、今回 Data Gear と Meta Data Gear を区分けしたい
+
+
+# context.h 
+- 完全に別の所におく
+
+``` c
+struct Context {
+    enum Code next;
+    ....
+};
+
+union MetaData {
+    struct MetaDataGear {
+    } metaDataGear;
+};
+
+union Data {
+    struct Time {
+        enum Code next;
+        double time;
+    } time;
+    ....
+};
+```
+
+# allocate
+- 通常のData Gear と同じでlinear allocate で allocate する
+- その際、 Data Gear と Meta Data Gear を結びつける必要があるので、 それぞれにオフセットを付ける
+
+![meta allocate](./pictures/metaAllocate.svg)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/2016/2016_05_24/slide.md	Sat Jun 11 15:59:17 2016 +0900
@@ -0,0 +1,31 @@
+title: Gears OS
+author: Tatsuki IHA
+profile:
+lang: Japanese
+code-engine: coderay
+
+# 研究目的
+- 当研究室では  処理の単位を Code Gear、 データの単位を Data Gear を用いて 信頼性が高い並列処理を行う Gears OS を開発している
+- Gears OS では Task を Code Gear と実行するときに必要な Input Data Gear と出力するための Output Data Gear の組で表現される。 Input Data Gear/Output Data Gear によって依存関係が決定し、それにそって並列実行を行う
+- 現在のGears OS は 依存関係がある並列処理を行うことが出来ない。 この研究ではGears OS の依存関係の解決を目標とする
+
+# やったこと
+- いっくんとみつきくんと Gears をちょっと読みました
+- ソフトウェアシステム論の準備(Tensorflow)
+- OS研究会の発表スライド書き始めました
+
+# Gears 読み
+- main から読む感じ
+- 最初にContext を生成したので Context の説明
+    - Context がすべての Data Gear , Code Gear stub の参照を持っている とか
+    - Code Gear への継続は Enum で指定しているとか
+- linear Allocate
+- stub
+
+# ソフトウェアシステム論
+- Tensorflow は Python のコードがら C++ のコードを呼び出している
+- その際に swig(simplified Wrapper and interface Generator) というものを使っている
+- Interface file を書けば、対応した言語から C, C++のコードを呼べる
+- swig は python の他にも Java, Perl, Ruby, etc に対応
+- CbC 版が欲しい様な
+- CbC から C++ のコードを呼んでかってに DS とか CS にする感じ
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/2016/2016_06_06/slide.md	Sat Jun 11 15:59:17 2016 +0900
@@ -0,0 +1,37 @@
+title: Gears OS
+author: Tatsuki IHA
+profile:
+lang: Japanese
+code-engine: coderay
+
+# 研究目的
+- 当研究室では  処理の単位を Code Gear、 データの単位を Data Gear を用いて 信頼性が高い並列処理を行う Gears OS を開発している
+- Gears OS では Task を Code Gear と実行するときに必要な Input Data Gear と出力するための Output Data Gear の組で表現される。 Input Data Gear/Output Data Gear によって依存関係が決定し、それにそって並列実行を行う
+- 現在のGears OS は 依存関係がある並列処理を行うことが出来ない。 今研究ではGears OS の依存関係の解決を目標とする
+
+# 今週
+- Synchronized Queue の要素を struct Task から union Data に変更
+
+# 今までの Queue
+- 今までは struct Task のみしか受け取れなかった
+
+``` c
+struct Element {
+    struct Task* task;
+    struct Element* next;
+} element;
+```
+
+# ってことで
+- DS毎にqueueを定義するのは面倒なので union Data でDSを定義
+
+``` c
+struct Element {
+    union Data* data;
+    struct Element* next;
+} element;
+```
+
+# まだよくわかってない
+- DS の型はどう表現するかは未定(Element に持たせるが楽か)
+- 今は決め打ちにDSの型を cast している