Mercurial > hg > Papers > 2014 > masakoha-thesis > final
changeset 19:36958c5e0b90
add slide pages 8-17
author | Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 31 Jan 2014 23:49:02 +0900 |
parents | e735ac7509c6 |
children | 7b4609c77ac1 |
files | paper/fig/fig.graffle slide/index.html |
diffstat | 2 files changed, 123 insertions(+), 109 deletions(-) [+] |
line wrap: on
line diff
--- a/paper/fig/fig.graffle Thu Jan 30 19:55:28 2014 +0900 +++ b/paper/fig/fig.graffle Fri Jan 31 23:49:02 2014 +0900 @@ -26,7 +26,7 @@ <key>MasterSheets</key> <array/> <key>ModificationDate</key> - <string>2014-01-30 09:44:24 +0000</string> + <string>2014-01-31 10:09:34 +0000</string> <key>Modifier</key> <string>MasaKoha</string> <key>NotesVisible</key> @@ -243,8 +243,8 @@ <integer>51</integer> <key>Points</key> <array> - <string>{289.49999909181315, 249.09607114673688}</string> - <string>{333.5000030945593, 249.17895606666326}</string> + <string>{289.49999991705135, 249.02768765074879}</string> + <string>{333.50000024696612, 249.05157503592648}</string> </array> <key>Style</key> <dict> @@ -276,8 +276,8 @@ <integer>50</integer> <key>Points</key> <array> - <string>{129.88006358058934, 210.16780584070199}</string> - <string>{193.49136532333424, 232.83095557438625}</string> + <string>{129.78980017208514, 210.16810527836222}</string> + <string>{193.27459171556478, 232.83168050611309}</string> </array> <key>Style</key> <dict> @@ -309,8 +309,8 @@ <integer>49</integer> <key>Points</key> <array> - <string>{189.59775698691453, 156.16940234575466}</string> - <string>{129.44447355269742, 177.83073988701349}</string> + <string>{189.58742189266738, 156.16936752188897}</string> + <string>{129.42029288911706, 177.83065846961293}</string> </array> <key>Style</key> <dict> @@ -408,8 +408,8 @@ <integer>46</integer> <key>Points</key> <array> - <string>{285.50000000038938, 72.010950396119398}</string> - <string>{333.50000003776938, 72.021256651298529}</string> + <string>{285.50000000000006, 72.002906027987635}</string> + <string>{333.50000000000404, 72.00564111315245}</string> </array> <key>Style</key> <dict> @@ -441,8 +441,8 @@ <integer>45</integer> <key>Points</key> <array> - <string>{135.50000000000003, 71.997751477910086}</string> - <string>{183.50000000000406, 71.995635221825466}</string> + <string>{135.5, 71.999403284771361}</string> + <string>{183.5, 71.998841670438537}</string> </array> <key>Style</key> <dict> @@ -1430,46 +1430,6 @@ </dict> <dict> <key>Bounds</key> - <string>{{403.82454785863121, 146.36728136843453}, {50.167503718794457, 15}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>34</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg932\cocoartf1265 -\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc - -\f0\fs24 \cf0 Task}</string> - </dict> - </dict> - <dict> - <key>Bounds</key> - <string>{{353.65704280460278, 146.367281207855}, {50.167503718794457, 15}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>ID</key> - <integer>33</integer> - <key>Shape</key> - <string>Rectangle</string> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg932\cocoartf1265 -\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc - -\f0\fs24 \cf0 Task}</string> - </dict> - </dict> - <dict> - <key>Bounds</key> <string>{{148.65370289116089, 146.36729116627507}, {50.167503718794457, 15}}</string> <key>Class</key> <string>ShapedGraphic</string> @@ -1509,31 +1469,6 @@ </dict> </dict> <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>ID</key> - <integer>29</integer> - <key>Points</key> - <array> - <string>{300.82288846180796, 120.94518440256009}</string> - <string>{300.82288846180796, 142.05071193960632}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>0</string> - <key>Legacy</key> - <true/> - <key>Pattern</key> - <integer>2</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - </dict> - <dict> <key>Bounds</key> <string>{{148.65370522018668, 99.573320474733848}, {50.167503718794457, 15}}</string> <key>Class</key> @@ -1714,31 +1649,6 @@ </dict> </dict> <dict> - <key>Class</key> - <string>LineGraphic</string> - <key>ID</key> - <integer>17</integer> - <key>Points</key> - <array> - <string>{274.90077141372291, 153.36728988654082}</string> - <string>{327.74499123085997, 153.68889761849127}</string> - </array> - <key>Style</key> - <dict> - <key>stroke</key> - <dict> - <key>HeadArrow</key> - <string>0</string> - <key>Legacy</key> - <true/> - <key>Pattern</key> - <integer>2</integer> - <key>TailArrow</key> - <string>0</string> - </dict> - </dict> - </dict> - <dict> <key>Bounds</key> <string>{{98.48619982764292, 52.779350107999477}, {50.167503718794457, 15}}</string> <key>Class</key>
--- a/slide/index.html Thu Jan 30 19:55:28 2014 +0900 +++ b/slide/index.html Fri Jan 31 23:49:02 2014 +0900 @@ -27,6 +27,7 @@ <h3 class="title">Masataka Kohagura 12th, February</h3> <div align="right">担当教官 : 河野 真治</div> </article> + <article > <h3>研究背景と目的</h3> <p> @@ -40,6 +41,16 @@ </p> </article> + <article > + <h3>Cerium とは</h3> + <p> + </p> + <p> + </p> + <p> + </p> + </article> + <article> <h3>Cerium の流れ</h3> <table border="0" cellpadding="0" cellspacing="0"> @@ -187,10 +198,11 @@ </ul> </article> +<!-- <article> <h3>divide read の実装(1)</h3> <br> - <h3 class="yellow">Read Task の生成</h3> + <h3 class="yellow">Read Task の ブロック化</h3> <pre> program_run(TaskManager *manager, char *filename) { @@ -204,21 +216,113 @@ read->spawn(); } </pre> - <p> - divide read Task の実行の際に、ブロック単位で Task の生成、実行を行う。 - </p> + </article> + + <article> + <h3>divide read の実装(2)</h3> + <br> + <ul> + <li> + divide read Task の実行の際に、ブロック単位で Task の生成、実行を行う。 + </li> + <li> + 1つずつ生成すると Task の数だけ memory address が取られるために肥大化してしまう。 + </li> + <li> + しかしブロック単位で生成すると、同じ変数を使用しているので memory の節約になる。 + </li> + + </li> + </ul> + </article> +--> + + <article> + <h3>divide read の実装(1)</h3> + <br> + <h3 class="yellow">divide Read の実装</h3> + <pre> +// 生成するTaskが何番目か +read->set_param(0,(long)w->read_task_number); +// 1つの Read Task で読み込む量 +read->set_param(1,(long)w->read_division_size); +// read_left_size : 残り読み込み量 +if(w->read_left_size <= w->read_division_size){ + read->set_param(2,(long)w->read_left_size); +}else{ + read->set_param(2,(long)w->read_division_size); +} +// ファイルディスクリプタを渡す +read->set_param(3,(long)w->fd); + +//生成するTaskが何番目か +read->set_outData + (0,w->file_mmap + w->read_task_number*w->read_division_size, + w->read_division_size); +</pre> </article> <article> <h3>divide read の実装(2)</h3> <br> - <h3 class="yellow">ブロック単位で生成、実行を行う理由</h3> - <ul> - <li> + <h3 class="yellow">divide Read の記述</h3> + <pre> +static int +read_task(SchedTask *s, void *rbuf, void *wbuf) +{ + long task_number = (long)s->get_param(0); + long division_size = (long)s->get_param(1); + long read_size = (long)s->get_param(2); + long fd = (long)s->get_param(3); + + char *read_text = (char*)s->get_output(wbuf,0); + + pread(fd, read_text, (long)read_size , division_size*task_number); + + return 0; +} +</pre> + </article> - </li> + <article> + <h3>divide read を実装した例題</h3> + <br> + <ul> + <li> + Boyer Moore String Search Algorithm を使用した文字列検索 + </li> + <li> + 検索対象の文字列が、あるファイルの中にいくつ存在するかカウントする例題 + </li> </ul> + </article> + <article> + <h3>ベンチマーク</h3> + <br> + <h3 class="yellow">考察</h3> + </article> + + <article> + <h3>まとめ</h3> + <br> + </article> + + <article> + <h3>大学院に進学してしたいこと</h3> + <br> + <ul> + <li> + さらなる 並列処理向け I/O の動作を改善 + </li> + <li> + 動作の軽いソフトウェアシンセサイザーを Cerium で実装 + </li> + </ul> + + </article> + + </body> </html>