SLURM クラスターで MPI ジョブを実行していて、結果のプロセスをノード上の特定のコアに固定したいと考えています。これには、異なるノード上の異なる数のプロセスと、異なるノード上の異なる固定パターンが含まれる場合があります。salloc を使用してノードの割り当てを取得し、mpi プロセスのランク ファイルを作成し、mpirun を使用してプロセスを開始すると、これはすべて比較的簡単です。
残念ながら、タイムアウトやプリエンプションなどの理由で割り当てが取り消された場合、ノードで実行されているプロセスは強制終了されますが、ヘッド ノードで実行されている mpirun は強制終了されず、無視できる負荷の生成から 100 の生成に移行します。無期限に実行されているスレッドの % 負荷。
答えは mpirun の代わりに srun を使用してアプリケーションを起動することであると思われますが、これを行う場合にプロセスの配置を設定する方法を見つけるのに苦労しています。誰にも提案はありますか?