This is an old revision of the document!
Table of Contents
Ubuntu16.04を使用しました。
準備
/etc/hostsを開いて、localhostとホスト名(コンピュータ名)のIPアドレスを同じにしておきます。 以下ではホスト名をuser-pcとします。
$ sudo vi /etc/hosts
(変更前)
- hosts
127.0.0.1 localhost 127.0.0.1 user-pc # 以下略
(変更後)
- hosts
127.0.0.1 localhost 127.0.0.1 user-pc # 以下略
ホスト名の変更を反映させるにはコンピュータの再起動が必要です。
$ sudo reboot
Torqueのインストール
端末を開いて、aptによりtorqueをインストールします。
$ sudo apt install torque-server torque-mom
torque-clientはtorque-serverに含まれているので、ヘッドノードと計算ノードが同じ場合はインストール不要です。
Torqueの設定
/etc/torque/server_nameにlocalhost(ホスト名でも可。以下同様)と書き込みます。
$ sudo vi /etc/torque/server_name
- server_name
localhost
ジョブサーバーのpbs_serverを起動します。
\$ sudo pbs_server -t create
PBS_Server foo6134: Create mode and server database exists,
do you wish to continue y/(n)?y
pbs_serverが起動したら/var/spool/torque/server_priv/にnodesというファイルを作り、使用できる最大プロセス数を指定します。
\$ sudo vi /var/spool/torque/server_priv/nodes
- nodes
localhost np=32
npで一度に実行できるプロセスの最大数を指定します。 最大プロセス数は
\$ cpuinfo
でProcessors(CPUs)の後ろにある数字から確認できます。
なお、このnodesというファイルは
\$ sudo pbs_server -t create
を再び実行すると削除されます。
以上の設定が終わったら、Torqueを再起動します(ノードを設定したファイルはTorque起動時に読み込まれるため)。
$ sudo service torque-server restart
$ sudo service torque-scheduler restart
$ sudo service torque-mom restart
設定されたノードの情報は
$ pbsnodes
で確認できます。
キューの設定
次に、キューの設定をシます。 投げたジョブはいったんキューに格納され、スケジューラによってキューにあるジョブが順番に実行されていきます。 キューではジョブの実行時間などが編集できるので、ジョブの性質ごとにキューを作っておくと便利です。
以下ではbatchという名前のキューを作ります。 キューの設定は set <キュー名> <設定内容> で行います。
\$ sudo qmgr -c “set server scheduling=true” スケジューリングを有効にします。これが有効になってないとTorqueを使う意味がない。
\$ sudo qmgr -c “create queue batch queue_type=execution” batchという名前のキューを作ります。
\$ sudo qmgr -c “set queue batch started=true” batchでのジョブの実行を許可します。
\$ sudo qmgr -c “set queue batch enabled=true” batchにジョブを受け入れられるようにします。
\$ sudo qmgr -c “set queue batch resources_default.nodes=1” batchに割り当てられるノードの数。ぼっちTorqueなのでノード数は必然的に1
\$ sudo qmgr -c “set queue batch resources_default.walltime=240:00:00” ジョブの最大実行時間。この場合は240時間
\$ sudo qmgr -c “set server default_queue=batch” ジョブ投入時に特に指定がなければbatchに入る
設定の確認は次のようにします。
\$ qmgr -c \“p s\”
キューの削除は次のようにします。
\$ sudo qmgr -c “delete queue batch” キューbatchを削除します。
Torqueがちゃんと動作しているかは
\$ echo 'sleep 30' | qsub
\$ qstat
で確認してください。