ハイブリッド MPI-OpenMP 並列化を使用してコードを実行しようとしています。私の知る限り、OpenMP スレッドの数が物理プロセッサの数より少ない限り、各プロセッサは 1 つのスレッドを実行しています。これが正しいと仮定して、2 枚のコンピューティング カードで構成される架空のコンピューティング ノードがあるとします。各コンピューティング カードには、4 つのプロセッサとメモリを備えたチップが搭載されています。私の質問は、MPI および OpenMP パラメーターの最適な選択は何かということです。2 つの MPI ジョブとそれぞれ 4 つのスレッドと言いますが、これは正しいですか?
OMP_NUM_THREADS = 4
mpirun -np 2 code
一部の同僚から、最高のパフォーマンスを得るには、これらのパラメーターを慎重に選択する必要があると聞きました (ハードウェアのレイアウトによって異なります)。ハイブリッド ジョブの実行に関するアドバイスをいただければ幸いです。
ありがとう