Mercurial > hg > Papers > 2014 > masakoha-sigos
changeset 13:d5040bb4527d
fix
author | Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 21 Apr 2014 13:57:22 +0900 |
parents | 6f6f482b9f12 |
children | 6e9ee8c1f303 |
files | paper/io.tex |
diffstat | 1 files changed, 4 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/paper/io.tex Sun Apr 20 22:21:07 2014 +0900 +++ b/paper/io.tex Mon Apr 21 13:57:22 2014 +0900 @@ -1,12 +1,10 @@ \section{並列処理向け I/O の設計と実装} -\subsection{従来のファイル読み込みの実装と問題点} 従来は mmap や read でファイルの読み込みの実装を行っていた。 -read で実装を行うと、ファイル読み込みを行ってから Task が並列に動く。 -しかし、ファイルの大きさが大きくなると、read の時間が大きくなってしまう。 -読み込んでいる間 Task が走らないので、CPU の待ち時間が増えてオーバーヘッドとなる。 mmap とは、sys/mman.h に含まれている関数で、ファイルの読み込み等に使用される関数である。 +ユーザ(プロセスの)メモリ空間にファイルのマッピングを行う UNIX のシステムコールであり、 +mmapした領域にアクセスされるときに、そのファイルが実メモリに展開される。 \begin{tiny} \begin{table}[ht] @@ -212,6 +210,8 @@ %\end{figure} IO\_0 は、SPE\_ANY よりも priority を高く設定しているので、IO\_0 で設定された Read Task に SPE\_ANY で設定した 文字列検索 Task に割り込まれることがなくなる。 +Cerium では、並列処理を pthread で記述しており、pthread\_getschedparam()でIO\_0 の priority を設定している。 +pthread\_getschedparam は、〜をする関数である。 (図\ref{fig:io0}) \begin{figure}[htbp]