annotate final_main/chapter5/chapter5.tex @ 5:bb0c2543c456

update add pdf
author akahori
date Fri, 15 Feb 2019 18:20:41 +0900
parents fc5b4b9489db
children 7ab85a536778
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
008ac0554ff5 add files
akahori
parents:
diff changeset
1 % 今後の課題
5
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
2 %\input{/Users/e155753/.tex/setup}
4
akahori
parents: 3
diff changeset
3
akahori
parents: 3
diff changeset
4 %%文書開始****************************
akahori
parents: 3
diff changeset
5 \begin{document}
akahori
parents: 3
diff changeset
6 %%**************************************
3
008ac0554ff5 add files
akahori
parents:
diff changeset
7 \chapter{評価}
4
akahori
parents: 3
diff changeset
8
akahori
parents: 3
diff changeset
9 本研究では, 実際にコンセンサスアルゴリズムPaxosを分散環境上で実行した. 分散環境上で動かすため, JobSchedulerの一種であるTorque Resource Manager(Torque)を使った. ここではTorqueとはなにか, どのような目的で評価をしたかを述べる.
akahori
parents: 3
diff changeset
10
akahori
parents: 3
diff changeset
11 \section{Torqueとは}
akahori
parents: 3
diff changeset
12
5
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
13 PCクラスタ上でプログラムの実験を行う際には, 他のプログラムとリソースを取り合う懸念がある. それを防ぐためにTorqueを使用する. Torqueはjobという単位でプログラムを管理し, リソースを確保できたら実行する. jobはqsubというコマンドを使って複数登録することができる. また, 実行中の様子もqstatというコマンドを打つことで監視ができる.
4
akahori
parents: 3
diff changeset
14
akahori
parents: 3
diff changeset
15
5
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
16 Torqueには主に3つのNodeの種類がある.
4
akahori
parents: 3
diff changeset
17
akahori
parents: 3
diff changeset
18 \begin{description}
akahori
parents: 3
diff changeset
19 \item[Master Node] pbs\_serverを実行しているノード. 他のノードの役割とも併用できる.
5
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
20 \item[Submit/Interactive Nodes] クライアントがjobを投入したり監視したりするノード. qsubやqstatのようなクライアントコマンドが実行できる.
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
21 \item[Computer Nodes] 投入されたjobを実際に実行するノード. pbs\_momが実行されており, それによってjobをstart, kill, 管理する.
4
akahori
parents: 3
diff changeset
22 \end{description}
akahori
parents: 3
diff changeset
23
5
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
24 今回は図\ref{fig:kvm}のように, 学科のKVM上にMaster Node, Submit/Interactive Nodeの役割を持つVM1台と, Computer Nodesとして15台のVMを用意し, jobの投入を行った.
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
25
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
26 \begin{figure}[H]
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
27 \centering
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
28 \fbox{
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
29 \includegraphics[scale=0.5]{./images/kvm.pdf}
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
30 }
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
31 \caption{実験環境}
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
32 \label{fig:kvm}
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
33 \end{figure}
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
34
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
35 jobはシェルスクリプトの形で与えることができる. ソースコード\ref{code:torque-example}を例としてあげる.
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
36
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
37 \lstinputlisting[caption=torque-example.sh,label=code:torque-example]{./src/torque-example.sh}
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
38
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
39
bb0c2543c456 update add pdf
akahori
parents: 4
diff changeset
40 「\#PBS オプション」とすることにより実行環境を設定できる. 使用できるオプションは参考文献\cite{qsub-doc}に書かれてある. 例として, ノード数10(vm0からvm9まで), jobの名前を「ExmpleJob」という形で実行した. その結果を
4
akahori
parents: 3
diff changeset
41
akahori
parents: 3
diff changeset
42
akahori
parents: 3
diff changeset
43
akahori
parents: 3
diff changeset
44
akahori
parents: 3
diff changeset
45
akahori
parents: 3
diff changeset
46
akahori
parents: 3
diff changeset
47 %%文書終了****************************
akahori
parents: 3
diff changeset
48 \end{document}