Mercurial > hg > Papers > 2018 > suruga-thesis
changeset 13:f7e3cd237e51
fix
author | suruga |
---|---|
date | Sun, 18 Feb 2018 02:33:23 +0900 |
parents | b09b86ae9c81 |
children | 91879dd23dd0 |
files | paper/.DS_Store paper/final_main/.DS_Store paper/final_main/chapter3.tex paper/final_main/main.aux paper/final_main/main.dvi paper/final_main/main.lof paper/final_main/main.log paper/final_main/main.lol paper/final_main/main.pdf paper/final_main/main.tex paper/final_main/main.toc paper/final_main/thanks.tex |
diffstat | 12 files changed, 126 insertions(+), 75 deletions(-) [+] |
line wrap: on
line diff
--- a/paper/final_main/chapter3.tex Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/chapter3.tex Sun Feb 18 02:33:23 2018 +0900 @@ -6,11 +6,10 @@ 次に、木構造上に立ち上げたJungleへ投入するタスクを制御するジョブスケジューラー、TORQUEについて述べる。 最後に、本実験の測定用プログラムについて述べる。 \section{実験目的} -jungleは現在、javaで実装されたものと、Huskellで実装されたものがある。 -java版は、処理速度が早く、よりスケーラビリティの高いデータベースの実装を目的に開発された。 +Jungleは現在、Javaで実装されたものと、Huskellで実装されたものがある。 +Java版は、処理速度が早く、よりスケーラビリティの高いデータベースの実装を目的に開発された。 対してHuskell版は、モダンな型システムと、型推論と型安全という特徴を生かし、信頼性の高データベースの実装を目的に開発された。 -そして、これまでの研究で、Java版とHaskell版のjungleの性能を測定する実験が行われている。 - +そして、これまでの研究で、Java版とHaskell版のJungleの性能を測定する実験が行われている。 性能測定実験では、それぞれJetty,Wrapというwebサーバーをフロントエンドに用いたWeb掲示板サービスを使用している。 Java版とHuskell版のWeb掲示板サービスをブレードサーバー上で実行される。 計測方法は、掲示板に対して読み込みと書き込みを行い、ネットワークを介してweighhttpで負荷をかける。 @@ -36,14 +35,58 @@ これでは、この性能結果が、異なる言語で実装されたJungleの性能差によるものなのか、Webサーバーの性能差によるものなのかがわからない。 そこで、本研究ではJava版のJungleにおいて、Webサーバーを取り除いた、純粋なJungleの性能を測定するプログラムを実装した。 \section{実験概要} -\section{測定環境} -本実験では、 +Jungleを31台立ち上げ、ツリー型のトポロジーを構成し、そのうち16台のJungleに100回書き込まれたデータが、ルートノードのJungleへ到達した時間を計測する実験である。(図\ref{fig:gaiyou} ) + + \begin{figure}[htbp] + \begin{center} + \includegraphics[width=100mm]{./pic/gaiyou.pdf} + \end{center} + \caption{複数のjungleに書き込まれたデータがrootのjungleへ到達する時間を計測する} + \label{fig:gaiyou} +\end{figure} + +\section{実験環境} +学科のKVM上の仮想マシンによる仮想クラスタ環境を用いて実験を行った。 +分散環境上での実験を行うにあたり、他の利用者とリソースが競合しないよう、TORQUEジョブスケジューラーを利用している。 +KVMと仮想マシンの性能はそれぞれ表\ref{tab:kvm}、表\ref{tab:vm}である。 +\begin{table}[htbp] +\begin{center} +\begin{tabular}{|c||r|r|} \hline + マシン台数 & Haskell \\ \hline + CPU & 16.31 s \\ \hline + 物理コア数 & 20.17 s \\ \hline + 論理コア数 & \\ \hline + CPUキャッシュ & \\ \hline + Memory & \\ \hline +\end{tabular} +\end{center} + +\caption{KVMの詳細} +\label{tab:kvm} +\end{table} + +\begin{table}[htbp] +\begin{center} +\begin{tabular}{|c||r|r|} \hline + マシン台数 & Haskell \\ \hline + CPU & 16.31 s \\ \hline + 物理コア数 & 20.17 s \\ \hline + 仮想コア数 & \\ \hline + CPUキャッシュ & \\ \hline + Memory & \\ \hline +\end{tabular} +\end{center} + +\caption{仮想クラスタの詳細} +\label{tab:vm} +\end{table} + \section{TORQUE Resource Manager} 分散環境上でのJungleの性能を測定するにあたり、VM32台にJungle,AliceのTopologyManagerを起動させた後、Jungleを立ち上げたVMでデータを書き込むプログラムを動作させる。プログラムを起動する順番やタイミングは、TORQUE Resource Managerというジョブスケジューラーによって管理する。 TORQUE Resource Manager は、ジョブを管理・投下・実行する3つのデーモンで構成されており、 ジョブの管理・投下を担うデーモンが稼働しているヘッダーノードから、ジョブの実行を担うデーモンが稼働している計算ノードへジョブが投下される(図\ref{fig:torque} )。 - \begin{figure}[htbp] + \begin{figure}[H] \begin{center} \includegraphics[width=100mm]{./pic/torque.pdf} \end{center} @@ -52,8 +95,8 @@ \end{figure} ユーザーはジョブを記述したシェルスクリプトを用意し、スケジューラーに投入する。その際に、利用したいマシン数やCPUコア数を指定する。TORQUEは、ジョブに必要なマシンが揃い次第、受け取ったジョブを実行する。 +今回、ジョブに投入するためのシェルスクリプトを作成した。以下(ソースコード\ref{src:LogupdateTest.pl})に示す。 -今回、ジョブに投入するためのシェルスクリプトを作成した。以下(ソースコード\ref{src:LogupdateTest.pl})に示す。 \begin{lstlisting}[frame=lrbt,label=src:LogupdateTest.pl,caption=本実験で投入するジョブスクリプト,numbers=left] #!/bin/sh #PBS -q jungle
--- a/paper/final_main/main.aux Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/main.aux Sun Feb 18 02:33:23 2018 +0900 @@ -23,37 +23,43 @@ \@writefile{lot}{\contentsline {table}{\numberline {3.1}{\ignorespaces HaskellとJavaの比較}}{6}} \newlabel{tab:compare}{{3.1}{6}} \@writefile{toc}{\contentsline {section}{\numberline {3.2}実験概要}{7}} -\@writefile{toc}{\contentsline {section}{\numberline {3.3}測定環境}{7}} -\@writefile{toc}{\contentsline {section}{\numberline {3.4}TORQUE Resource Manager}{7}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces TORQUEの構成}}{7}} -\newlabel{fig:torque}{{3.1}{7}} -\newlabel{src:LogupdateTest.pl}{{3.1}{8}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}本実験で投入するジョブスクリプト}{8}} -\@writefile{toc}{\contentsline {section}{\numberline {3.5}分散フレームワーク Alice による分散環境の構築}{9}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces AliceによるJungleの木構造トポロジーの形成}}{9}} -\newlabel{fig:topologymanager}{{3.2}{9}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.3}{\ignorespaces トポロジーの形成}}{10}} -\newlabel{fig:LogupdateTree}{{3.3}{10}} -\@writefile{toc}{\contentsline {section}{\numberline {3.6}Jungleの分散性能測定用テストプログラムの実装}{11}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.4}{\ignorespaces TestプログラムによるJungleの性能測定}}{11}} -\newlabel{fig:logupdatetest}{{3.4}{11}} -\newlabel{src:Logupdate.pl}{{3.2}{12}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.2}Alice によるネットワークトポロジーマネージャーの起動}{12}} -\newlabel{src:WriteCount}{{3.3}{12}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.3}writeモードでのJungleの起動}{12}} -\newlabel{src:jungle}{{3.4}{12}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.4}Jungleの起動}{12}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}性能評価}{13}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces 複数のjungleに書き込まれたデータがrootのjungleへ到達する時間を計測する}}{7}} +\newlabel{fig:gaiyou}{{3.1}{7}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}実験環境}{7}} +\@writefile{lot}{\contentsline {table}{\numberline {3.2}{\ignorespaces KVMの詳細}}{8}} +\newlabel{tab:kvm}{{3.2}{8}} +\@writefile{lot}{\contentsline {table}{\numberline {3.3}{\ignorespaces 仮想クラスタの詳細}}{8}} +\newlabel{tab:vm}{{3.3}{8}} +\@writefile{toc}{\contentsline {section}{\numberline {3.4}TORQUE Resource Manager}{8}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces TORQUEの構成}}{9}} +\newlabel{fig:torque}{{3.2}{9}} +\newlabel{src:LogupdateTest.pl}{{3.1}{9}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}本実験で投入するジョブスクリプト}{9}} +\@writefile{toc}{\contentsline {section}{\numberline {3.5}分散フレームワーク Alice による分散環境の構築}{10}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.3}{\ignorespaces AliceによるJungleの木構造トポロジーの形成}}{10}} +\newlabel{fig:topologymanager}{{3.3}{10}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.4}{\ignorespaces トポロジーの形成}}{11}} +\newlabel{fig:LogupdateTree}{{3.4}{11}} +\@writefile{toc}{\contentsline {section}{\numberline {3.6}Jungleの分散性能測定用テストプログラムの実装}{12}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.5}{\ignorespaces TestプログラムによるJungleの性能測定}}{12}} +\newlabel{fig:logupdatetest}{{3.5}{12}} +\newlabel{src:Logupdate.pl}{{3.2}{13}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.2}Alice によるネットワークトポロジーマネージャーの起動}{13}} +\newlabel{src:WriteCount}{{3.3}{13}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.3}writeモードでのJungleの起動}{13}} +\newlabel{src:jungle}{{3.4}{13}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.4}Jungleの起動}{13}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}性能評価}{14}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {4.1}java版jungleとhuskell版jungleの比較}{13}} -\@writefile{toc}{\contentsline {section}{\numberline {4.2}java版jungleの分散性能の評価}{13}} -\@writefile{toc}{\contentsline {section}{\numberline {4.3}性能測定方法の評価}{13}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}結論}{14}} +\@writefile{toc}{\contentsline {section}{\numberline {4.1}java版jungleとhuskell版jungleの比較}{14}} +\@writefile{toc}{\contentsline {section}{\numberline {4.2}java版jungleの分散性能の評価}{14}} +\@writefile{toc}{\contentsline {section}{\numberline {4.3}性能測定方法の評価}{14}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}結論}{15}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {5.1}まとめ}{14}} -\@writefile{toc}{\contentsline {section}{\numberline {5.2}今後の課題}{14}} +\@writefile{toc}{\contentsline {section}{\numberline {5.1}まとめ}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {5.2}今後の課題}{15}} \bibcite{1}{1} \bibcite{2}{2} \bibcite{3}{3}
--- a/paper/final_main/main.lof Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/main.lof Sun Feb 18 02:33:23 2018 +0900 @@ -4,9 +4,10 @@ \contentsline {figure}{\numberline {2.2}{\ignorespaces ring型のトポロジー}}{5} \contentsline {figure}{\numberline {2.3}{\ignorespaces メッシュ型のトポロジー}}{5} \addvspace {10\p@ } -\contentsline {figure}{\numberline {3.1}{\ignorespaces TORQUEの構成}}{7} -\contentsline {figure}{\numberline {3.2}{\ignorespaces AliceによるJungleの木構造トポロジーの形成}}{9} -\contentsline {figure}{\numberline {3.3}{\ignorespaces トポロジーの形成}}{10} -\contentsline {figure}{\numberline {3.4}{\ignorespaces TestプログラムによるJungleの性能測定}}{11} +\contentsline {figure}{\numberline {3.1}{\ignorespaces 複数のjungleに書き込まれたデータがrootのjungleへ到達する時間を計測する}}{7} +\contentsline {figure}{\numberline {3.2}{\ignorespaces TORQUEの構成}}{9} +\contentsline {figure}{\numberline {3.3}{\ignorespaces AliceによるJungleの木構造トポロジーの形成}}{10} +\contentsline {figure}{\numberline {3.4}{\ignorespaces トポロジーの形成}}{11} +\contentsline {figure}{\numberline {3.5}{\ignorespaces TestプログラムによるJungleの性能測定}}{12} \addvspace {10\p@ } \addvspace {10\p@ }
--- a/paper/final_main/main.log Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/main.log Sun Feb 18 02:33:23 2018 +0900 @@ -1,4 +1,4 @@ -This is e-pTeX, Version 3.14159265-p3.7.1-161114-2.6 (utf8.euc) (TeX Live 2017) (preloaded format=platex 2017.10.20) 18 FEB 2018 00:04 +This is e-pTeX, Version 3.14159265-p3.7.1-161114-2.6 (utf8.euc) (TeX Live 2017) (preloaded format=platex 2017.10.20) 18 FEB 2018 02:27 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -617,26 +617,28 @@ [6 ] +File: ./pic/gaiyou.pdf Graphic file (type pdf) + <./pic/gaiyou.pdf> [7] File: ./pic/torque.pdf Graphic file (type pdf) - <./pic/torque.pdf> [7] [8] + <./pic/torque.pdf> [8] [9] File: pic/topologymanager3.pdf Graphic file (type pdf) - <pic/topologymanager3.pdf> [9] -File: pic/LogupdateTree.pdf Graphic file (type pdf) -<pic/LogupdateTree.pdf> [10] +<pic/topologymanager3.pdf> [10] +File: pic/LogupdateTree.pdf Graphic file (type pdf) + <pic/LogupdateTree.pdf> [11] File: pic/logupdatetest2.pdf Graphic file (type pdf) - <pic/logupdatetest2.pdf> [11]) (./chapter4.tex -[12] + +<pic/logupdatetest2.pdf> [12]) (./chapter4.tex [13] 第 4 章 -[13 +[14 ]) (./chapter5.tex 第 5 章 -) (./bibliography.tex [14 +) (./bibliography.tex [15 -]) (./thanks.tex [15 +]) (./thanks.tex [16 -]) [16 +]) [17 ] (./main.aux) @@ -644,12 +646,12 @@ ) Here is how much of TeX's memory you used: - 4031 strings out of 493653 - 49043 string characters out of 6148873 - 163932 words of memory out of 5000000 - 7535 multiletter control sequences out of 15000+600000 + 4037 strings out of 493653 + 49132 string characters out of 6148873 + 163963 words of memory out of 5000000 + 7540 multiletter control sequences out of 15000+600000 16433 words of font info for 66 fonts, out of 8000000 for 9000 929 hyphenation exceptions out of 8191 - 27i,7n,32p,520b,1701s stack positions out of 5000i,500n,10000p,200000b,80000s + 27i,8n,32p,520b,1701s stack positions out of 5000i,500n,10000p,200000b,80000s -Output written on main.dvi (20 pages, 48040 bytes). +Output written on main.dvi (21 pages, 51392 bytes).
--- a/paper/final_main/main.lol Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/main.lol Sun Feb 18 02:33:23 2018 +0900 @@ -1,4 +1,4 @@ -\contentsline {lstlisting}{\numberline {3.1}本実験で投入するジョブスクリプト}{8} -\contentsline {lstlisting}{\numberline {3.2}Alice によるネットワークトポロジーマネージャーの起動}{12} -\contentsline {lstlisting}{\numberline {3.3}writeモードでのJungleの起動}{12} -\contentsline {lstlisting}{\numberline {3.4}Jungleの起動}{12} +\contentsline {lstlisting}{\numberline {3.1}本実験で投入するジョブスクリプト}{9} +\contentsline {lstlisting}{\numberline {3.2}Alice によるネットワークトポロジーマネージャーの起動}{13} +\contentsline {lstlisting}{\numberline {3.3}writeモードでのJungleの起動}{13} +\contentsline {lstlisting}{\numberline {3.4}Jungleの起動}{13}
--- a/paper/final_main/main.tex Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/main.tex Sun Feb 18 02:33:23 2018 +0900 @@ -58,7 +58,7 @@ \def\lstlistingname{ソースコード} \def\lstlistlistingname{ソースコード目次} \setlength{\itemsep}{-1zh} -\title{分散版jungleデータベースの性能測定方法} +\title{分散版Jungleデータベースの性能測定方法} \icon{ \includegraphics[width=80mm,bb=0 0 595 642]{fig/ryukyu.pdf} %%元は 642じゃなくて842 }
--- a/paper/final_main/main.toc Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/main.toc Sun Feb 18 02:33:23 2018 +0900 @@ -7,14 +7,14 @@ \contentsline {chapter}{\numberline {第3章}評価実験}{6} \contentsline {section}{\numberline {3.1}実験目的}{6} \contentsline {section}{\numberline {3.2}実験概要}{7} -\contentsline {section}{\numberline {3.3}測定環境}{7} -\contentsline {section}{\numberline {3.4}TORQUE Resource Manager}{7} -\contentsline {section}{\numberline {3.5}分散フレームワーク Alice による分散環境の構築}{9} -\contentsline {section}{\numberline {3.6}Jungleの分散性能測定用テストプログラムの実装}{11} -\contentsline {chapter}{\numberline {第4章}性能評価}{13} -\contentsline {section}{\numberline {4.1}java版jungleとhuskell版jungleの比較}{13} -\contentsline {section}{\numberline {4.2}java版jungleの分散性能の評価}{13} -\contentsline {section}{\numberline {4.3}性能測定方法の評価}{13} -\contentsline {chapter}{\numberline {第5章}結論}{14} -\contentsline {section}{\numberline {5.1}まとめ}{14} -\contentsline {section}{\numberline {5.2}今後の課題}{14} +\contentsline {section}{\numberline {3.3}実験環境}{7} +\contentsline {section}{\numberline {3.4}TORQUE Resource Manager}{8} +\contentsline {section}{\numberline {3.5}分散フレームワーク Alice による分散環境の構築}{10} +\contentsline {section}{\numberline {3.6}Jungleの分散性能測定用テストプログラムの実装}{12} +\contentsline {chapter}{\numberline {第4章}性能評価}{14} +\contentsline {section}{\numberline {4.1}java版jungleとhuskell版jungleの比較}{14} +\contentsline {section}{\numberline {4.2}java版jungleの分散性能の評価}{14} +\contentsline {section}{\numberline {4.3}性能測定方法の評価}{14} +\contentsline {chapter}{\numberline {第5章}結論}{15} +\contentsline {section}{\numberline {5.1}まとめ}{15} +\contentsline {section}{\numberline {5.2}今後の課題}{15}
--- a/paper/final_main/thanks.tex Sun Feb 18 00:06:33 2018 +0900 +++ b/paper/final_main/thanks.tex Sun Feb 18 02:33:23 2018 +0900 @@ -7,10 +7,9 @@ %順番は重要なので気を付けるように.(提出前に周りの人に確認してもらう.) \hspace{1zw} -本研究を行うにあたり, 日頃より多くの助言, ご指導いただきました河野真治准教授に心より感謝申し上げます. +本研究を行うにあたり, 日頃より多くの助言, ご指導いただきました河野真治准教授に心より感謝申し上げます。 -また, 本実験の測定にあたり, Aliceのプログラミングについてご指導くださった照屋のぞみ先輩、伊波 立樹先輩, torqueの環境構築に協力してくださった前城健太郎先輩,また、たくさんの温かい励ましをくださった照屋のぞみ先輩、新里幸恵先輩、並列信頼研究室の全てのメンバーに感謝いたします. - +また, 本実験の測定にあたり, Aliceのプログラミングについてご指導くださった照屋のぞみ先輩、伊波 立樹先輩, torqueの環境構築に協力してくださった前城健太郎先輩,また、たくさんの温かい励ましをくださった照屋のぞみ先輩、新里幸恵先輩、並列信頼研究室の全てのメンバーに深く感謝いたします。最後に、物心両面で支えてくれた両親に深く感謝いたします。 %% \begin{flushright} %% % 2018年 3月 \\ 仲松 栞