In a previous article, I discussed a hypothetical Platform LSF command, bwait, which would waits for LSF jobs to complete before returning. Another command that I would like to see in the Platform LSF suite of commands is a command to track parent-child relationship between jobs. Linux has a pstree command, LSF could have a btree command.
A simple scenario for submitting hierarchical LSF jobs would be for launching regressions. You may want to have a master job representing a regression responsible for launching multiple children jobs: the test cases. In this case, a command tracking the parent-child relationship between LSF jobs would be useful:
$ bsub my_regression Job <56478> is submitted to default queue. # Some time later $ btree 56478 56478 56479 56481 56482 ... $
This command would be able to trace a child job back to the parent:
$ btree --find-parent 56481 56478 56479 56481 56482 ... $
Another application for this command is for hierarchical builds, where a parent job dispatches multiple smaller build jobs. For instance, if you describe your hierarchical build in GNU Make and in sub-makes, you are letting GNU Make decide what needs to be built. If you want to know what GNU Make has launched behind the scenes, you need to track the hierarchy of jobs. Again, a btree command becomes useful:
$ bsub make large_build Job <1234> is submitted to default queue. # And some time later: $ btree 1234 1234 1235 1236 1239 ... $
The btree command would be able to report the tree of jobs long after the jobs are done. It could also do all kinds of fancy stuff like print log files name and the job status along with the jobs id, so you could quickly review the status of a large set of jobs by holding on to a single job id number.
0 responses so far ↓
There are no comments yet...Kick things off by filling out the form below.