# HG changeset patch
# User masa
# Date 1392910016 -32400
# Node ID 22740fb4d522cb0ae0d15fbe8a55e572eafc5f55
# Parent e8dd2f96d046eff22d55cae07ea484bfe05f0652
write mmap
diff -r e8dd2f96d046 -r 22740fb4d522 paper/chapter4.tex
--- a/paper/chapter4.tex Thu Feb 20 17:22:38 2014 +0900
+++ b/paper/chapter4.tex Fri Feb 21 00:26:56 2014 +0900
@@ -3,12 +3,55 @@
\section{map reduce}
+\begin{figure}[htbp]
+\begin{center}
+\includegraphics[width=1.0\textwidth]{fig/mapreduce.pdf}
+\end{center}
+\caption{map reduce image}
+\label{fig:mmap} \end{figure}
+
\section{mmap での実装の問題点}
-・mmap の仕様
+mmap とは、sys/mman.h に含まれている関数で、ファイルの読み込み等に使用される関数である。
+ファイルディスクリプタで指定したファイルを offset から len バイトの範囲を読み込む。
+この時にアドレス addr からメモリを確保するようにする。
+prot には、PROT\_READによるページの読み込み、PROT\_WRITEによるページへの書き込みなどを指定でき、
+flags にはメモリ確保する際のオプションを指定することができる。\ref{table:mmap}
+
+\begin{tiny}
+ \begin{table}[ht]
+ \begin{center}
+ \label{table:mmap}
+ \small
+ void * mmap(void *addr, size\_t len, int prot, int flags, int fd, off\_t offset);
- mmap の細かい話をここで書く
+ \begin{tabular}[t]{c|l}
+ \hline
+ void *addr & メモリに確保するときの先頭のアドレス\\
+ \hline
+ size\_t len & メモリを確保するサイズ\\
+ \hline
+ int prot & ファイルモード選択\\
+ \hline
+ int flags & 確保するときのオプション指定\\
+ \hline
+ int fd & 読み込むファイルのファイルディスクリプタ\\
+ \hline
+ off\_t offset & ファイル読み込みの先頭からの開始位置 \\
+ \hline
+ \end{tabular}
+ \caption{mmap 関数の概要}
+ \end{center}
+ \end{table}
+\end{tiny}
-mmap でファイルを読み込むタイミングは、mmap 関数を使用したときではない。mmap した領域に対して何らかのアクセスをしたときに初めてファイルが読み込まれる。
+mmap でファイルを読み込むタイミングは、mmap 関数が呼ばれたときではなく、mmap した領域に対して何らかのアクセスをしたときに初めてファイルが読み込まれる。
+
+図\ref{fig:mmap}では、読み込んだファイルを分割して、それらの領域に何らかの処理を加えるときの図である。これらの処理を Task と呼ぶ。
+Task 1 という1個目の Task が実行される。実行されたときに初めてそれらの領域にファイルが読み込まれ、その後何らかの処理が行われ、そして Task 2 も同様に読み込みを行ってから処理が行われる。
+これら Task は並列に実行されるべきであるが、ファイル読み込みの I/O 部分がネックとなり、本来並列実行される Task が読み込み待ちを起こしてしまう恐れがある。
+その上、読み込み方法が OS 依存となるために環境によって左右されやすく、プログラムの書き手が読み込みに関して制御しにくい。
+
+それらを解決するためには、ファイル読み込みと Task を分離し、ファイルの読み込みも制御しやすくでき、なおかつ高速で動くのではないかと考えた。
\begin{figure}[htbp]
\begin{center}
@@ -17,24 +60,6 @@
\caption{mmap のイメージ}
\label{fig:mmap} \end{figure}
-mmap は kernel 部分での実装によるものなので、OS に依存されてしまう。
-・ mmap は kernel 部分の実装によるものなので、OS によってかわってしまう。
-
-・ mmap が呼び出されているときにファイルを読み込むわけではない。仮想メモリに格納されているだけ。
-
-・ mmap された領域に対してアクセスされたときに初めて実メモリに呼び出される。
-
-図\ref{fig:mmap}
-
-
-・ OS によってうごきが変わってしまうので、自分自身で制御できない
-
-・ 並列処理でファイル読み込みを行う Task を扱うと、1つ1つの Task が[読み込む → Task が走る]
-
-・ I/O 読み込みはネックになるが、そのネックが Task 1つ1つにふりかかる。
-
-・ I/O と Task を完全に分けたほうがいいのでは。と考えた。
-
\section{Broked Read の設計と実装}
・ I/O を mmap ではなく、pread 関数で実装した
diff -r e8dd2f96d046 -r 22740fb4d522 paper/fig/blockread.graffle
--- a/paper/fig/blockread.graffle Thu Feb 20 17:22:38 2014 +0900
+++ b/paper/fig/blockread.graffle Fri Feb 21 00:26:56 2014 +0900
@@ -26,9 +26,9 @@
MasterSheets
ModificationDate
- 2014-02-19 08:14:22 +0000
+ 2014-02-20 14:36:27 +0000
Modifier
- MasaKoha
+ masataka kohagura
NotesVisible
NO
OriginVisible
@@ -55,7 +55,7 @@
NSPaperSize
size
- {595.00000476837158, 842}
+ {595, 842}
NSPrintReverseOrientation
@@ -85,7 +85,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {1118.0000095367432, 783}}
+ {{0, 0}, {1118, 783}}
Class
SolidGraphic
ID
@@ -1382,7 +1382,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -2222,7 +2222,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -3030,7 +3030,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -3726,7 +3726,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -4316,7 +4316,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -4876,7 +4876,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -7387,7 +7387,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {1118.0000095367432, 783}}
+ {{0, 0}, {1118, 783}}
Class
SolidGraphic
ID
@@ -9927,7 +9927,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -19168,7 +19168,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -21213,7 +21213,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -23926,7 +23926,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -26341,7 +26341,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -28168,7 +28168,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -28303,8 +28303,8 @@
553
Points
- {132.36103293347102, 232.07150599490603}
- {132.36106557516933, 248.50654822205897}
+ {132.36103293869587, 232.07150599490603}
+ {132.36106559184367, 248.50654822205897}
Style
@@ -28340,8 +28340,8 @@
552
Points
- {157.72335149550153, 232.07150597754608}
- {157.7233836900713, 248.5065476340697}
+ {157.72335141891162, 232.07150597754608}
+ {157.72338344564685, 248.5065476340697}
Style
@@ -28377,8 +28377,8 @@
551
Points
- {183.08567166474919, 232.0715095184045}
- {183.08570434789129, 248.50654826977546}
+ {183.0856716444957, 232.0715095184045}
+ {183.08570428325555, 248.50654826977546}
Style
@@ -30346,7 +30346,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {559.00000476837158, 783}}
+ {{0, 0}, {559, 783}}
Class
SolidGraphic
ID
@@ -31665,7 +31665,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {1118.0000095367432, 783}}
+ {{0, 0}, {1118, 783}}
Class
SolidGraphic
ID
@@ -33330,7 +33330,7 @@
BackgroundGraphic
Bounds
- {{0, 0}, {1118.0000095367432, 783}}
+ {{0, 0}, {1118, 783}}
Class
SolidGraphic
ID
@@ -35044,6 +35044,1741 @@
VPages
1
+
+ ActiveLayerIndex
+ 0
+ AutoAdjust
+
+ BackgroundGraphic
+
+ Bounds
+ {{0, 0}, {559, 783}}
+ Class
+ SolidGraphic
+ ID
+ 2
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+
+ BaseZoom
+ 0
+ CanvasOrigin
+ {0, 0}
+ ColumnAlign
+ 1
+ ColumnSpacing
+ 36
+ DisplayScale
+ 1 0/72 in = 1.0000 in
+ GraphicsList
+
+
+ Bounds
+ {{242.41607280367006, 548.55553539778384}, {81.463137313527341, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 96
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 DS \'d7 task num}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{242.41604461219262, 508.80553045155182}, {102.62709463610148, 28}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 95
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Align
+ 0
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural
+
+\f0\fs24 \cf0 [src]\
+DS;}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{242.41606086337939, 469.05552994814781}, {102.62709463610148, 28}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 94
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Align
+ 0
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural
+
+\f0\fs24 \cf0 [reduce]\
+task num;}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{242.41606086337939, 401.30553941599771}, {102.62709463610148, 56}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 93
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Align
+ 0
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural
+
+\f0\fs24 \cf0 [map]\
+task num;\
+inData = fileblocks;\
+outData = DS;}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{209.07869938665962, 375.55554892300592}, {169.30184092209089, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 91
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 MapReduce(map,reduce,src)}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{388.43354813091935, 206.18577968069192}, {54, 27.310923056518021}}
+ Class
+ ShapedGraphic
+ FontInfo
+
+ Color
+
+ b
+ 1
+ g
+ 1
+ r
+ 1
+
+
+ ID
+ 86
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Color
+
+ b
+ 1
+ g
+ 0
+ r
+ 0
+
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ CornerRadius
+ 9
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf1 reduce}
+
+
+
+ Bounds
+ {{254.88515692570439, 289.71085932252026}, {35.433071398293073, 27.310923056518021}}
+ Class
+ ShapedGraphic
+ FontInfo
+
+ Color
+
+ b
+ 1
+ g
+ 1
+ r
+ 1
+
+
+ ID
+ 4
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Color
+
+ b
+ 1
+ g
+ 0
+ r
+ 0
+
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ CornerRadius
+ 9
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf1 map}
+
+
+
+ Bounds
+ {{99.999999041864925, 336.42051868510498}, {176.17548225077354, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 84
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 DS : Data Segment}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{329.24834526539792, 117.67127216271368}, {81.463137313527341, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 83
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 wait for DS}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{243.88976493164088, 66.259255664279038}, {81.463137313527341, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 82
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 spawn DS}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{165.26627324696224, 59.259258212703131}, {81.463137313527341, 28}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 81
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 wait for\
+file read}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{209.07869991629107, 319.72115565429419}, {67.096776257692653, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 80
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 NDRange}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{117.21653282182854, 319.72115442771599}, {67.096776257692653, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 77
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 Cerium}
+ VerticalPad
+ 0
+
+
+
+ AllowToConnect
+
+ Class
+ LineGraphic
+ ID
+ 74
+ Points
+
+ {341.86584513143976, 253.66476934783077}
+ {380.3066578611747, 211.2167148771924}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+
+
+ AllowToConnect
+
+ Class
+ LineGraphic
+ ID
+ 73
+ Points
+
+ {341.86583188370969, 233.49670309070993}
+ {368.12178561394489, 206.18578003419194}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+
+
+ AllowToConnect
+
+ Class
+ LineGraphic
+ ID
+ 72
+ Points
+
+ {341.86583188370969, 160.38746290864728}
+ {368.1217844974974, 188.34200803011507}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+
+
+ AllowToConnect
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 62
+
+ ID
+ 70
+ Points
+
+ {341.86584513143976, 143.16057298068878}
+ {378.50651797510295, 184.1767507589588}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 52
+
+ ID
+ 69
+ Points
+
+ {287.39141517937776, 261.12084931031353}
+ {263.5079591670966, 269.06794244140059}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ FilledArrow
+
+
+ Tail
+
+ ID
+ 60
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 51
+
+ ID
+ 68
+ Points
+
+ {287.36668611439308, 234.2798402329239}
+ {267.64789226450119, 235.4249656846188}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ FilledArrow
+
+
+ Tail
+
+ ID
+ 59
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 50
+
+ ID
+ 67
+ Points
+
+ {287.36666394281065, 160.19905736749354}
+ {267.6479089388468, 159.05394838136525}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ FilledArrow
+
+
+ Tail
+
+ ID
+ 55
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 28
+
+ ID
+ 66
+ Points
+
+ {287.39140211169376, 133.35804581130162}
+ {263.50798251259681, 125.41097989648119}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ FilledArrow
+
+
+ Tail
+
+ ID
+ 54
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 52
+
+ ID
+ 65
+ Points
+
+ {181.63598451295803, 262.47277946515339}
+ {191.80789890658932, 253.29921570905844}
+ {212.35765330484233, 253.29921570905844}
+ {225.76468571828983, 264.56145477864015}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+ Tail
+
+ ID
+ 47
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 51
+
+ ID
+ 64
+ Points
+
+ {180.05816762613657, 222.68085587893208}
+ {191.80789376886767, 210.89872323676454}
+ {212.35764816712063, 210.89872323676454}
+ {226.85845272979398, 224.44266155136057}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+ Tail
+
+ ID
+ 46
+
+
+
+ Class
+ LineGraphic
+ ID
+ 63
+ Points
+
+ {180.27231672314932, 143.53164879550511}
+ {191.80790294741374, 132.85200477392701}
+ {212.35765734566669, 132.85200477392701}
+ {225.81004116434357, 145.30621858185688}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+
+
+ Class
+ LineGraphic
+ Head
+
+ ID
+ 28
+
+ ID
+ 35
+ Points
+
+ {181.23069342851116, 103.37704719929881}
+ {192.76627965277558, 92.697403177720687}
+ {213.31603405102859, 92.697403177720687}
+ {226.76841786970544, 105.15161698565052}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ LineType
+ 1
+ TailArrow
+ Arrow
+
+
+ Tail
+
+ ID
+ 1
+
+
+
+ Bounds
+ {{363.17573184196499, 183.26218970144342}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 62
+ Shape
+ Circle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 print}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{287.86584054216667, 242.33088234514204}, {54, 19.295995712280273}}
+ Class
+ ShapedGraphic
+ ID
+ 60
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 DS}
+
+
+
+ Bounds
+ {{287.86584513143976, 223.03488938207519}, {54, 19.295995712280273}}
+ Class
+ ShapedGraphic
+ ID
+ 59
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 DS}
+
+
+
+ Class
+ LineGraphic
+ ID
+ 58
+ Points
+
+ {314.36578847390081, 183.26216910861453}
+ {314.36578847390081, 211.2167148771924}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ Pattern
+ 2
+ TailArrow
+ 0
+
+
+
+
+ Bounds
+ {{287.86582298874112, 152.14799269137089}, {54, 19.295995712280273}}
+ Class
+ ShapedGraphic
+ ID
+ 55
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 DS}
+
+
+
+ Bounds
+ {{287.8658275780142, 132.85199972830398}, {54, 19.295995712280273}}
+ Class
+ ShapedGraphic
+ ID
+ 54
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 DS}
+
+
+
+ Bounds
+ {{213.31602108687596, 262.80766376930353}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 52
+ Shape
+ Circle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 task}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{213.31602108687596, 223.03493092281334}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 51
+ Shape
+ Circle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 task}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{213.31603405102854, 143.48945685495173}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 50
+ Shape
+ Circle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 task}
+ VerticalPad
+ 0
+
+
+
+ Bounds
+ {{213.31603405102859, 103.71672400846133}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 28
+ Shape
+ Circle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 task}
+ VerticalPad
+ 0
+
+
+
+ Class
+ LineGraphic
+ ID
+ 48
+ Points
+
+ {165.26627488093757, 183.26218666204076}
+ {165.26627488093757, 211.21673243061869}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ Pattern
+ 2
+ TailArrow
+ 0
+
+
+
+
+ Bounds
+ {{138.76627276886589, 262.80764162659648}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 47
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 file read}
+
+
+
+ Bounds
+ {{138.76627276886589, 223.03489581595906}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 46
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 file read}
+
+
+
+ Bounds
+ {{138.76627276886589, 143.48945226567864}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 45
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 file read}
+
+
+
+ Bounds
+ {{138.76627965277558, 103.71672630309787}, {54, 27.954545768578228}}
+ Class
+ ShapedGraphic
+ ID
+ 1
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+ Text
+
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 file read}
+
+
+
+ Bounds
+ {{99.999998233936481, 289.710876759602}, {35.433071398293073, 14}}
+ Class
+ ShapedGraphic
+ FitText
+ Vertical
+ Flow
+ Resize
+ ID
+ 44
+ Shape
+ Rectangle
+ Style
+
+ fill
+
+ Draws
+ NO
+
+ shadow
+
+ Draws
+ NO
+
+ stroke
+
+ Draws
+ NO
+
+
+ Text
+
+ Pad
+ 0
+ Text
+ {\rtf1\ansi\ansicpg932\cocoartf1265
+\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf0 FILE}
+ VerticalPad
+ 0
+
+
+
+ Class
+ LineGraphic
+ ID
+ 43
+ Points
+
+ {117.21652858486596, 262.80763005446465}
+ {117.21652858486596, 290.76217582304253}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ NegativeControls
+ Legacy
+
+ TailArrow
+ NegativeControls
+
+
+
+
+ Class
+ LineGraphic
+ ID
+ 42
+ Points
+
+ {117.21652858486596, 223.03490154432578}
+ {117.21652858486596, 250.98944731290354}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ NegativeControls
+ Legacy
+
+ TailArrow
+ NegativeControls
+
+
+
+
+ Class
+ LineGraphic
+ ID
+ 40
+ Points
+
+ {117.21652858486601, 183.26217787078312}
+ {117.21652858486601, 211.21672363936099}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ 0
+ Legacy
+
+ Pattern
+ 2
+ TailArrow
+ 0
+
+
+
+
+ Class
+ LineGraphic
+ ID
+ 39
+ Points
+
+ {117.21653342146274, 143.48945705826318}
+ {117.21653342146274, 171.44400282684146}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ NegativeControls
+ Legacy
+
+ TailArrow
+ NegativeControls
+
+
+
+
+ Class
+ LineGraphic
+ ID
+ 38
+ Points
+
+ {117.21652858486607, 103.71672957002347}
+ {117.21652858486607, 131.6712753386017}
+
+ Style
+
+ stroke
+
+ HeadArrow
+ NegativeControls
+ Legacy
+
+ TailArrow
+ NegativeControls
+
+
+
+
+ Bounds
+ {{99.999998233936509, 96.614089928107333}, {102.62709463610148, 207.09678649902344}}
+ Class
+ ShapedGraphic
+ ID
+ 75
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+
+
+ Bounds
+ {{209.07870390362567, 96.614093715018058}, {67.096776257692653, 207.09678649902344}}
+ Class
+ ShapedGraphic
+ ID
+ 78
+ Shape
+ Rectangle
+ Style
+
+ shadow
+
+ Draws
+ NO
+
+
+
+
+ GridInfo
+
+ HPages
+ 1
+ KeepToScale
+
+ Layers
+
+
+ Lock
+ NO
+ Name
+ レイヤー 1
+ Print
+ YES
+ View
+ YES
+
+
+ LayoutInfo
+
+ Animate
+ NO
+ circoMinDist
+ 18
+ circoSeparation
+ 0.0
+ layoutEngine
+ dot
+ neatoSeparation
+ 0.0
+ twopiSeparation
+ 0.0
+
+ Orientation
+ 2
+ PrintOnePage
+
+ RowAlign
+ 1
+ RowSpacing
+ 36
+ SheetTitle
+ キャンバス 18
+ UniqueID
+ 20
+ VPages
+ 1
+
SmartAlignmentGuidesActive
YES
@@ -35054,11 +36789,11 @@
WindowInfo
CurrentSheet
- 15
+ 17
ExpandedCanvases
Frame
- {{915, 48}, {1184, 874}}
+ {{625, 1234}, {1184, 874}}
ListView
OutlineWidth
@@ -35072,7 +36807,7 @@
SidebarWidth
120
VisibleRegion
- {{0, 0}, {777.03702331406953, 532.59258318666912}}
+ {{-108.99999999999997, 25.925925468057606}, {777.03702331406942, 544.44443482920974}}
Zoom
1.3500000238418579
ZoomValues
@@ -35162,6 +36897,11 @@
1.3500000238418579
1
+
+ キャンバス 18
+ 1.3500000238418579
+ 1
+
diff -r e8dd2f96d046 -r 22740fb4d522 paper/fig/mapreduce.bb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/fig/mapreduce.bb Fri Feb 21 00:26:56 2014 +0900
@@ -0,0 +1,5 @@
+%%Title: ./fig/mapreduce.pdf
+%%Creator: extractbb 20090506
+%%BoundingBox: 0 0 366 310
+%%CreationDate: Thu Feb 20 23:36:54 2014
+
diff -r e8dd2f96d046 -r 22740fb4d522 paper/fig/mapreduce.pdf
Binary file paper/fig/mapreduce.pdf has changed
diff -r e8dd2f96d046 -r 22740fb4d522 paper/thesis-paper.pdf
Binary file paper/thesis-paper.pdf has changed