Mercurial > hg > Members > masakoha > masa
comparison Oct-2013/1st.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-10-01</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 1st October , 2013 | |
49 </p> | |
50 </article> | |
51 | |
52 <article> | |
53 <h3> | |
54 研究目的 | |
55 </h3> | |
56 <p> | |
57 本研究室では、Cell用に作られたCeriumにて並列プログラミングを行なっている。様々な例題を実装することにより、どのような問題でも並列処理ができることを証明する。 | |
58 </p> | |
59 <p> | |
60 現在は文字列サーチを実装している段階で、ボイヤームーア法を実装している。 | |
61 セミグループという、分割したファイルに対して並列処理をさせるような手法によって、既存の文字列サーチと処理速度を比較し、どれだけ速く、どれだけ効率よくなるのかを測定する。 | |
62 </p> | |
63 <p> | |
64 並列処理は逐次処理よりも処理時間を短縮できる可能性があるが、I/O命令がボトルネックになる。 | |
65 このボトルネックを軽減させるにはどのような処理をさせればよいのか考察し、処理全体の効率化の改善を図る。 | |
66 </p> | |
67 </article> | |
68 | |
69 | |
70 <article class='smaller'> | |
71 <h3>mmapからfreadへの書き換え(1)</h3> | |
72 <p>変更前</p> | |
73 <section><pre> | |
74 static st_mmap_t | |
75 my_mmap(char *filename) | |
76 { | |
77 int fd = -1; | |
78 int map = MAP_PRIVATE; | |
79 st_mmap_t st_mmap; | |
80 struct stat sb; | |
81 | |
82 if ((fd=open(filename,O_RDONLY,0666))==0) { | |
83 fprintf(stderr,"can't open %s\n",filename); | |
84 } | |
85 | |
86 if (fstat(fd,&sb)) { | |
87 fprintf(stderr,"can't fstat %s\n",filename); | |
88 } | |
89 | |
90 st_mmap.size = fix_byte(sb.st_size,4096); | |
91 | |
92 st_mmap.file_mmap = (char*)mmap(NULL,st_mmap.size,PROT_READ,map,fd,(off_t)0); if (st_mmap.file_mmap == (caddr_t)-1) { | |
93 fprintf(stderr,"Can't mmap file\n"); | |
94 perror(NULL); | |
95 exit(0); | |
96 } | |
97 return st_mmap; | |
98 } | |
99 </pre></section> | |
100 </article> | |
101 | |
102 <article class='smaller'> | |
103 <h3>mmapからfreadへの書き換え(2)</h3> | |
104 <p>変更後</p> | |
105 <section><pre> | |
106 my_fread(TaskManager *manager,char *filename) | |
107 { | |
108 FILE *fd; | |
109 st_mmap_t st_mmap; | |
110 struct stat sb; | |
111 | |
112 if ((fd=fopen(filename,"r"))==NULL) { | |
113 fprintf(stderr,"can't open %s\n",filename); | |
114 } | |
115 | |
116 if (fstat(fileno(fd),&sb)) { | |
117 fprintf(stderr,"can't fstat %s\n",filename); | |
118 } | |
119 | |
120 st_mmap.size = fix_byte(sb.st_size,4096); | |
121 | |
122 st_mmap.file_mmap = (char*)manager->allocate(st_mmap.size); | |
123 fread(st_mmap.file_mmap,st_mmap.size,1,fd); | |
124 if (st_mmap.file_mmap == (caddr_t)-1) { | |
125 fprintf(stderr,"Can't mmap file\n"); | |
126 perror(NULL); | |
127 exit(0); | |
128 } | |
129 return st_mmap; | |
130 } | |
131 </pre></section> | |
132 </article> | |
133 </body> | |
134 </html> |