MPIジョブの実行方法 =================================== 説明 --------------- MPI 環境として、すべてのサーバでIntelMPI が利用可能です。また、XD670では、加えてnvhpc付属のOpenMPIが利用可能です。 書式(IntelMPI) --------------- ジョブ実行にはmpirunコマンドを使用します。 .. command-format:: mpirun [ -np 並列数] [ -ppn ノードあたりの並列数 ] 実行プログラム .. attention:: ※ジョブのパフォーマンスを高めるために以下が成り立つよう値を指定してください。 [MPI 並列数(-npの値)] = [ノード数(#PBS -l select=の値)] × [ノードあたりの並列数(-ppnの値)] 使用例 ---------------- .. code-block:: none #!/bin/bash #PBS -l select=1 cd $PBS_O_WORKDIR module load oneapi 2> /dev/null mpirun -np 56 /work/app/ABINIT/abinit-10.2.7_cpu/bin/abinit < input.files > result.out 2> result.err 書式(OpenMPI) --------------- ジョブ実行にはmpirunコマンドを使用します。 .. command-format:: mpirun [ -np 並列数] [ -N ノードあたりの並列数 ] -hostfile $PBS_NODEFILE -x LD_LIBRARY_PATH -x HCOLL_MAIN_IB=all 実行プログラム .. attention:: ※ジョブのパフォーマンスを高めるために以下が成り立つよう値を指定してください。 [MPI 並列数(-npの値)] = [ノード数(#PBS -l select=の値)] × [ノードあたりの並列数(-Nの値)] 使用例 ---------------- .. code-block:: none #!/bin/bash #PBS -l select=1:ncpus=4:ngpus=4 cd $PBS_O_WORKDIR module load nvhpc > /dev/null mpirun -np 4 -N 4 -hostfile $PBS_NODEFILE -x LD_LIBRARY_PATH -x HCOLL_MAIN_IB=all /work/app/VASP6/vasp.6.5.1_gpu/bin/vasp_std > vasp.out 2> vasp.err