comparison May-2013/14th.html @ 0:c9b2998eb516

add slide
author Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
date Tue, 10 Dec 2013 15:25:07 +0900
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:c9b2998eb516
1 <!DOCTYPE html>
2
3 <!--
4 Google HTML5 slide template
5
6 Authors: Luke Mahé (code)
7 Marcin Wichary (code and design)
8
9 Dominic Mazzoni (browser compatibility)
10 Charles Chen (ChromeVox support)
11
12 URL: http://code.google.com/p/html5slides/
13 -->
14
15 <html>
16 <head>
17 <title>2013-05-14</title>
18
19 <meta charset='utf-8'>
20 <script
21 src='http://html5slides.googlecode.com/svn/trunk/slides.js'></script>
22 </head>
23
24 <style>
25 /* Your individual styles here, or just use inline styles if that’s
26 what you want. */
27 .slides article { background-image: none !important; background-color: white; }
28
29
30 </style>
31
32 <body style='display: none'>
33
34 <section class='slides layout-regular template-default'>
35
36 <!-- Your slides (<article>s) go here. Delete or comment out the
37 slides below.-->
38
39 <article>
40 <h1>
41 Ceriumによる
42 <br>
43 正規表現マッチャの実装
44 </h1>
45 <p>
46 Masataka Kohagura
47 <br>
48 14th May , 2013
49 </p>
50 </article>
51
52 <article>
53 <h3>
54 研究目的
55 </h3>
56 <p>
57 本研究室では、Cell用に作られたCeriumにて並列プログラミングを行なっている。様々な例題を実装することにより、どのような問題でも並列処理ができることを証明する。
58 </p>
59 <p>
60 現在は正規表現を実装している段階であるが、「動的なコード生成を用いた正規表現マッチャの実装」で示されたオートマトンを並列実装する。これを実装することによって、Ceriumがオートマトンで表される問題に対して並列実装できることを証明する。
61 </p>
62 </article>
63
64 <article>
65 <h3>
66 word_countのi_data o_data
67 </h3>
68 <div align="center">
69 <IMG SRC="word_count.jpg" ALT="word_count">
70 </div>
71 <p>
72 o_dataは1つのタスク当たり4つの要素が吐き出される。<br>
73 それらの配列をひとまとめにした配列をPrint.ccが読み込み、word_num、line_numの合計数、フラグ管理で正確にカウントできるようにされている。
74 </p>
75 </article>
76
77 <article class='smaller'>
78 <h3>
79 regexのi_data o_data(予定)
80 </h3>
81 <div align="center">
82 <IMG SRC="regex001.jpg" ALT="regex">
83 </div>
84 <h3>
85 問題点
86 </h3>
87 <p>
88 i_dataはword_countと同様にメモリに割り当てられた文字列である。それの先頭に検索したい文字列を入れて、プログラムが検索できるようにしたい。<br>
89 問題点として、o_dataがそのtask内でマッチしたラインの先頭アドレスを格納したいので、1task当たりのo_dataが可変長となる。
90 o_dataのメモリをどう確保するべきなのか。
91 行の途中で分割されてしまった場合、flagをどう持たせたらいいのだろうか。
92 </p>
93 </article>
94
95 <article class='smaller'>
96 <h3>
97 word_count/main.cc run_start()
98 </h3>
99 <section>
100 <pre>
101 /* out用のdivision_size. statusが2つなので、あわせて16byteになるように、<br>long long(4byte)を使用 */
102
103 w->division_out_size = sizeof(unsigned long long)*4;
104 int out_size = w->division_out_size*out_task_num;
105 w->o_data = (unsigned long long *)manager->allocate(out_size);
106 w->out_size = 4;
107 </pre>
108 </article>
109
110 </body>
111 </html>