qsub数组作业提交

时间:2017-01-19 10:03:12

标签: arrays bash shell unix qsub

我目前正试图在我的Uni上的“大电脑”上运行一个阵列作业。

我是Unix和bash的新手,我一直很难让它工作。

设置文件夹如下:

model1
- model1.inp
- model1.num
model2
- model2.inp
- model2.num
startup.sh
runAModel.sh
modelArray.sh

由于限制我可以运行一份工作多久,我被要求分解我的模拟。因此,每次模型读取输入文件.inp时,我需要运行每个模型5次,并为后续运行输出另一个输入文件。

下面的代码一直工作到一周左右,但它似乎不再起作用了。我想知道我是不是在那里弄乱了什么。

我怀疑它可能位于qcmd="qsub -N $modelName -t 1:5 ../../modelArray.sh"的{​​{1}}行,我应该将runAModel.sh替换为1:5,但这似乎不起作用。

我使用qstat来查看我的工作以及我希望看到的5个排队工作列表,我只看到一个。

我有三个文件要运行:

1-5

startup.sh

find . -mindepth 2 -type d -exec ./runAModel.sh {} \;

runAModel.sh

#!/bin/bash echo starting model in $1 cd $1 # go into the model directory modelName=$(basename $PWD) for f in * do dos2unix $f done qcmd="qsub -N $modelName -t 1:5 ../../modelArray.sh" qq=`$qcmd` # runs a qsub command # extract the job number qt=`echo $qq | awk '{print $3}'` jobid=${qt%%.*} qrls $jobid.1

modelArray.sh

0 个答案:

没有答案