【问题标题】:LSF - Get ID of submitted jobLSF - 获取已提交作业的 ID
【发布时间】:2012-08-23 14:33:11
【问题描述】:

假设我使用bsub pwd 之类的内容提交了一份工作。现在我想获取该工作的工作 ID,以便为下一个工作建立依赖关系。有什么方法可以让 bsub 返回作业 ID?

【问题讨论】:

    标签: lsf


    【解决方案1】:

    仅供参考,这是迄今为止我能想到的最佳解决方案。它利用了 bsub 将包含 ID 的一行写入 STDOUT 的事实。

    function nk_jobid {
        output=$($*)
        echo $output | head -n1 | cut -d'<' -f2 | cut -d'>' -f1
    }
    

    用法:

    jobid=$(nk_jobid bsub pwd)
    

    【讨论】:

    • @AndreyRubshtein 那是 bash。
    • 我想知道如何在 $(nk_jonid bsub $VARIABLE) 中传递一个变量
    【解决方案2】:

    Nils 和 Andrey 分别在 shell 和 C/C++ 环境中找到了这个特定问题的答案。为了构建依赖关系,您还可以使用 -J 命名您的作业,然后根据作业名称构建依赖关系:

    bsub -J "job1" <cmd1>
    bsub -J "job2" <cmd2>
    bsub -w "done(job1) && done(job2)" <cmd>
    

    还有更多信息here

    这也适用于作业数组:

    bsub -J "ArrayA[1-10]" <cmd1>
    bsub -J "ArrayB[1-10]" <cmd2>
    bsub -w "done(ArrayA[3]) && done(ArrayB[5])" <cmd>
    

    您甚至可以进行逐个元素的依赖。以下作业的第 i 个元素仅在 ArrayB 中的相应元素达到 DONE 状态时运行:

    bsub -w "done(ArrayB[*])" -J "ArrayC[1-10]" <cmd3>
    

    您可以在-w here 中找到有关您可以指定的各种内容的更多信息。

    【讨论】:

    • (+1) 幸好你注意到了这个问题的真正意图。
    • @jsmedmar 实际上,确实如此。我会在答案中添加一些细节。
    【解决方案3】:

    如果您使用 C++,您可以使用lsblib,LSF C API 来提交作业。输入和输出是结构。特别是,输出结构包含作业 ID。

    #include <lsf/lsbatch.h>    
    LS_LONG_INT lsb_submit (struct submit *jobSubReq, struct submitReply *jobSubReply)
    

    【讨论】:

      【解决方案4】:
      $jobid = "0"
      bsub pwd > $jobid
      cat $jobid
      

      【讨论】:

        【解决方案5】:

        如果你只是想查看提交后的JOBID,大多数时候我只会使用bhist 或bhist -l 来查看正在运行的作业和详细信息。

        $ bhist
        Summary of time in seconds spent in various states:
        JOBID   USER    JOB_NAME  PEND    PSUSP   RUN     USUSP   SSUSP   UNKWN   TOTAL
        8664    F14r3   sample       2       0    187954  0       0       0       187956 
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-08-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-05-31
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多