一般的な計算手順は、同研究所が作っている計算機のマニュアルを参考にする。CPVOのプログラムは、通常のUNIXを用いた システムで、フロントエンドプロセッサー上(ログインした計算機)で計算する方法をこれまで念頭において説明を行ってきた。
Makefile
in source/
according to a calculation method which you perform,
compilation is performed with respect to each methods. Executable format files are stored in different
directory with respect to each methods.
多くの大型計算機センターと同様に、キューイングシステムにより計算ジョブをフロントエンドプロセッサーからバックエンド
プロセッサーに投入する方法で計算を行う。ノード内に多数のプロセッサーをもった計算機であり、いろいろな計算方式で、
計算することが可能となっている。その方法を下表にまとめた。SR11000の場合、ノード内の並列化計算やノード間の並列化計算
を行うことが可能であるが、ノード間の並列化は、MPIにより実現することができる。ノード内の並列は、いろいろな方法が可能
であるが、CPVOコードでは、現在自動並列化とMPI並列化の2種類の計算を行うことができる。この2種類をノード間並列化とも
組み合わせて実行することが可能である。CPVOでは、実際4種類の計算方式
(1)シングルノードのノード内自動並列化計算方式
(2)シングルノードのノード内MPI並列化計算方式
(3)マルチノードのノード内自動並列化計算方式
(4)マルチノードのノード内MPI並列化計算方式
に対応して、4種類のコンパイルを行うようにしている。source/
のMakefile
を目的の計算方式に合わせて
設定し、各方式毎にコンパイルするようになっている。実行形式ファイルは、方式毎に異なるディレクトリに格納されるように
する。
Computation Method | Storage Facility of Executable File | Code | exstyle |
numcpu |
|||
(計算方式) | (実行形式の格納場所) | (コード) | |||||
(1) | Single Node(シングルノード), | source/BIN_sr11_sn_auto |
cpvos.x | s | N | ||
Automatic Parallelization(自動並列) | |||||||
(2) | Single Node(シングルノード), | source/BIN_sr11_sn_mpi |
cpvop.x | p | 1 | ||
MPI Parallelization(MPI並列) | |||||||
(3) | Multiple Nodes(マルチノード), | source/BIN_sr11_mn_auto |
cpvop.x | p | N | ||
Automatic Parallelization(自動並列) | |||||||
(4) | Multiple Nodes(マルチノード), | source/BIN_sr11_mn_mpi |
cpvop.x | p | 1 | ||
MPI Parallelization(MPI並列) |
exstyle
and numcpu
are configured in cpvo.sh
. You have to input correct value in
each case shown above. N in the table is an integer of 116, and it specifies the number of intra-node
automatic parallel. Additionally, configurations of cpvo.sh
which you have to be careful in ISSP are
configurations of srcdir
, drvname
and frt
. srcdir
specifies a storage facility
of the executable file. You have to set drvname
to sr11k
and frt
to ft
.
JCFinSR11000/
. If the case of multiple
nodes or MPI parallel, you have to copy jcf.mn_mpi
to work directory and use it.
exstyle, numcpu
は、cpvo.sh
で設定するものであり、上記いずれの場合にも、正しい値を設定する必要
がある。表中のNは、116の整数で、ノード内の自動並列度数を指定する。その他に、cpvo.sh
で物性研の計算
で注意する設定は、srcdir
, drvname
, frt
の設定である。srcdir
は、表中の実行形式の
格納場所を指定する。drvname
には、sr11k
を指定する。 frt
にはft
を指定する。
物性研でのジョブ投入は、JCF(ジョブコントロールファイル)をサブミットすることにより実行する。計算方式に応じて、CPVO
用のJCFを用意している。ディレクトリJCFinSR11000/
の中に置かれている。マルチノード、MPI並列の場合ならば、
jcf.mn_mpi
というファイルを作業ディレクトリにコピーして使用する。
JCFでは、キュージョブの選択、計算時間制限等の指定の他に、プロセスの数に関係した指定に注意する。 24個のプロセス(並列 度数24)を使って、2ノードで計算する場合に、マルチノードのMPI並列計算方式では、
# @ node=2 # @ total_tasks=16 # @ resources=ConsumableCpus(1)In any of these cases, you have to set the number of processors which you want to use to
total_tasks
.
If the case of SR11000, you don't specify it to numcpu
. In any of cases adopted three types of
computation methods which use MPI parallel, you have to set the value of ConsumableCpus
to the
value which is equal to numcpu
in cpvo.sh
. The value of ConsumableCpus
and
the number of nodes are specified to meet a requirement shown below.
というように、指定する。いずれの方式でも、使用したいプロセスの数をtotal_tasks
に指定する。
(SR11000場合はnumcpu
に指定するのではない)
MPI並列を用いた3種類の計算方式のいずれの場合も、ConsumableCpus
の数値をcpvo.sh
中のnumcpu
と同一の値に設定する。このConsumableCpus
の数値とノード数node
とは、
node
.
を満たすように設定する。並列計算では、波動関数など一部のメモリに関してメモリ分割を行っているが、各プロセスのメモリが
大きくなる場合は、大きなnode
を用いるようにすればよい。
ジョブの投入は、
%> llsubmit jcf.mn_mpi (return)If you want to monitor a job, you should do as shown below. Please refer to the manual of ISSP.
とする。 ジョブを監視するには、
%> qstatIf you want to cancel a job, you should check job_id by
qstat
and do as shown below.
等があるが、物性研のマニュアルを参考にしてほしい。
ジョブをキャンセルするには、qstat
でジョブID job_idを知り、
%> llcancel job_idとする。