view paper/chapter3.tex @ 1:5dbcea03717e draft

fix
author Yutaka_Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
date Tue, 07 Feb 2012 17:38:59 +0900
parents 6d80c2c895e4
children 181befc58e1d 6cf0f731cbde
line wrap: on
line source

\chapter{TaskManagerを使った例題}
本章では、TaskManager を使った例題を紹介する
\section{WordCount}
例題としTaskManagerを使ったWordCountを実装した。Taskの構成は以下のである。
\begin{enumerate}
\item WordCountTask
\item PrintTask
\end{enumerate}
WordCountTaskは、input された data を word count し、単語数と行数を output に指定された data 領域に書きこむTaskである。
分割されたデータが送られてくるため、分割された前後のテキストがどうなっているかはわからない。そのため担当範囲であるデータの先頭と末尾のパラメータを単語数と行数の他に付け加える。後にそのデータを他のword count 結果と照らし合わせ、分割されたテキストを正しく整合する。
PrintTask は WordCountTask によって書き出された単語数と行数を集計し、出力するTaskである。WordCountTask を wait する設定で、すべてのWordCountTaskが終了したあとに、動作する。
word count 対象として入力されたファイルは、mmapを用いてメモリに展開する。その後データを16kbyteの大きさに分割しながら、WordCountTaskに割り当てていく。(\figref{wc-graf})

\begin{figure}[htb]
  \begin{center}
    \includegraphics[scale=0.70]{./images/wc_graf1.pdf}
  \end{center}
  \caption{wordcount flow}
  \label{fig:wc-graf}
\end{figure}


\section{Sort}

\section{Prime}