1
|
1 <map version="1.0.1">
|
|
2 <!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
|
|
3 <node CREATED="1462348402043" ID="ID_446513167" MODIFIED="1462351253237" TEXT="sigos">
|
|
4 <node CREATED="1462348437829" ID="ID_188609327" MODIFIED="1462348569768" POSITION="right" TEXT="GearsOS の目的">
|
|
5 <node CREATED="1462348448573" ID="ID_578864329" MODIFIED="1462348517113" TEXT="並列処理のソフトウェアを信頼性高く記述したい">
|
|
6 <node CREATED="1462350142598" ID="ID_195511088" MODIFIED="1462352199049" TEXT="信頼性はデータの正しさ、 依存関係の保証">
|
|
7 <node CREATED="1462352205923" ID="ID_1296922065" MODIFIED="1462352217558" TEXT="プログラムが実行時に落ちない"/>
|
|
8 </node>
|
|
9 </node>
|
|
10 <node CREATED="1462348478958" ID="ID_230418586" MODIFIED="1462348550107" TEXT="そのための並列プログラミングフレームワーク"/>
|
|
11 <node CREATED="1462348569980" ID="ID_1045100452" MODIFIED="1462348588151" TEXT="Code Gear と Data Gear を使ったプログラミングスタイル">
|
|
12 <node CREATED="1462348590792" ID="ID_1143997676" MODIFIED="1462348626311" TEXT="Code Gear の実行には IDG, ODG が必要"/>
|
|
13 </node>
|
|
14 <node CREATED="1462351262027" ID="ID_1393749566" MODIFIED="1462351283363" TEXT="Meta Code Gear と Meta Data Gear を使った meta computation"/>
|
|
15 </node>
|
|
16 <node CREATED="1462348637268" ID="ID_133255598" MODIFIED="1462352298817" POSITION="right" TEXT="Code Gear, Data Gear">
|
|
17 <node CREATED="1462349979947" ID="ID_331147222" MODIFIED="1462350000355" TEXT="CG は IDG と ODG の組で扱われる"/>
|
|
18 <node CREATED="1462350976298" ID="ID_957667219" MODIFIED="1462351033115" TEXT="Code Gear の実行時間, メモリ使用量を見積もり を予測可能とする"/>
|
|
19 <node CREATED="1462351137808" ID="ID_1330709102" MODIFIED="1462351214283" TEXT="Code Gear 間の移動はfunction call ではなく継続を使って移動する"/>
|
|
20 <node CREATED="1462352302972" ID="ID_1170614307" MODIFIED="1462352324205" TEXT="Code Gear 間に meta Code Gear を入れることで meta computation を行う"/>
|
|
21 </node>
|
|
22 <node CREATED="1462348657027" ID="ID_365384552" MODIFIED="1462348658957" POSITION="right" TEXT="CbC">
|
|
23 <node CREATED="1462350082941" ID="ID_1656989444" MODIFIED="1462350092777" TEXT="cs を使ったプログラミング"/>
|
|
24 <node CREATED="1462350071241" ID="ID_1577864204" MODIFIED="1462351130232" TEXT="function call ではなく、gotoを使った軽量継続"/>
|
|
25 <node CREATED="1462351047073" ID="ID_1369238896" MODIFIED="1462351052642" TEXT="Gears OS 向けのサポート">
|
|
26 <node CREATED="1462351053970" ID="ID_1462663940" MODIFIED="1462351087389" TEXT="自動的にメタレベルに継続する"/>
|
|
27 </node>
|
|
28 <node CREATED="1462354584971" ID="ID_1112062286" MODIFIED="1462354587253" TEXT="runtime">
|
|
29 <node CREATED="1462354587254" ID="ID_1347666144" MODIFIED="1462354951474" TEXT="いま手動で書いているcontext のaccessを動的に管理する"/>
|
|
30 <node CREATED="1462354908955" ID="ID_337501830" MODIFIED="1462354915938" TEXT="方法は複数ある">
|
|
31 <node CREATED="1462354605037" ID="ID_847250633" MODIFIED="1462354618572" TEXT="dynamic loading"/>
|
|
32 <node CREATED="1462354654178" ID="ID_1600780671" MODIFIED="1462354668817" TEXT="別のruntimeに接続する"/>
|
|
33 <node CREATED="1462354620437" ID="ID_373703789" MODIFIED="1462354626027" TEXT="jit"/>
|
|
34 <node CREATED="1462354630299" ID="ID_824873344" MODIFIED="1462354904682" TEXT="llvm の jit はmulti threadと相性良くない">
|
|
35 <node CREATED="1462354719261" ID="ID_379483068" MODIFIED="1462354732376" TEXT="jit を管理する thread を用意すれば良い"/>
|
|
36 </node>
|
|
37 </node>
|
|
38 </node>
|
|
39 </node>
|
|
40 <node CREATED="1462348668437" ID="ID_1673745629" MODIFIED="1462349761749" POSITION="right" TEXT="prototype Gears OS の構成">
|
|
41 <node CREATED="1462349973369" ID="ID_1442808291" MODIFIED="1462349977277" TEXT="Context">
|
|
42 <node CREATED="1462351295043" ID="ID_607637945" MODIFIED="1462351314558" TEXT="meta data Gear の代表例"/>
|
|
43 <node CREATED="1462351320747" ID="ID_98116235" MODIFIED="1462351330415" TEXT="すべてのデータを"/>
|
|
44 </node>
|
|
45 <node CREATED="1462349894637" ID="ID_1988169245" MODIFIED="1462349899016" TEXT="Allocator"/>
|
|
46 <node CREATED="1462348674238" ID="ID_333502750" MODIFIED="1462354459036" TEXT="Synchronized Queue">
|
|
47 <node CREATED="1462353382231" ID="ID_948991469" MODIFIED="1462353386482" TEXT="CAS での実装"/>
|
|
48 </node>
|
|
49 <node CREATED="1462348678433" ID="ID_1967908081" MODIFIED="1462348691508" TEXT="Persistent Data Tree">
|
|
50 <node CREATED="1462353421481" ID="ID_833499509" MODIFIED="1462353426520" TEXT="RBTree"/>
|
|
51 <node CREATED="1462353528876" ID="ID_1076530622" MODIFIED="1462353531581" TEXT="非破壊"/>
|
|
52 </node>
|
|
53 <node CREATED="1462348691931" ID="ID_832934708" MODIFIED="1462348693484" TEXT="Worker">
|
|
54 <node CREATED="1462353591922" ID="ID_940938167" MODIFIED="1462353690441" TEXT="Active Task Queue から Task を取得し、実行する"/>
|
|
55 </node>
|
|
56 <node CREATED="1462349962869" ID="ID_1254874686" MODIFIED="1462349969516" TEXT="TaskManager">
|
|
57 <node CREATED="1462353621044" ID="ID_919832986" MODIFIED="1462353631290" TEXT="Task の依存関係を解決する"/>
|
|
58 <node CREATED="1462353633665" ID="ID_1490974106" MODIFIED="1462353707841" TEXT="Wait task queue の Task から"/>
|
|
59 </node>
|
|
60 </node>
|
|
61 <node CREATED="1462348731906" ID="ID_368656261" MODIFIED="1462348735202" POSITION="right" TEXT="依存関係の解決">
|
|
62 <node CREATED="1462350098255" ID="ID_281344382" MODIFIED="1462353737680" TEXT="DS に 依存関係にある Task のQueueを持たせる">
|
|
63 <node CREATED="1462353738656" ID="ID_1020279599" MODIFIED="1462353747193" TEXT="Cerium でいう wait_me か"/>
|
|
64 </node>
|
|
65 <node CREATED="1462350114802" ID="ID_75333431" MODIFIED="1462350114802" TEXT=""/>
|
|
66 </node>
|
|
67 <node CREATED="1462348727866" ID="ID_915757053" MODIFIED="1462348759426" POSITION="right" TEXT="GPU"/>
|
|
68 <node CREATED="1462349697404" ID="ID_129394562" MODIFIED="1462349699922" POSITION="right" TEXT="評価">
|
|
69 <node CREATED="1462349699923" ID="ID_1461425159" MODIFIED="1462349702500" TEXT="Twice"/>
|
|
70 <node CREATED="1462349705698" ID="ID_1378958216" MODIFIED="1462349705698" TEXT=""/>
|
|
71 </node>
|
|
72 </node>
|
|
73 </map>
|