FX10 ハイブリッド並列処理ジョブスクリプト例
FX10において,ハイブリッド並列処理のジョブ実行を想定した記述方法を示します.
ジョブスクリプト例1
以下は,12ノードを確保し,各ノードに1 MPIプロセス,各MPIプロセスのスレッド数を16とする例です. OpenMPや自動並列のスレッド数指定は必要に応じて行ってください.
計算資源
ノード数 (ノードあたりコア数) | 12ノード (16コア) |
経過時間 | 10分 |
並列計算条件
プロセス数 | 12プロセス |
プロセスあたりのスレッド数 | 16スレッド |
MPI-OpenMPハイブリッド並列処理ジョブスクリプト例
#!/bin/sh
#PJM -L "rscgrp=fx-small"
#PJM -L "node=12"
#PJM -L "elapse=10:00"
#PJM -j
#PJM -S
export OMP_NUM_THREADS=16
export PARALLEL=16
mpiexec ./a.out
ジョブスクリプト例2
ノード内におけるMPIプロセス数とスレッド数の最適な割合は利用されるプログラムによって異なります.
以下は,12ノードを確保し,各ノードに2 MPIプロセスずつ,各MPIプロセスのスレッド数を8とする例です. このときは,–mpi "proc=procnum"の指定が必要になります.
計算資源
ノード数 (ノードあたりコア数) | 12ノード (16コア) |
経過時間 | 10分 |
並列計算条件
プロセス数 | 24プロセス |
プロセスあたりのスレッド数 | 8スレッド |
MPI-OpenMPハイブリッド並列処理ジョブスクリプト例
#!/bin/sh
#PJM -L "rscgrp=fx-small"
#PJM -L "node=12"
#PJM --mpi "proc=24"
#PJM -L "elapse=10:00"
#PJM -j
#PJM -S
export OMP_NUM_THREADS=8
export PARALLEL=8
mpiexec ./a.out