为了缓解lockfile problem,直到找到合适的解决方案,我想指示LSF最多为每个主机放置一个作业。 -x flag确保我的工作独家使用主机,但我不需要这个;我很好地与他人分享。我只是不想与自己分享。
如何确保我的一个作业最多只能在特定主机上运行,而不要求独占使用整个主机?
答案 0 :(得分:0)
您可以根据项目使用一般限制。使用PER_HOST = all,JOBS = 1。然后将作业附加到该项目名称。 LSF管理员需要设置它。
基本上,将其添加到lsb.resources
Begin Limit
NAME = mylimit
PROJECTS = myproject
PER_HOST = all
JOBS=1
End Limit
使用bsub -P myproject ...
提交作业。
如果您没有LSF管理员权限。然后,使用host exclude feature进行相同操作的一种有点愚蠢的方法。 bsub -Q "EXCLUDE(55)" ...
当您的作业启动时,如果正在运行相同类型的另一个作业,请退出代码55.然后,LSF将重新排队作业并将该主机添加到作业特定的黑名单中。退出代码可以是55以外的其他代码,但请避免使用带有special meaning to the shell的退出代码。