クラスターに対して複数の sbatch slurm スクリプトを実行する必要があります。たとえば、50 個の sbatch ファイルがあり、次のようにターミナル (Ubundu を使用) で順番に実行しています。
sbatch file1.sbatch
sbatch file2.sbatch
.
.
.
sbatch file50.sbatch
この 50 の異なるコマンドを単純化して、単一のコマンドで実行したいと考えています。私はターミナルとクラスターを初めて使用するので、この問題に対処する方法が本当にわかりません。親切に、このアクションを実行するための解決策をいくつか提案してください(forループステートメントを使用する必要があると思いますが、どの構文については疑問です)。私は完全に混乱しています。いくつかの関連文書も役立つかもしれません。
ありがとうございました。
更新:次のスクリプトを試しました:
#!/bin/bash
for i in {1..3}
do
sbatch layer$i.sbatch
done
ただし、個別のジョブとして作成されませんでした。全体として 1 つのジョブのみがサブミットされます。だから、これは私にはうまくいきませんでした。
$ ~/Marabou% sbatch call_sbatch.sbatch
Submitted batch job 4576049
ありがとう。
更新:
次のスクリプトは動作します:
import os
os.system ("sbatch filename1.sbatch")
os.system ("sbatch filename2.sbatch")