如何控制 snakemake 提交作业的频率?

How can I control the frequency about how snakemake submitting the job?

现在,我正在使用snakemake集群来执行我自己的k8s。

提交任务时,命令如下:

export TMP=/k8s && snakemake --cluster "lsub" --cluster-config cluster-config.yaml -j 2

简要的 lsub 脚本逻辑:

  1. 从snakemake读取参数
  2. 通过以下方式提交 k8s 作业: 猫 <

由于k8s环境的节流政策,我不能同时提交太多作业。但是,snakemake似乎无法控制它的提交行为。(我可以控制第一步。但是,我无法控制后续步骤)

我的想法是改变lsub脚本来控制频率。但是,我不知道,因为我不知道 snakemake 是如何读取工作状态的。

那么,对于这种情况有什么建议吗?

我认为您正在寻找 --max-jobs-per-second 选项。如果将其设置为 0.1,snakemake 将每 10 秒提交一次作业。

如果你的意思是 snakemake 将主动提交的作业数量,你想修改 --jobs 选项。 --jobs 100 将确保一次只有 100 个作业 运行(已提交)。