3.7. MPIジョブの実行方法

3.7.1. 説明

MPI 環境として、すべてのサーバでIntelMPI が利用可能です。また、XD670では、加えてnvhpc付属のOpenMPIが利用可能です。

3.7.2. 書式(IntelMPI)

ジョブ実行にはmpirunコマンドを使用します。

mpirun [ -np 並列数] [ -ppn ノードあたりの並列数 ] 実行プログラム

注意

※ジョブのパフォーマンスを高めるために以下が成り立つよう値を指定してください。 [MPI 並列数(-npの値)] = [ノード数(#PBS -l select=の値)] × [ノードあたりの並列数(-ppnの値)]

3.7.3. 使用例

#!/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

3.7.4. 書式(OpenMPI)

ジョブ実行にはmpirunコマンドを使用します。

mpirun [ -np 並列数] [ -N ノードあたりの並列数 ] -hostfile $PBS_NODEFILE -x LD_LIBRARY_PATH -x HCOLL_MAIN_IB=all 実行プログラム

注意

※ジョブのパフォーマンスを高めるために以下が成り立つよう値を指定してください。 [MPI 並列数(-npの値)] = [ノード数(#PBS -l select=の値)] × [ノードあたりの並列数(-Nの値)]

3.7.5. 使用例

#!/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