# HG changeset patch # User Masataka Kohagura # Date 1455217027 -32400 # Node ID a82607c0089d5ef84047f29b1cdb0ed8975c57a4 # Parent f0368ed308eb196a343e20f95add1f9c7e7e1cfd add diff -r f0368ed308eb -r a82607c0089d c4.tex --- a/c4.tex Fri Feb 12 02:42:42 2016 +0900 +++ b/c4.tex Fri Feb 12 03:57:07 2016 +0900 @@ -244,8 +244,6 @@ \end{figure} -これらの条件踏まえた上で正規表現木を生成していく。 - また、以下よりメタ文字を含まない文字や文字クラスのことを文字、文字が連接されている場合を文字列、全ての文字が含まれている場合は正規表現と表現する。 正規表現木は与えられた正規表現を先頭から一文字ずつ読み込み、読み込んだ文字やメタ文字を一定のルールに従って生成していく。 diff -r f0368ed308eb -r a82607c0089d c5.tex --- a/c5.tex Fri Feb 12 02:42:42 2016 +0900 +++ b/c5.tex Fri Feb 12 03:57:07 2016 +0900 @@ -1,8 +1,34 @@ -\chapter{評価・考察} +\chapter{ベンチマーク} +本項で行なった実験の環境は以下の通りである。 +\begin{itemize} +\item Mac OS X 10.10.5 +\item 2*2.66 GHz 6-Core Intel Xeon +\item Memory 16GB 1333MHz DDR3 +\item 1TB HDD +\end{itemize} -\section{I/O の測定} \section{Word Count} +図\ref{fig:wordcount} + +\begin{figure}[htpb] + \begin{center} + \includegraphics[scale=0.6]{images/result/wordcount.pdf} + \end{center} + \caption{ファイル読み込み無しの Word Count} + \label{fig:wordcount} +\end{figure} + + +図\ref{fig:IOwordcount} + +\begin{figure}[htpb] + \begin{center} + \includegraphics[scale=0.6]{images/result/IOwordcount.pdf} + \end{center} + \caption{ファイル読み込みを含む Word Count} + \label{fig:IOwordcount} +\end{figure} \section{正規表現} @@ -11,3 +37,47 @@ \item 並列処理時に NFA・DFA を分割した Task に配りそれぞれの Taskで 照らし合わせる。照らし合わせた際に NFA だとわかった場合にはその場で Subset Construction し DFA を生成する。 \end{itemize} +図\ref{fig:AZaz} + +\begin{figure}[htpb] + \begin{center} + \includegraphics[scale=0.6]{images/result/AZaz.pdf} + \end{center} + \caption{AZaz} + \label{fig:AZaz} +\end{figure} + +図\ref{fig:abab} + +\begin{figure}[htpb] + \begin{center} + \includegraphics[scale=0.6]{images/result/abab.pdf} + \end{center} + \caption{abab} + \label{fig:abab} +\end{figure} + + +表\ref{table:metachar} + +\begin{tiny} + \begin{table}[ht] + \begin{center} + \begin{tabular}[t]{c|r|r} + \hline + 実行方式 & ファイル読み込み有 & ファイル読み込み無\\ + \hline + DFAの状態遷移での逐次実行 & 21.171 & 16.150\\ + \hline + 並列処理(CPU 2) & 27.061 & 15.401\\ + \hline + 並列処理(CPU 12) & 10.419 & 7.386\\ + \hline + egrep & 57.753 & --- \\ + \hline + \end{tabular} + \caption{実装したそれぞれのプログラムと egrep との比較} + \label{table:metachar} + \end{center} + \end{table} +\end{tiny} diff -r f0368ed308eb -r a82607c0089d images/result/wordcount.pdf Binary file images/result/wordcount.pdf has changed diff -r f0368ed308eb -r a82607c0089d images/result/wordcountresult.pdf Binary file images/result/wordcountresult.pdf has changed diff -r f0368ed308eb -r a82607c0089d master_paper.pdf Binary file master_paper.pdf has changed diff -r f0368ed308eb -r a82607c0089d memo/result.txt --- a/memo/result.txt Fri Feb 12 02:42:42 2016 +0900 +++ b/memo/result.txt Fri Feb 12 03:57:07 2016 +0900 @@ -1,5 +1,48 @@ Wed Feb 10 11:06:12 JST 2016 + + + +[file 読み込みなし] + +'[A-Z][A-Za-z0-9]*' 500MB.txt +./regexParser -ts 16.150 +./cerium/ceriumGrep -cpu 12 7.386 +./cerium/ceriumGrep -cpu 2 15.401 +./cerium/ceriumGrep -cpu 1 25.534 + + +./cerium/ceriumGrep -cpu 2 -regex '[A-Z][A-Za-z0-9]*' -file file/500MB.txt > 24.73s user 0.57s system 164% cpu 15.401 total + +./regexParser -regex '[A-Z][A-Za-z0-9]*' -ts -file file/500MB.txt > /dev/null 15.96s user 0.17s system 99% cpu 16.150 total + +./cerium/ceriumGrep -cpu 12 -regex '[A-Z][A-Za-z0-9]*' -file file/500MB.txt > 27.08s user 0.66s system 375% cpu 7.386 total + +./cerium/ceriumGrep -regex '[A-Z][A-Za-z0-9]*' -file file/500MB.txt > 25.09s user 0.53s system 100% cpu 25.534 total + +./sequentialSearchCbC -file file/500MB.txt > /dev/null 10.47s user 0.17s system 99% cpu 10.647 total + +[file 読み込みあり] + +'[A-Z][A-Za-z0-9]*' 500MB.txt +./regexParser -ts 21.171 +./cerium/ceriumGrep -cpu 12 10.419 +./cerium/ceriumGrep -cpu 2 27.061 +egrep 57.753 + +./cerium/ceriumGrep -cpu 2 -regex '[A-Z][A-Za-z0-9]*' -file file/500MB.txt > 25.00s user 0.74s system 95% cpu 27.061 total + +./regexParser -regex '[A-Z][A-Za-z0-9]*' -ts -file file/500MB.txt > /dev/null 15.98s user 0.23s system 76% cpu 21.171 total + +./cerium/ceriumGrep -regex '[A-Z][A-Za-z0-9]*' -file file/500MB.txt > 24.50s user 0.66s system 65% cpu 38.293 total + +./cerium/ceriumGrep -cpu 12 -regex '[A-Z][A-Za-z0-9]*' -file file/500MB.txt > 25.65s user 0.83s system 254% cpu 10.419 total + +egrep -o '[A-Z][A-Za-z0-9]*' file/500MB.txt > /dev/null 57.46s user 0.23s system 99% cpu 57.753 total + +./sequentialSearchCbC -file file/500MB.txt > /dev/null 10.51s user 0.22s system 64% cpu 16.530 total + + [word count] [firefly] cache あり