Mercurial > hg > Papers > 2015 > yuhi-master
changeset 13:6277bb3a73e9
remove subsection
author | Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 04 Feb 2015 16:34:28 +0900 |
parents | e735d95e48d8 |
children | 65a4b30a5a53 |
files | paper/chapter1.tex paper/chapter5.tex paper/master_paper.aux paper/master_paper.dvi paper/master_paper.lof paper/master_paper.log paper/master_paper.lot paper/master_paper.pdf paper/master_paper.toc |
diffstat | 9 files changed, 157 insertions(+), 197 deletions(-) [+] |
line wrap: on
line diff
--- a/paper/chapter1.tex Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/chapter1.tex Wed Feb 04 16:34:28 2015 +0900 @@ -16,7 +16,6 @@ OpenCL では演算用プロセッサ側を device 、制御用デバイス側を host として定義する。 また、 Device 上で動作するプログラムの事を kernel と呼ぶ。 -\subsection{Command Queue} OpenCL では、デバイスの操作に Command Queue を使用する。 Command Queue は Device に命令を送るための仕組みである。 Command Queue は clCreateCommandQueue という OpenCL API で作成され、 Command Queueが所属するコンテキストや実行対象となるデバイスを指定する。 @@ -24,7 +23,6 @@ kernel の実行、input data への書き込み、 output data の読み込みといった メモリ操作はこの Command Queue を通して行われる。 -\subsection{メモリアクセス} host では主に data を input/output するメモリ資源の確保を行う。 GPU のメモリ空間(図:\ref{fig:gpuarch})はマルチコア CPU (図:\ref{fig:cpuarch})と違い、 共有メモリでないため host と kernel(Task)間で data の共有ができない。 @@ -48,7 +46,7 @@ OpenCLは host 側で memory buffer を作成してメモリのコピーを行う。 これらの処理や Task は Command Queue に enqueue することで実行される。 -\subsection{データ並列} + 多次元のデータ構造を扱う計算において高い並列度を保つには、 それを分割して並列に実行する機能が必要である。 データ並列実行という。OpenCLはデータ並列実行もサポートしている。 @@ -65,7 +63,6 @@ データ並列による kernel 実行の場合は clEnqueueNDRangeKernel API を使用するが、 この関数の引数としてワークアイテムのサイズと次元数を指定することでデータ並列で実行できる。 -\subsection{ワークグループ} 前節でワークアイテムという処理単位について述べたが、 さらに複数個のグローバルワークアイテムを work\_group という単位にまとめることができる。 work\_group 内では同期やローカルメモリの共有が可能となる。 @@ -136,7 +133,7 @@ CUDA も OpenCL と同様、演算用プロセッサ( GPU )を Device 、制御用デバイス側を Host として定義する。 また、 Device 上で動作するプログラムの事も kernel と呼ぶ。 -\subsection{Stream} + OpenCL における Command 、 CommandQueue に対応するものとして、 CUDA には Operation と Stream がある。 Stream は Host 側で発行された Operation を一連の動作として Device で実行する。 Stream に発行された Operation は発行された順序で実行されることが保証されている。 @@ -146,7 +143,6 @@ 引数に Stream を指定しない API は全て host 側をブロックする同期的な処理となる。 複数の Stream を同時に走らせ、 Operation を並列に実行するためには非同期的な処理を行う API を利用する必要がある。 -\subsection{データ並列} CUDA では OpenCL の WorkItemに相当する単位を thread として定義している。 この thread をまとめた単位として block がある。 @@ -189,7 +185,6 @@ GPU の制御に OpenCL と CUDA を用いており、どちらかを選択することで GPU 上で実行することができる。 OpenCL と CUDA における実行の単位は kernel だったが、 StarPU では実行の単位を Task と定義している。 -\subsection{codelet} StarPU では Task を制御するためにcodeletと呼ばれる構造体を使う。 codelet を Task 生成時にポインタ渡しすることで、 @@ -204,7 +199,6 @@ }; \end{lstlisting} -\subsection{データ並列} 計算に必要なデータは、 StarPU のデータプールに登録されている必要がある。 StarPU ではデータを starpu\_data\_handle という型で登録する。 Task はこの handle を参照することで値を参照することができる。
--- a/paper/chapter5.tex Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/chapter5.tex Wed Feb 04 16:34:28 2015 +0900 @@ -1,9 +1,10 @@ -\chapter{GPGPUへの対応} +\chapter{GPGPU への対応} Cerium の新たな演算資源として GPU の使用を可能にした。 現在、GPU のような異なる種類のアーキテクチャを搭載した CPU 、つまりヘテロジニアスな CPU が増えている。 特定の計算に特化した Task の生成やスケジューリングを行い、 GPGPU により高い並列度を出す研究は様々な分野で行われている。 本研究では Cerium を特定の計算に限らず、 GPU を用いて汎用計算を行えるフレームワークに改良する。 -\section{OpenCL} +\section{OpenCL による実装} +\subsection{ベンチマーク} OpenCL を用いた GPU 対応を行った。 Scheduler と CpuThreads に対応させる形で GpuScheduler と GpuThreads を実装した。 GpuScheduler 内で OpenCL の API を用いて GPU の制御を行っている。 @@ -14,16 +15,9 @@ Task の終了は、clWaitForEvent によって検出し、TaskManager 間の通信を担当する同期キューである mail を使って通知する。 - -\subsection{OpenCL による実装の機構} -\subsection{ベンチマーク} - -\section{CUDA} -\subsection{CUDA による実装の機構} +\section{CUDA による} \subsection{ベンチマーク} \section{データ並列} -\subsection{データ並列実行の機構} -\subsection{iterate API} \subsection{ベンチマーク}
--- a/paper/master_paper.aux Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/master_paper.aux Wed Feb 04 16:34:28 2015 +0900 @@ -7,103 +7,91 @@ \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {2.1}OpenCL}{3}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.1}Command Queue}{3}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.2}メモリアクセス}{3}} \@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces Gpu Architecture}}{4}} \newlabel{fig:gpuarch}{{2.1}{4}} \@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces Cpu Architecture}}{4}} \newlabel{fig:cpuarch}{{2.2}{4}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.3}データ並列}{5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.4}ワークグループ}{5}} -\@writefile{lot}{\contentsline {table}{\numberline {2.1}{\ignorespaces kernel で使用する ID 取得の API}}{5}} -\newlabel{table:kernel_id_api}{{2.1}{5}} -\@writefile{lof}{\contentsline {figure}{\numberline {2.3}{\ignorespaces WorkItem ID}}{6}} -\newlabel{fig:workitem_id}{{2.3}{6}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.3}{\ignorespaces WorkItem ID}}{5}} +\newlabel{fig:workitem_id}{{2.3}{5}} +\@writefile{lot}{\contentsline {table}{\numberline {2.1}{\ignorespaces kernel で使用する ID 取得の API}}{6}} +\newlabel{table:kernel_id_api}{{2.1}{6}} \@writefile{toc}{\contentsline {section}{\numberline {2.2}CUDA}{6}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.1}Stream}{7}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.2}データ並列}{7}} -\@writefile{lof}{\contentsline {figure}{\numberline {2.4}{\ignorespaces Calculate Index example}}{8}} -\newlabel{fig:calculateIndex}{{2.4}{8}} -\@writefile{toc}{\contentsline {section}{\numberline {2.3}StarPU}{8}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.3.1}codelet}{8}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.4}{\ignorespaces Calculate Index example}}{7}} +\newlabel{fig:calculateIndex}{{2.4}{7}} +\@writefile{toc}{\contentsline {section}{\numberline {2.3}StarPU}{7}} \newlabel{src:codelet}{{2.1}{8}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {2.1}codeletの例}{8}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.3.2}データ並列}{8}} \@writefile{lof}{\contentsline {figure}{\numberline {2.5}{\ignorespaces StarPUにおけるデータ分割}}{9}} \newlabel{fig:data_partition}{{2.5}{9}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第3章}Cerium}{11}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第3章}Cerium}{10}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {3.1}Cerium の概要}{11}} -\@writefile{toc}{\contentsline {section}{\numberline {3.2}Cerium TaskManager}{11}} -\@writefile{toc}{\contentsline {section}{\numberline {3.3}Cerium における Task}{12}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Task Manager}}{12}} -\newlabel{fig:taskmanager}{{3.1}{12}} -\@writefile{toc}{\contentsline {section}{\numberline {3.4}Task の Scheduling}{12}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Scheduler}}{13}} -\newlabel{fig:scheduler}{{3.2}{13}} -\@writefile{toc}{\contentsline {section}{\numberline {3.5}Task 生成の例}{13}} -\newlabel{src:createTask}{{3.1}{13}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}Task の生成}{13}} -\@writefile{lot}{\contentsline {table}{\numberline {3.1}{\ignorespaces Task 生成おける API}}{14}} -\newlabel{table:task_create_api}{{3.1}{14}} -\newlabel{src:task}{{3.2}{14}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.2}Task}{14}} -\@writefile{lot}{\contentsline {table}{\numberline {3.2}{\ignorespaces Task 側で使用する API}}{14}} -\newlabel{table:task_api}{{3.2}{14}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}Ceriumを用いた例題}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {3.1}Cerium の概要}{10}} +\@writefile{toc}{\contentsline {section}{\numberline {3.2}Cerium TaskManager}{10}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}Cerium における Task}{11}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Task Manager}}{11}} +\newlabel{fig:taskmanager}{{3.1}{11}} +\@writefile{toc}{\contentsline {section}{\numberline {3.4}Task の Scheduling}{11}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Scheduler}}{12}} +\newlabel{fig:scheduler}{{3.2}{12}} +\@writefile{toc}{\contentsline {section}{\numberline {3.5}Task 生成の例}{12}} +\newlabel{src:createTask}{{3.1}{12}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}Task の生成}{12}} +\@writefile{lot}{\contentsline {table}{\numberline {3.1}{\ignorespaces Task 生成おける API}}{13}} +\newlabel{table:task_create_api}{{3.1}{13}} +\newlabel{src:task}{{3.2}{13}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.2}Task}{13}} +\@writefile{lot}{\contentsline {table}{\numberline {3.2}{\ignorespaces Task 側で使用する API}}{13}} +\newlabel{table:task_api}{{3.2}{13}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}Ceriumを用いた例題}{14}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {4.1}Bitonic Sort}{15}} -\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces Bitonic Sort の例}}{16}} -\newlabel{fig:sort}{{4.1}{16}} -\@writefile{toc}{\contentsline {section}{\numberline {4.2}Word Count}{17}} -\@writefile{lof}{\contentsline {figure}{\numberline {4.2}{\ignorespaces WordCountのフロー}}{18}} -\newlabel{fig:wordcount}{{4.2}{18}} -\@writefile{toc}{\contentsline {section}{\numberline {4.3}FFT}{19}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}マルチコアへの対応}{20}} +\@writefile{toc}{\contentsline {section}{\numberline {4.1}Bitonic Sort}{14}} +\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces Bitonic Sort の例}}{15}} +\newlabel{fig:sort}{{4.1}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {4.2}Word Count}{16}} +\@writefile{lof}{\contentsline {figure}{\numberline {4.2}{\ignorespaces WordCountのフロー}}{17}} +\newlabel{fig:wordcount}{{4.2}{17}} +\@writefile{toc}{\contentsline {section}{\numberline {4.3}FFT}{18}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}マルチコアへの対応}{19}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {5.1}マルチコア上での実行の機構}{20}} -\@writefile{toc}{\contentsline {section}{\numberline {5.2}ベンチマーク}{20}} -\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces Ceriumを実行する実験環境1}}{20}} -\newlabel{tab:firefly_spec}{{5.1}{20}} -\@writefile{lot}{\contentsline {table}{\numberline {5.2}{\ignorespaces Ceriumを実行する実験環境2}}{21}} -\newlabel{tab:dragonfly_spec}{{5.2}{21}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第6章}GPGPUへの対応}{22}} +\@writefile{toc}{\contentsline {section}{\numberline {5.1}マルチコア上での実行の機構}{19}} +\@writefile{toc}{\contentsline {section}{\numberline {5.2}ベンチマーク}{19}} +\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces Ceriumを実行する実験環境1}}{19}} +\newlabel{tab:firefly_spec}{{5.1}{19}} +\@writefile{lot}{\contentsline {table}{\numberline {5.2}{\ignorespaces Ceriumを実行する実験環境2}}{20}} +\newlabel{tab:dragonfly_spec}{{5.2}{20}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第6章}GPGPU への対応}{21}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {6.1}OpenCL}{22}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}OpenCL による実装の機構}{23}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}ベンチマーク}{23}} -\@writefile{toc}{\contentsline {section}{\numberline {6.2}CUDA}{23}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}CUDA による実装の機構}{23}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}ベンチマーク}{23}} -\@writefile{toc}{\contentsline {section}{\numberline {6.3}データ並列}{23}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}データ並列実行の機構}{23}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}iterate API}{23}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}ベンチマーク}{23}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第7章}並列処理向けI/O}{24}} +\@writefile{toc}{\contentsline {section}{\numberline {6.1}OpenCL による実装}{21}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}ベンチマーク}{21}} +\@writefile{toc}{\contentsline {section}{\numberline {6.2}CUDA による}{21}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}ベンチマーク}{21}} +\@writefile{toc}{\contentsline {section}{\numberline {6.3}データ並列}{21}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}ベンチマーク}{21}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第7章}並列処理向けI/O}{22}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {7.1}新たに実装したI/Oの機構}{24}} -\@writefile{toc}{\contentsline {section}{\numberline {7.2}ベンチマーク}{24}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第8章}Memory Allocator}{25}} +\@writefile{toc}{\contentsline {section}{\numberline {7.1}新たに実装したI/Oの機構}{22}} +\@writefile{toc}{\contentsline {section}{\numberline {7.2}ベンチマーク}{22}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第8章}Memory Allocator}{23}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {8.1}現状のMemory Allocator}{25}} -\@writefile{toc}{\contentsline {section}{\numberline {8.2}新しいMemory Allocator}{25}} -\@writefile{toc}{\contentsline {section}{\numberline {8.3}ベンチマーク}{25}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第9章}結論}{26}} +\@writefile{toc}{\contentsline {section}{\numberline {8.1}現状のMemory Allocator}{23}} +\@writefile{toc}{\contentsline {section}{\numberline {8.2}新しいMemory Allocator}{23}} +\@writefile{toc}{\contentsline {section}{\numberline {8.3}ベンチマーク}{23}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第9章}結論}{24}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\newlabel{chapter:conclusion}{{9}{26}} -\@writefile{toc}{\contentsline {section}{\numberline {9.1}まとめ}{26}} -\@writefile{toc}{\contentsline {section}{\numberline {9.2}今後の課題}{26}} +\newlabel{chapter:conclusion}{{9}{24}} +\@writefile{toc}{\contentsline {section}{\numberline {9.1}まとめ}{24}} +\@writefile{toc}{\contentsline {section}{\numberline {9.2}今後の課題}{24}} \citation{*} \bibstyle{junsrt} \bibdata{master_paper} -\@writefile{toc}{\contentsline {chapter}{謝辞}{27}} +\@writefile{toc}{\contentsline {chapter}{謝辞}{25}} \bibcite{msgpack:2013}{1} \bibcite{nobuyasu:2013a}{2} \bibcite{shoshi:2011a}{3} @@ -114,5 +102,5 @@ \bibcite{dynamo}{8} \bibcite{deos2013}{9} \bibcite{d_add2013}{10} -\@writefile{toc}{\contentsline {chapter}{参考文献}{28}} -\@writefile{toc}{\contentsline {chapter}{発表文献}{29}} +\@writefile{toc}{\contentsline {chapter}{参考文献}{26}} +\@writefile{toc}{\contentsline {chapter}{発表文献}{27}}
--- a/paper/master_paper.lof Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/master_paper.lof Wed Feb 04 16:34:28 2015 +0900 @@ -2,15 +2,15 @@ \addvspace {10\p@ } \contentsline {figure}{\numberline {2.1}{\ignorespaces Gpu Architecture}}{4} \contentsline {figure}{\numberline {2.2}{\ignorespaces Cpu Architecture}}{4} -\contentsline {figure}{\numberline {2.3}{\ignorespaces WorkItem ID}}{6} -\contentsline {figure}{\numberline {2.4}{\ignorespaces Calculate Index example}}{8} +\contentsline {figure}{\numberline {2.3}{\ignorespaces WorkItem ID}}{5} +\contentsline {figure}{\numberline {2.4}{\ignorespaces Calculate Index example}}{7} \contentsline {figure}{\numberline {2.5}{\ignorespaces StarPUにおけるデータ分割}}{9} \addvspace {10\p@ } -\contentsline {figure}{\numberline {3.1}{\ignorespaces Task Manager}}{12} -\contentsline {figure}{\numberline {3.2}{\ignorespaces Scheduler}}{13} +\contentsline {figure}{\numberline {3.1}{\ignorespaces Task Manager}}{11} +\contentsline {figure}{\numberline {3.2}{\ignorespaces Scheduler}}{12} \addvspace {10\p@ } -\contentsline {figure}{\numberline {4.1}{\ignorespaces Bitonic Sort の例}}{16} -\contentsline {figure}{\numberline {4.2}{\ignorespaces WordCountのフロー}}{18} +\contentsline {figure}{\numberline {4.1}{\ignorespaces Bitonic Sort の例}}{15} +\contentsline {figure}{\numberline {4.2}{\ignorespaces WordCountのフロー}}{17} \addvspace {10\p@ } \addvspace {10\p@ } \addvspace {10\p@ }
--- a/paper/master_paper.log Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/master_paper.log Wed Feb 04 16:34:28 2015 +0900 @@ -1,4 +1,4 @@ -This is e-pTeX, Version 3.1415926-p3.4-110825-2.6 (utf8.euc) (TeX Live 2013) (format=platex 2013.5.30) 3 FEB 2015 18:01 +This is e-pTeX, Version 3.1415926-p3.4-110825-2.6 (utf8.euc) (TeX Live 2013) (format=platex 2013.5.30) 4 FEB 2015 16:33 entering extended mode \write18 enabled. %&-line parsing enabled. @@ -221,15 +221,15 @@ LaTeX Font Info: External font `cmex10' loaded for size (Font) <6> on input line 2. LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <10> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 31. +(Font) Font shape `JT1/gt/m/n' tried instead on input line 30. LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <10> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 31. +(Font) Font shape `JY1/gt/m/n' tried instead on input line 30. LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <10.95> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 31. +(Font) Font shape `JT1/gt/m/n' tried instead on input line 30. LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <10.95> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 31. +(Font) Font shape `JY1/gt/m/n' tried instead on input line 30. LaTeX Font Info: External font `cmex10' loaded for size -(Font) <10.95> on input line 31. +(Font) <10.95> on input line 30. [1 ]) @@ -270,10 +270,6 @@ ) LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <12> not available (Font) Font shape `OMS/cmsy/m/n' tried instead on input line 9. -LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <14.4> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 19. -LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <14.4> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 19. File: ./images/gpu_arch.pdf Graphic file (type pdf) <./images/gpu_arch.pdf> @@ -297,19 +293,17 @@ <images/emblem-bitmap.eps> [7] LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10> not available -(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 200. +(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 195. File: ./images/starpu_data_parallel.pdf Graphic file (type pdf) - <./images/starpu_data_parallel.pdf> -File: images/emblem-bitmap.eps Graphic file (type eps) - -<images/emblem-bitmap.eps> [8] + <./images/starpu_data_parallel.pdf>) +(./chapter2.tex File: images/emblem-bitmap.eps Graphic file (type eps) - <images/emblem-bitmap.eps> [9]) (./chapter2.tex + <images/emblem-bitmap.eps> [8] File: images/emblem-bitmap.eps Graphic file (type eps) - -<images/emblem-bitmap.eps> [10] -第 3 章(11ページ) -[11 + <images/emblem-bitmap.eps> +[9] +第 3 章(10ページ) +[10 ] File: ./images/createTask.pdf Graphic file (type pdf) @@ -318,7 +312,7 @@ <./images/scheduler.pdf> File: images/emblem-bitmap.eps Graphic file (type eps) -<images/emblem-bitmap.eps> [12] +<images/emblem-bitmap.eps> [11] LaTeX Font Warning: Font shape `JT1/mc/m/it' undefined (Font) using `JT1/mc/m/n' instead on input line 66. @@ -339,18 +333,18 @@ (Font) Font shape `OML/cmm/m/it' tried instead on input line 67. File: images/emblem-bitmap.eps Graphic file (type eps) -<images/emblem-bitmap.eps> [13]) (./chapter3.tex +<images/emblem-bitmap.eps> [12]) (./chapter3.tex File: images/emblem-bitmap.eps Graphic file (type eps) <images/emblem-bitmap.eps> -[14] -第 4 章(15ページ) -[15 +[13] +第 4 章(14ページ) +[14 ] File: ./images/sort.pdf Graphic file (type pdf) <./images/sort.pdf> File: images/emblem-bitmap.eps Graphic file (type eps) - <images/emblem-bitmap.eps> [16] + <images/emblem-bitmap.eps> [15] File: ./images/wordcount.pdf Graphic file (type pdf) <./images/wordcount.pdf> @@ -359,38 +353,40 @@ [] File: images/emblem-bitmap.eps Graphic file (type eps) -<images/emblem-bitmap.eps> [17] +<images/emblem-bitmap.eps> [16] File: images/emblem-bitmap.eps Graphic file (type eps) - <images/emblem-bitmap.eps> [18]) + <images/emblem-bitmap.eps> [17]) (./chapter4.tex File: images/emblem-bitmap.eps Graphic file (type eps) - <images/emblem-bitmap.eps> [19 - -] -第 5 章(20ページ) -) (./chapter5.tex [20 + <images/emblem-bitmap.eps> [18 ] +第 5 章(19ページ) +[19 + +]) (./chapter5.tex File: images/emblem-bitmap.eps Graphic file (type eps) - <images/emblem-bitmap.eps> [21] -第 6 章(22ページ) -) (./chapter6.tex [22 + <images/emblem-bitmap.eps> [20] +第 6 章(21ページ) +LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <14.4> not available +(Font) Font shape `JT1/gt/m/n' tried instead on input line 7. +LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <14.4> not available +(Font) Font shape `JY1/gt/m/n' tried instead on input line 7. +) (./chapter6.tex [21 ] -File: images/emblem-bitmap.eps Graphic file (type eps) - <images/emblem-bitmap.eps> [23] -第 7 章(24ページ) -) (./chapter7.tex [24 +第 7 章(22ページ) +) (./chapter7.tex [22 ] -第 8 章(25ページ) -) (./conclusion.tex [25 +第 8 章(23ページ) +) (./conclusion.tex [23 ] -第 9 章(26ページ) -) (./thanx.tex [26 +第 9 章(24ページ) +) (./thanx.tex [24 -]) (./master_paper.bbl [27 +]) (./master_paper.bbl [25 ] @@ -401,11 +397,11 @@ LaTeX Font Warning: Font shape `JY1/gt/m/it' undefined (Font) using `JY1/gt/m/n' instead on input line 25. -) (./appendix.tex [28 +) (./appendix.tex [26 ]) No file master_paper.ind. -[29 +[27 ] (./master_paper.aux) @@ -419,6 +415,6 @@ 5856 multiletter control sequences out of 15000+600000 20103 words of font info for 78 fonts, out of 8000000 for 9000 745 hyphenation exceptions out of 8191 - 33i,12n,40p,301b,1252s stack positions out of 5000i,500n,10000p,200000b,80000s + 32i,11n,40p,301b,1252s stack positions out of 5000i,500n,10000p,200000b,80000s -Output written on master_paper.dvi (36 pages, 80308 bytes). +Output written on master_paper.dvi (34 pages, 75508 bytes).
--- a/paper/master_paper.lot Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/master_paper.lot Wed Feb 04 16:34:28 2015 +0900 @@ -1,13 +1,13 @@ \addvspace {10\p@ } \addvspace {10\p@ } -\contentsline {table}{\numberline {2.1}{\ignorespaces kernel で使用する ID 取得の API}}{5} +\contentsline {table}{\numberline {2.1}{\ignorespaces kernel で使用する ID 取得の API}}{6} \addvspace {10\p@ } -\contentsline {table}{\numberline {3.1}{\ignorespaces Task 生成おける API}}{14} -\contentsline {table}{\numberline {3.2}{\ignorespaces Task 側で使用する API}}{14} +\contentsline {table}{\numberline {3.1}{\ignorespaces Task 生成おける API}}{13} +\contentsline {table}{\numberline {3.2}{\ignorespaces Task 側で使用する API}}{13} \addvspace {10\p@ } \addvspace {10\p@ } -\contentsline {table}{\numberline {5.1}{\ignorespaces Ceriumを実行する実験環境1}}{20} -\contentsline {table}{\numberline {5.2}{\ignorespaces Ceriumを実行する実験環境2}}{21} +\contentsline {table}{\numberline {5.1}{\ignorespaces Ceriumを実行する実験環境1}}{19} +\contentsline {table}{\numberline {5.2}{\ignorespaces Ceriumを実行する実験環境2}}{20} \addvspace {10\p@ } \addvspace {10\p@ } \addvspace {10\p@ }
--- a/paper/master_paper.toc Wed Feb 04 16:21:37 2015 +0900 +++ b/paper/master_paper.toc Wed Feb 04 16:34:28 2015 +0900 @@ -2,50 +2,38 @@ \contentsline {section}{\numberline {1.1}本論文の構成}{2} \contentsline {chapter}{\numberline {第2章}既存のマルチプラットフォームフレームワーク}{3} \contentsline {section}{\numberline {2.1}OpenCL}{3} -\contentsline {subsection}{\numberline {2.1.1}Command Queue}{3} -\contentsline {subsection}{\numberline {2.1.2}メモリアクセス}{3} -\contentsline {subsection}{\numberline {2.1.3}データ並列}{5} -\contentsline {subsection}{\numberline {2.1.4}ワークグループ}{5} \contentsline {section}{\numberline {2.2}CUDA}{6} -\contentsline {subsection}{\numberline {2.2.1}Stream}{7} -\contentsline {subsection}{\numberline {2.2.2}データ並列}{7} -\contentsline {section}{\numberline {2.3}StarPU}{8} -\contentsline {subsection}{\numberline {2.3.1}codelet}{8} -\contentsline {subsection}{\numberline {2.3.2}データ並列}{8} -\contentsline {chapter}{\numberline {第3章}Cerium}{11} -\contentsline {section}{\numberline {3.1}Cerium の概要}{11} -\contentsline {section}{\numberline {3.2}Cerium TaskManager}{11} -\contentsline {section}{\numberline {3.3}Cerium における Task}{12} -\contentsline {section}{\numberline {3.4}Task の Scheduling}{12} -\contentsline {section}{\numberline {3.5}Task 生成の例}{13} -\contentsline {chapter}{\numberline {第4章}Ceriumを用いた例題}{15} -\contentsline {section}{\numberline {4.1}Bitonic Sort}{15} -\contentsline {section}{\numberline {4.2}Word Count}{17} -\contentsline {section}{\numberline {4.3}FFT}{19} -\contentsline {chapter}{\numberline {第5章}マルチコアへの対応}{20} -\contentsline {section}{\numberline {5.1}マルチコア上での実行の機構}{20} -\contentsline {section}{\numberline {5.2}ベンチマーク}{20} -\contentsline {chapter}{\numberline {第6章}GPGPUへの対応}{22} -\contentsline {section}{\numberline {6.1}OpenCL}{22} -\contentsline {subsection}{\numberline {6.1.1}OpenCL による実装の機構}{23} -\contentsline {subsection}{\numberline {6.1.2}ベンチマーク}{23} -\contentsline {section}{\numberline {6.2}CUDA}{23} -\contentsline {subsection}{\numberline {6.2.1}CUDA による実装の機構}{23} -\contentsline {subsection}{\numberline {6.2.2}ベンチマーク}{23} -\contentsline {section}{\numberline {6.3}データ並列}{23} -\contentsline {subsection}{\numberline {6.3.1}データ並列実行の機構}{23} -\contentsline {subsection}{\numberline {6.3.2}iterate API}{23} -\contentsline {subsection}{\numberline {6.3.3}ベンチマーク}{23} -\contentsline {chapter}{\numberline {第7章}並列処理向けI/O}{24} -\contentsline {section}{\numberline {7.1}新たに実装したI/Oの機構}{24} -\contentsline {section}{\numberline {7.2}ベンチマーク}{24} -\contentsline {chapter}{\numberline {第8章}Memory Allocator}{25} -\contentsline {section}{\numberline {8.1}現状のMemory Allocator}{25} -\contentsline {section}{\numberline {8.2}新しいMemory Allocator}{25} -\contentsline {section}{\numberline {8.3}ベンチマーク}{25} -\contentsline {chapter}{\numberline {第9章}結論}{26} -\contentsline {section}{\numberline {9.1}まとめ}{26} -\contentsline {section}{\numberline {9.2}今後の課題}{26} -\contentsline {chapter}{謝辞}{27} -\contentsline {chapter}{参考文献}{28} -\contentsline {chapter}{発表文献}{29} +\contentsline {section}{\numberline {2.3}StarPU}{7} +\contentsline {chapter}{\numberline {第3章}Cerium}{10} +\contentsline {section}{\numberline {3.1}Cerium の概要}{10} +\contentsline {section}{\numberline {3.2}Cerium TaskManager}{10} +\contentsline {section}{\numberline {3.3}Cerium における Task}{11} +\contentsline {section}{\numberline {3.4}Task の Scheduling}{11} +\contentsline {section}{\numberline {3.5}Task 生成の例}{12} +\contentsline {chapter}{\numberline {第4章}Ceriumを用いた例題}{14} +\contentsline {section}{\numberline {4.1}Bitonic Sort}{14} +\contentsline {section}{\numberline {4.2}Word Count}{16} +\contentsline {section}{\numberline {4.3}FFT}{18} +\contentsline {chapter}{\numberline {第5章}マルチコアへの対応}{19} +\contentsline {section}{\numberline {5.1}マルチコア上での実行の機構}{19} +\contentsline {section}{\numberline {5.2}ベンチマーク}{19} +\contentsline {chapter}{\numberline {第6章}GPGPU への対応}{21} +\contentsline {section}{\numberline {6.1}OpenCL による実装}{21} +\contentsline {subsection}{\numberline {6.1.1}ベンチマーク}{21} +\contentsline {section}{\numberline {6.2}CUDA による}{21} +\contentsline {subsection}{\numberline {6.2.1}ベンチマーク}{21} +\contentsline {section}{\numberline {6.3}データ並列}{21} +\contentsline {subsection}{\numberline {6.3.1}ベンチマーク}{21} +\contentsline {chapter}{\numberline {第7章}並列処理向けI/O}{22} +\contentsline {section}{\numberline {7.1}新たに実装したI/Oの機構}{22} +\contentsline {section}{\numberline {7.2}ベンチマーク}{22} +\contentsline {chapter}{\numberline {第8章}Memory Allocator}{23} +\contentsline {section}{\numberline {8.1}現状のMemory Allocator}{23} +\contentsline {section}{\numberline {8.2}新しいMemory Allocator}{23} +\contentsline {section}{\numberline {8.3}ベンチマーク}{23} +\contentsline {chapter}{\numberline {第9章}結論}{24} +\contentsline {section}{\numberline {9.1}まとめ}{24} +\contentsline {section}{\numberline {9.2}今後の課題}{24} +\contentsline {chapter}{謝辞}{25} +\contentsline {chapter}{参考文献}{26} +\contentsline {chapter}{発表文献}{27}