384 MPI プロセス (計算ノードあたり 16 コアの 24 計算ノード) で実行されるコードがあり、次の単純なスクリプトを使用してジョブをジョブ キューに送信するとします。
#!/bin/bash
#PBS -S /bin/bash
#PBS -l nodes=24:ppn=16
#PBS -l walltime=01:00:00
cd $PBS_O_WORKDIR
module load openmpi
mpirun mycode > output_file
次のシナリオは可能ですか: 「openmp」を使用していくつかの特定の計算を実行するために、16 コアのノードをもう 1 つ割り当て、ある時点で残りの 384 プロセスを計算結果で更新する必要があります。これで、384 個の MPI プロセスがあり、それぞれで 1 つのスレッドが順次実行され、1 つの MPI プロセスが 16 個の openmp スレッドで実行されます。
OMP_NUM_THREADS と mpirun またはその他のツールでこれを達成することは可能ですか?
提案をいただければ幸いです
ありがとうございました
シーナ