各queueをそれぞれの計算ノードに紐付る


各queueをそれぞれの計算ノードに紐付る方法を説明します。

■使用するqueue
ttqueue
tttqueue

■使用するノード
node1
node2

(1)管理サーバの「nodes」ファイルを編集する。
[root@kanri ~]# vi /var/spool/pbs/server_priv/nodes
node1 np=1 ttqueue
node2 np=1 tttqueue

「ttqueue」と「tttqueue」をそれぞれの計算ノードに追加する。

(2)「ttqueue」「tttqueue」を作成する。
[root@kanri ~]# /usr/local/pbs/bin/qmgr
Qmgr: create queue ttqueue
Qmgr: set queue ttqueue queue_type = Execution
Qmgr: set queue ttqueue enabled = true
Qmgr: set queue ttqueue started = true
Qmgr: set queue ttqueue resources_max.ncpus = 1 ← # 各自の環境に合わせる
Qmgr: set queue ttqueue resources_max.nodes = 1 ← # 各自の環境に合わせる

Qmgr: create queue tttqueue
Qmgr: set queue tttqueue queue_type = Execution
Qmgr: set queue tttqueue enabled = true
Qmgr: set queue tttqueue started = true
Qmgr: set queue tttqueue resources_max.ncpus = 1 ← # 各自の環境に合わせる
Qmgr: set queue tttqueue resources_max.nodes = 1 ← # 各自の環境に合わせる

(3)JMS(OpenPBS or Torque)を再起動する。
[root@kanri ~]# /etc/rc.d/init.d/pbs restart
Restarting PBS
Shutting down PBS:
Stopping pbs_server:                                       [  OK  ]
Stopping pbs_sched:                                        [  OK  ]
Starting PBS daemons:
Starging pbs_sched:                                        [  OK  ]
Starting pbs_server:                                       [  OK  ]
done.

(4)状態を確認する。
[root@kanri ~]# /usr/local/pbs/bin/pbsnodes -a
node1
     state = free
     np = 1
     properties = ttqueue
     ntype = cluster

node2
     state = free
     np = 1
     properties = tttqueue
     ntype = cluster

上のように各「queue」が割り当てられていること。

(5)使用する「queue」を指定する。
[mpi@kanri ~]$ vi test.sh
#!/bin/sh
#PBS -e /home/mpi/ER
#PBS -o /home/mpi/OU
#PBS -l ncpus=1
#PBS -l nodes=1
#PBS -q ttqueue

MPI=/usr/local/mpich

cd /home/mpi/cc_himenoBMTxp_mpi
source paramset.sh M 1 1 1
$MPI/bin/mpicc himenoBMTxps.c
$MPI/bin/mpirun -np 1 -machinefile $PBS_NODEFILE a.out

[mpi@kanri ~]$ vi test.sh
#!/bin/sh
#PBS -e /home/mpi/ER
#PBS -o /home/mpi/OU
#PBS -l ncpus=1
#PBS -l nodes=1
#PBS -q tttqueue

MPI=/usr/local/mpich

cd /home/mpi/cc_himenoBMTxp_mpi
source paramset.sh M 1 1 1
$MPI/bin/mpicc himenoBMTxps.c
$MPI/bin/mpirun -np 1 -machinefile $PBS_NODEFILE a.out

ここでは、queueに投入するスクリプト(test.sh、test2.sh)を作成しました。
queueの指定は赤い網掛けの部分ようにオプション-qで指定します。

(6)「queue」に投入する。
[mpi@kanri ~]$ /usr/local/pbs/bin/qsub test.sh
[mpi@kanri ~]$ /usr/local/pbs/bin/qsub test.sh
[mpi@kanri ~]$ /usr/local/pbs/bin/qsub test2.sh
[mpi@kanri ~]$ /usr/local/pbs/bin/qsub test2.sh
[mpi@kanri ~]$ /usr/local/pbs/bin/qstat -q
server: kanri.local

Queue            Memory CPU Time Walltime Node Run Que Lm  State
---------------- ------ -------- -------- ---- --- --- --  -----
ttqueue            --      --       --     --    1   1 --   E R
tttqueue           --      --       --     --    1   1 --   E R
tqueue             --      --       --     --    0   0 --   E R
                                               --- ---
                                                 2   2

「ttqueue」「tttqueue」に投入出来ていること。

Comments are closed.