我正在尝试在PBSPro群集上使用--immediate-submit。我尝试使用依赖项字符串的就地修改来使其适应PBSPro,类似于所做的here。
snakemake --cluster "qsub -l wd -l mem={cluster.mem}GB -l ncpus={threads} -e {cluster.stderr} -q {cluster.queue} -l walltime={cluster.walltime} -o {cluster.stdout} -S /bin/bash -W $(echo '{dependencies}' | sed 's/^/depend=afterok:/g' | sed 's/ /:/g')"
这最后一部分转换为,例如:
-W depend=afterok: /g/data1a/va1/dk0741/analysis/2018-03-25_marmo_test/.snakemake/tmp.cyrhf51c/snakejob.trimmomatic_pe.7.sh
这里有两个问题:
如何获取依赖项字符串以输出作业ID而不是脚本路径? qsub命令通常会将作业ID输出到stdout,所以我不确定为什么它在这里没有这样做。
如何摆脱afterok:
之后的空格?我已经尝试了一切!
顺便说一句,如果有一些选项可以调试提交或者不删除.snakemake中的tmp.cyrhf51c
目录,那将会有所帮助 - 有什么方法可以做到这一点吗?
谢谢, 大卫
答案 0 :(得分:0)
我建议使用配置文件,而不是试图找到临时解决方案。这也有助于调试。例如,已经有一个pbs-扭矩曲线(https://github.com/Snakemake-Profiles/pbs-torque),可能对pbspro没有太大的改变?