現在、ジョブ 1 がいつ終了するかを見積もってから、「#PBS -a [myEstimatedTime+5]」ディレクティブを使用して、ジョブ 2 の qsub を実行しています。推定。
より良い解決策はありますか?
現在、ジョブ 1 がいつ終了するかを見積もってから、「#PBS -a [myEstimatedTime+5]」ディレクティブを使用して、ジョブ 2 の qsub を実行しています。推定。
より良い解決策はありますか?
job1 と job2 の間で 5 分間実行される時間のかかるジョブを追加します。クラスターの実行順序は、ジョブ 1 -> ジョブ (5 分間待機) -> ジョブ 2 になります。
これを行う最善の方法は、ジョブの依存関係を使用することです。ジョブを送信できます。
job1id=`qsub script1.sh`
qsub script.sh -W depend=after:$job1id
これにより、5 秒後に実行されることはありませんが、最初のジョブが終了するまでジョブが保留されます (実行できません)。実際には、ほとんどのスケジューリングの反復にはそれよりも時間がかかるため、約 5 秒以上後に実行されます。