Sun Grid Engine - 启动数组作业并等待所有作业完成的脚本
Sun Grid Engine - Script launching an Array-jobs and waiting for all of them to finish
提交数组作业时,您会执行如下操作:
qsub -t 1-1000 -N myArray arrayjob.sh
#This execute arrayjob 1000 simultaneus times, calling the job "myArray"
我想将其包装在另一个告诉我的脚本中 "Ehi, all the tasks are done!"
有人会提议:
qsub somethingAfterAllTheTask.sh -hold_jid "myArray"
但是
- 我不想在 myArray 之后开始执行另一个作业:我想恢复执行 myArray 的 qsub 的脚本
- myArray 会在启动所有任务后死掉,而不是在所有这些任务完成后死掉:我必须等待任务完成,而不是 myArray 的
所以我想要的是这样一个伪脚本:
#!/bin/bash
qsub -t 1-1000 -N myArray arrayjob.sh
if [all_the_task_are_completed]; then
echo Done!
fi
如何获得这种行为?提前致谢
有this question但不是array-jobs,还是不能满足我的问题
提交arrayjob时使用-sync y
,启动所有任务的命令在所有任务完成之前不会死。
感谢@Oo.oO 的提示
提交数组作业时,您会执行如下操作:
qsub -t 1-1000 -N myArray arrayjob.sh
#This execute arrayjob 1000 simultaneus times, calling the job "myArray"
我想将其包装在另一个告诉我的脚本中 "Ehi, all the tasks are done!"
有人会提议:
qsub somethingAfterAllTheTask.sh -hold_jid "myArray"
但是
- 我不想在 myArray 之后开始执行另一个作业:我想恢复执行 myArray 的 qsub 的脚本
- myArray 会在启动所有任务后死掉,而不是在所有这些任务完成后死掉:我必须等待任务完成,而不是 myArray 的
所以我想要的是这样一个伪脚本:
#!/bin/bash
qsub -t 1-1000 -N myArray arrayjob.sh
if [all_the_task_are_completed]; then
echo Done!
fi
如何获得这种行为?提前致谢
有this question但不是array-jobs,还是不能满足我的问题
提交arrayjob时使用-sync y
,启动所有任务的命令在所有任务完成之前不会死。
感谢@Oo.oO 的提示